var FW_REGEX_TEMPLATE = function() { } FW_REGEX_TEMPLATE.PAGING =/[ ]+(\d{1,})[ ]+(\d{1,}).*/; FW_REGEX_TEMPLATE.FW_FWIPTEXTFIELD_BLANKREG = /\S +\S/; FW_REGEX_TEMPLATE.FW_FWIPTEXTFIELD_MASKREG = /^\s*".*"\s*$/; FW_REGEX_TEMPLATE.FW_FWIPTEXTFIELD_MASKREG_TWO = /^\s*"[^"]{1,}"\s*$/; FW_REGEX_TEMPLATE.FW_FWIPTEXTFIELD_ALLOWLETTER = /^[a-zA-Z].*/; FW_REGEX_TEMPLATE.ENCODE = new RegExp('[&<>]', 'g'); FW_REGEX_TEMPLATE.RN = "\r\n"; FW_REGEX_TEMPLATE.ONLYN = /\n/g; FW_REGEX_TEMPLATE.REPLACE_WBR = /\S/g; FW_REGEX_TEMPLATE.SWEB_COMMON_ELSTR = /(\$)/g; FW_REGEX_TEMPLATE.SWEB_COMMON_TRIM = /^\s+|\s+$/g; FW_REGEX_TEMPLATE.SWEB_COMP_RULES = /apply|submit|yes|应用|提交|确定/; FW_REGEX_TEMPLATE.SWEB_COMP_CMDRESULTARRAYSPLIT = /\r\n\w*[\[|\<](?:\S| )*[\]|\>]\r\n/; FW_REGEX_TEMPLATE.SWEB_COMP_CMD_CUTSYSNAME_SPLIT = /\w*[\[|\<]\S*[\]|\>]/; FW_REGEX_TEMPLATE.SWEB_COMP_TIMEREG = /^\d{2}:\d{2}:\d{2}/; FW_REGEX_TEMPLATE.SWEB_COMP_CMDPAREERRORREG = [ / % Ambiguous command found at '\^' position./, / % 未知的命令, 错误发生在 '\^' 所指的位置。/]; FW_REGEX_TEMPLATE.SWEB_COMP_CMDPAREERRORREG_ARRAY = [ "Ambiguous command found at fireCmd", "下发命令中含有防火墙不支持的命令"]; FW_REGEX_TEMPLATE.SWEB_COMP_PAREERRORREG_ARRAY = [ "The parameter is invalid, or the object is unavailable. ", "参数错误或对象不存在!"]; FW_REGEX_TEMPLATE.SWEB_COMP_PAREERRORREG = [ /Error:[ ]*Wrong parameter found at '\^' position./, /错误:参数错误,错误发生在 '\^' 所指的位置。/]; FW_REGEX_TEMPLATE.SWEB_COMP_PAREERRORREG_OTHER = [ /Error: Too many parameters found at '\^' position./, /错误:参数过多,错误发生在 '\^' 所指的位置。/]; FW_REGEX_TEMPLATE.SWEB_COMP_IPADDRESSREG = /^\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}$/; FW_REGEX_TEMPLATE.SWEB_COMP_RMASK = /^1+0*$/; FW_REGEX_TEMPLATE.SWEB_COMP_RREMASK = /^0+1*$/; FW_REGEX_TEMPLATE.SWEB_COMP_RMASK_NOTALLOWBLANK = /^1+0*$/; FW_REGEX_TEMPLATE.SWEB_COMP_IPADDRESSREG_REG=/^(?:[1-9]|[1-9]\d|1[0-1]\d|12[0-6]|12[8-9]|1[3-9]\d|2[0-1]\d|22[0-3])(?:\.(?:\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5])){2}(?:\.(?:[1-9]|[1-9]\d|[1]\d\d|2[0-4]\d|25[0-4]))$/; FW_REGEX_TEMPLATE.IF_TAG_PARSER = /(\d+)\s+to\s+(\d+)/g; FW_REGEX_TEMPLATE.IF_TAG_PARSER_SPACE = / /g; FW_REGEX_TEMPLATE.SYSTEM_NETWORK_INTERFACENAME = /(([\w-]+\s+|[\w-]+[^\d.:\/])(\d+(?:\/\d+)*(?:[^.]*)))(?:(\.)(\d+))?/; FW_REGEX_TEMPLATE.SYSTEM_NETWORK_GETPAGEDDATA_REG = /\s+(\d{1,})[ ]+(\d{1,}).*/; FW_REGEX_TEMPLATE.SYSTEM_STATE_DEVRESINFO_CPUPARSETPL = /CPU Usage[\S ]+: (\d{1,3})%[\S ]+/; FW_REGEX_TEMPLATE.SYSTEM_STATE_DEVRESINFO_FLASHPARSETPL = /(\d{1,5}) KB total \((\d{1,5}) KB free/; FW_REGEX_TEMPLATE.SYSTEM_STATE_DEVRESINFO_MEMORYPARSETPL =/Total Size: (\d{1,}), Free Size: (\d{1,}), Usage: (\d{1,3})%/; FW_REGEX_TEMPLATE.SYSTEM_STATE_SYSINFO_VERSIONPARSETPL = /Software Version: (.*) \(.*\)/; FW_REGEX_TEMPLATE.SYSTEM_STATE_SYSINFO_CLOCKPARSETPL = new Array([], [/^(\S{8}) (\d{1,4}\/\d{1,2}\/\d{1,2})/], [/Time Zone : (\S{1,}) add/]); FW_REGEX_TEMPLATE.SYSTEM_STATE_SYSINFO_DEVPARSETPL = new Array([], [/FAN[ ]*Present[ ]*(\S{1,})[ ]*/], [/FAN[ ]*Present[ ]*(\S{1,})[ ]*/], [/FAN[ ]*Present[ ]*(\S{1,})[ ]*/], [/PWR[ ]*Present[ ]*(\S{1,})[ ]*/]); FW_REGEX_TEMPLATE.SYSTEM_STATE_SYSINFO_ENVIRPARSETPL = /CPU[ ]*(\d{1,})[ ]*\d{1,}[ ]*\d{1,}[ ]*\S{1,}[ ]*/; FW_REGEX_TEMPLATE.SYSTEM_STATE_SYSINFO_MODEPARSETPL = /firewall[ ]*mode[ ]*(\S{1,})[ ]*/; FW_REGEX_TEMPLATE.SYSTEM_STATE_SYSINFO_HRPPARSETPL = /Current state of virtual routers configured as (\S{1,}):/; FW_REGEX_TEMPLATE.SYSTEM_STATE_SYSINFO_ONLINEUSERTOTALPARSETPL = /Total online web users: (\d{1,})/; FW_REGEX_TEMPLATE.SYSTEM_STATE_SYSINFO_ONLINEUSERLISTPARSETPL = /(\S{1,64})[ ]*(\d{1,2})[ ]+(\d{1,3}.\d{1,3}.\d{1,3}.\d{1,3})[ ]+(\d{1,4}\/\d{1,2}\/\d{1,2} \d{1,2}:\d{1,2}:\d{1,2})/; FW_REGEX_TEMPLATE.SYSTEM_STATE_SYSINFO_ONLINEUSER_VPN_LISTPARSETPL = /(\S{1,64})[ ]+(\d{1,3}.\d{1,3}.\d{1,3}.\d{1,3})[ ]+(\d{1,4}\/\d{1,2}\/\d{1,2} \d{1,2}:\d{1,2}:\d{1,2})/; FW_REGEX_TEMPLATE.SYSTEM_STATE_STATICINFO_SESSIONLISTPARSETPL = /^[ ]*(\w{1,20}[ ]*\w{1,20}),[ ]*(\d*),[ ]*(.+)/; FW_REGEX_TEMPLATE.SYSTEM_STATE_STATICINFO_INTERFACELISTPARSETPL = new Array( ['\r\n\r\n'], [/^(?!Vlanif|Logic)([\w\/\.\-:]*)[ ]*current state :.*/], [/^The Maximum Transmit Unit is \d* bytes, Hold timer is (\d*\(sec\))/], [/(Last |)(?:\d+ minutes|\d+ seconds) input rate (\d+(?:.\d+|) +(?:bytes|bits)\/(?:s|sec)), (\d+(?:.\d+|) +packets\/(?:sec|s))/], [/(Last |)(?:\d+ minutes|\d+ seconds) output rate (\d+(?:.\d+|) +(?:bytes|bits)\/(?:s|sec)), (\d+(?:.\d+|) +packets\/(?:sec|s))/], [/^[ ]{4}(?:Input(?:[ ]{0,5}):(?:[ ]{0,5}\d+ packets,){0,1}|\d+[ ]packets[ ]input,)[ ](\d+)[ ](?:bytes|goodbytes,[ ]\d+ badbytes)(?:,[ ]\d+ drops){0,1}/], [/^[ ]{4}(?:Output(?:[ ]{0,5}):(?:[ ]{0,5}\d+ packets,[ ]{0,5}){0,1}|\d+[ ]packets[ ]output,[ ]{0,5})(\d+)[ ]bytes(?:,[ ]\d+[ ]drops){0,1}/]); FW_REGEX_TEMPLATE.SYSTEM_STATE_STATICINFO_INTERFACELINEPARSETPL = /^(\S{1,}\d{1,}\/\d{1,}\/\S{1,})[ ]*(\d{1,})[ ]*(\d{1,})[ ]*/; FW_REGEX_TEMPLATE.SYSTEM_STATE_LOGTRAPINFO_LOGTABLEPARSETPL = /^\%( |\S+\s*\S+\d )[ ]*([\d\D]+ \%+[\d]*?[\D]*?\/)(\d)(\/)(\w*)(\(\w*?\):)/; FW_REGEX_TEMPLATE.SYSTEM_STATE_LOGTRAPINFO_LOGLISTPARSETPL = /^\%( |\S+\s*\S+\d )[ ]*([\d\D]+ \%+[\d]*?[\D]*?\/)(\d)(\/)(\w*)(\(\w*?\):)[ ]*(.*)$/; FW_REGEX_TEMPLATE.SYSTEM_STATE_LOGTRAPINFO_TRAPTABLEPARSETPL = /#( |[\d\/]+ [\d:]{8}|\d{4}\-\d{2}-\d{2} [\d:]{8}|[\.\d+]+)[ ]*(.*)(\/)(\d+)(\/)(\w+):[ ]*(.*)/; FW_REGEX_TEMPLATE.SYSTEM_STATE_LOGTRAPINFO_TRAPLISTPARSETPL = /( |\S+\s*\S+\d ) ([\d\D]* \%+[\d]*?[\D]*?\/)(\d)(\/\D*?\(\D*?\):)([\w\W]+)/; FW_REGEX_TEMPLATE.DDOSLogList = new Array( ['\r\n'], [/.*AttackType="(.+?)" From="(.+?)" To="(.+?)" BeginTime="(.*?)" EndTime="(.*?)" TotalPackets=(\d*)/]); FW_REGEX_TEMPLATE.SYSTEM_STATE_INTERFACEINFO_INTERFACELISTCMDTPL = 'dis cu interface | in GigabitEthernet[0-9]/[0-9]/[0-9]$|Ethernet[0-9]/[0-9]/[0-9]$'; FW_REGEX_TEMPLATE.SYSTEM_STATE_INTERFACEINFO_INTERFACELISTPARSEPARAMTPL = /^interface (GigabitEthernet\d\/\d\/\d|Ethernet\d\/\d\/\d)$/; FW_REGEX_TEMPLATE.SYSTEM_STATE_INTERFACEINFO_INTERFACELISTPARSETPL = new Array( ['\r\n\r\n'], [/^(\S{1,64}) current state : [Administratively| ]*(UP|DOWN)[\S ]*$/], [/^Line protocol current state \:[ ]*(UP|DOWN)[\(spoofing\)| ]*$/], [/current firewall zone : (.+)/], [/^Internet Address is (\d{1,3}.\d{1,3}.\d{1,3}.\d{1,3})\/\d{1,3}\s{1,}$/], [/mode, (\S{1,}) mode,/]); FW_REGEX_TEMPLATE.SYSTEM_STATE_INTERFACEINFO_ETHERNETLISTPARSETPL = new Array( ['\r\n\r\n'], [/^(\S{1,64}) current state : [Administratively| ]*(UP|DOWN)[\S ]*$/], [/^Line protocol current state \:[ ]*(UP|DOWN)[\(spoofing\)| ]*$/], [/current firewall zone : (.+)/], [/^Internet Address is (\d{1,3}.\d{1,3}.\d{1,3}.\d{1,3})\/\d{1,3}\s{1,}$/], [/mode, (\S{1,}) mode,/]); FW_REGEX_TEMPLATE.SYSTEM_CONFIG_ARP_QUERYINTERFACECOMBO = new Array(['\r\n'], [/((GE|Eth)\S{1,64})/]); FW_REGEX_TEMPLATE.SYSTEM_CONFIG_ARP_INTERFACE_ETHTRUNK = /(ETH-T)/; FW_REGEX_TEMPLATE.SYSTEM_CONFIG_ARP_INTERFACE_GIGABITETHERNET = /(GE)/; FW_REGEX_TEMPLATE.SYSTEM_CONFIG_ARP_INTERFACE_ETHERNET = /(ETH\d)/; FW_REGEX_TEMPLATE.SYSTEM_STATE_IPS = new Array(['\r\n'],[/(\d*)\s*"(.*)"\s*(\d*)\s*(\d{4}-\d{2}-\d{2}\s*\d{2}:\d{2}:\d{2})\s*/]); FW_REGEX_TEMPLATE.SYSTEM_STATE_AV = new Array(['\r\n'],[/"(.*)"\s*(\d*)\s*(\d{4}-\d{2}-\d{2}\s*\d{2}:\d{2}:\d{2})\s*/]); FW_REGEX_TEMPLATE.VTCOMBOBOX = new Array(['\r\n'], [/(^\S*)/]); FW_REGEX_TEMPLATE.VFW_NAME = /VPN-Instance Name and ID :/; FW_REGEX_TEMPLATE.VFW_RD = /Route Distinguisher/; FW_REGEX_TEMPLATE.VFW_DDD=new Array(['VPN-Instance'], [/Name and ID : (([\S]{1,64})(?:[ ]*\(being deleted\)|))/], [/Route Distinguisher : (\S+)/], [/Description : ([\S ]{1,242})/] ) ; FW_REGEX_TEMPLATE.SYSTEM_NETWORK_GETVFWS = new Array( ['\r\n\r\n'], [/\s*VPN-Instance Name and ID[ ]*:[ ]*(\S+),[ ]*(\d+)/], [/ vpn-id : (\d+)/], [/ vlan-id : (\d+)/]); FW_REGEX_TEMPLATE.SYSTEM_DAYLIGHT_OFFSETTIME = /^((\d{1,2}:\d{2}:\d{2})|(\d{1,2})*)$/ FW_REGEX_TEMPLATE.SYSTEM_DAYLIGHT_TIME = /^(\d{1,2}:\d{2}:\d{2})$/ FW_REGEX_TEMPLATE.SYSTEM_NETWORK = ''; FW_REGEX_TEMPLATE.SYSTEM_NETWORK_INTERFACE_GRIDLISTREGEX = /^(?!\_)(\S{1,64})/; FW_REGEX_TEMPLATE.SYSTEM_NETWORK_INTERFACE_VALIDATEINTERFACENAME = /^interface (\S{1,64})/; FW_REGEX_TEMPLATE.SYSTEM_NETWORK_INTERFACE_SELECTINTERFACETYPE = /^(\w)/; FW_REGEX_TEMPLATE.SYSTEM_NETWORK_INTERFACE_GETINTERFACENAME = new Array( ['\r\n'], [/^interface (\S*)$/]); FW_REGEX_TEMPLATE.SYSTEM_NETWORK_INTERFACE_GETVIRTUALTEMPLATE = new Array( ['\r\n'], [/(Virtual-Template)(\d{1,4})/]); FW_REGEX_TEMPLATE.SYSTEM_NETWORK_INTERFACE_GETZONECOMBOX = new Array(['\r\n#'], [/^((?: vpn-instance \S+ |)(?!vzone|local)(?:[\S]*))$/]); FW_REGEX_TEMPLATE.SYSTEM_NETWORK_INTERFACE_LAYERINTERFACE = new Array(['\r\n'], [/^(?!Line protocol)(?!NULL0)(\S{1,64}) current state :/]); FW_REGEX_TEMPLATE.SYSTEM_NETWORK_VLAN_PASSALL_INTERFACENAME = new Array(['\r\n\r\n'], [/^(\S{1,64}) current state :/], [/Port link-type:(\w{1,12})/], [/Tagged VLAN ID:\s*([\S ]*)/], [/Untagged VLAN ID:\s*([\S ]*)/], [/(?:VLAN permitted|VLAN ID):([\S ]*)/]); FW_REGEX_TEMPLATE.SYSTEM_NETWORK_VERIFY_VLANID = new Array(['\r\n#'], [/^interface (\S+\.\d+)/], [/\s+vlan-type dot1q\s+(\d+)/]); FW_REGEX_TEMPLATE.SYSTEM_NETWORK_INTERFACE_LAYERINTERFACE_L3 = new Array(['\r\n'], [/^(?!Line protocol)(\S{1,64}) current state :/]); FW_REGEX_TEMPLATE.GETETHTRUNKFORWARDTABLETPL = new Array(['\r\n'], [/(\S*Eth\S+)/]); FW_REGEX_TEMPLATE.SYSTEM_NETWORK_INTERFACE_GETETHTRUNKCOMBOX = new Array( ['\r\n'], [/^(Eth-Trunk)(\d+)\s+current\s+state/]); FW_REGEX_TEMPLATE.SYSTEM_NETWORK_INTERFACE_SETTRACKGROUP = new Array(['\r\n'], [/(\S+)/]); FW_REGEX_TEMPLATE.SYSTEM_NETWORK_VPN_ZONE = /(?:vpn-instance\s*(\S+))?\s*(\S*)/; FW_REGEX_TEMPLATE.INTERFACEMATCH = /^(Eth-Trunk|Ethernet|GigabitEthernet|Vlanif|Virtual-Ethernet)/; FW_REGEX_TEMPLATE.VLANNAME = /Vlan[ ](\d+)[ ]is[ ](?:enabled|disabled)/; FW_REGEX_TEMPLATE.DESCRIPTIONMATCH = /(, Route Port|, Route|, Switch Port|, Switch|, Lan Switch Port)/; FW_REGEX_TEMPLATE.SYSTEM_NETWORK_INTERFACE_INTERFACELISTSUCC = new Array( ['\r\n\r\n'], [/^(.{1,64}) current state\s*: [Administratively| ]*(UP|DOWN)[\S ]*$/], [/^Line protocol current state \:[ ]*(UP|DOWN)[\(spoofing\)| ]*$/], [/^\S* current firewall zone : (.+)/], [/^Description \: ([\S ]{1,64})[ ]*$/], [/^The Maximum Transmit Unit is ([\d]{1,5}) bytes/], [/^Internet Address is.*\D(\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3})\/\d+.*$/], [/Vlan ID (?:is |)(\d{1,4})/], [/^Eth-Trunk number: (\d{1,2})/], [/^([\d]{1,4})Mb\Ss\-speed mode\, ([\w]{1,12})\-duplex mode\,/], [ /^ (\S{1,32})[ ]*$/, '+']); FW_REGEX_TEMPLATE.SYSTEM_NETWORK_INTERFACE_INTERFACELISTSUCC_L2 = new Array( ['\r\n\r\n'], [/^(\S{1,64}) current state\s*: [Administratively| ]*(UP|DOWN|UNUSED)[\S ]*$/], [/^Line protocol current state \:[ ]*(UP|DOWN)[\(spoofing\)| ]*$/], [/firewall\s*zone\s*:\s*(\S.*)/, '+'], [/^Description \: ([\S ]{1,64})[ ]*$/], [/^The Maximum Transmit Unit is ([\d]{1,5}) bytes\, Hold timer is 10\(sec\)[ ]*$/], [/^Internet Address is (\d+\.\d+\.\d+\.\d+)\/(\d+\.\d+\.\d+\.\d+}|\d{1,})[ ]*$/], [/^Eth-Trunk number: (\d{1,2})/], [/^PVID:(\d+)/], [/^[ ]*(Tagged VLAN ID|VLAN permitted):\s*([^\r\n\t]*)/], [/^([\d]{1,4})Mb\Ss\-speed mode\, ([\w]{1,12})\-duplex mode\,/], [ /^ (\S{1,32})[ ]*$/, '+']); FW_REGEX_TEMPLATE.SYSTEM_NETWORK_INTERFACE_GETNOTBINDTRUNK_INTERFACE = /^[ ]{1,3}(\S{1,64})/; FW_REGEX_TEMPLATE.SYSTEM_NETWORK_INTERFACE_GETYESBINDTRUNK_INTERFACE = /^\Interface (\S{1,64})\,/; FW_REGEX_TEMPLATE.SYSTEM_NETWORK_INTERFACE_GETYESBINDTRUNK_INTERFACE_REPLACE = /Eth-Trunk/g; FW_REGEX_TEMPLATE.SYSTEM_NETWORK_INTERFACE_GETETHTRUNKMEMBERTPL = { trunkID :[/^Trunk ID: (\w{1,64})/], trunkMemberUseState : [/^used status: (\w{1,64})/], trunkMemberType : [/^TYPE: (\w{1,64})/], trunkMemberInterfaceNumber : [/^Number Of Ports in Trunk = (\d{1,12})/], trunkMemberOperateState : [/^operate status: (\w{1,64})/], interfaceName : [ /^(Interface \S{1,64}, \s*\w{1,64}, \w{1,64}, operate \w{1,64}, \S{1,64},)/, '+'] }; FW_REGEX_TEMPLATE.SYSTEM_NETWORK_INTERFACE_interfaceNameNumberTPL = /Interface (\S{1,64}), \s*(\w{1,64}), (\w{1,64}), operate (\w{1,64}), (\S{1,64}),/; FW_REGEX_TEMPLATE.SYSTEM_NETWORK_INTERFACE_GETMAININTERFACESTORE = new Array( ['\r\n\r\n'], [/^(\S{1,64}) current state/]); FW_REGEX_TEMPLATE.SYSTEM_NETWORK_INTERFACE_GETMAININTERFACESTORE_ETHERNET = new Array( ['\r\n\r\n'], [/^(Ethernet\d*\/\d*\/\d*) current state/]); FW_REGEX_TEMPLATE.SYSTEM_NETWORK_INTERFACE_GETMAININTERFACESTORE_GIGABITETHERNET = new Array( ['\r\n\r\n'], [/^(GigabitEthernet\d*\/\d*\/\d*) current state/]); FW_REGEX_TEMPLATE.SYSTEM_NETWORK_INTERFACE_GETMAININTERFACESTORE_ETHTRUNK = new Array( ['\r\n\r\n'], [/^(Eth-Trunk\d+)\s/]); FW_REGEX_TEMPLATE.SYSTEM_NETWORK_INTERFACE_EDITINTERFACE_VIRTUALTEMPLATE = { description : [/^Description : (.*)[ ]/], virMtu : [/^The Maximum Transmit Unit is (\d{1,5}) bytes/], zoneName : [/^\S{1,64} current firewall zone : (.+)/] }; FW_REGEX_TEMPLATE.SYSTEM_NETWORK_INTERFACE_EDITINTERFACE_VIRTUALETHERNET = { description : [/^Description : (.*)[ ]/], virtualEthMtu : [/^The Maximum Transmit Unit is (\d{1,5}) bytes/], zoneName : [/^\S{1,64} current firewall zone : (.+)/] }; FW_REGEX_TEMPLATE.SYSTEM_NETWORK_INTERFACE_EDITINTERFACE_VIRTUALETHERNET_THIS = { interfaceName : [/^interface (\S{1,64})\s*/], shutdown : [/^ shut(down)/], snmp : [/^ undo enable snmp trap (\w{1,6})/], 'ipAddress,maskAddress' : [/^ ip address (\d+\.\d+\.\d+\.\d+) (\d+\.\d+\.\d+\.\d+)/], dhcpClient : [/^ dhcp client (enable)/ ], portswitch : [/^ port(switch)/], virTemp : [/^ pppoe-server bind (\S* \d{1,4})/], bindingVfw : [/ip binding vpn-instance (\S+)/], trunkMacAddress : [/^ mac-address (\w{1,4}-\w{1,4}-\w{1,4})/] }; FW_REGEX_TEMPLATE.SYSTEM_NETWORK_INTERFACE_EDITINTERFACE_TUNNEL = { description : [/^Description : (.*)/], mtuTunnel : [/^The Maximum Transmit Unit is (\d{1,5}) bytes/], zoneName : [/^\S{1,64} current firewall zone : (.+)/] }; FW_REGEX_TEMPLATE.SYSTEM_NETWORK_INTERFACE_EDITINTERFACE_TUNNEL_THIS = { interfaceName : [/^interface (\S{1,64})\s*/], shutdown : [/^ shut(down)/], snmp : [/^ undo enable snmp trap (\w{1,6})/], 'ipAddress,maskAddress' : [/^ ip address (\d+\.\d+\.\d+\.\d+) (\d+\.\d+\.\d+\.\d+)/], bindingVfw : [/ip binding vpn-instance (\S+)/] }; FW_REGEX_TEMPLATE.SYSTEM_NETWORK_INTERFACE_DISDIALINTERFACE = new Array(['\r\n'], [/\s*Dialer(\d{1,3})[ ]*/]); FW_REGEX_TEMPLATE.SYSTEM_NETWORK_INTERFACE_DISDIALERRULE = new Array(['\r\n'], [/\s*dialer-rule[ ]*(\d{1,3})[ ]*(?:acl|)(ipx|ip|)[ ]*(\d{1,4}|)[ ]*(permit|deny|)/]); FW_REGEX_TEMPLATE.SYSTEM_NETWORK_INTERFACE_DIALERROUTE = new Array(['\r\n'],[/\s*dialer[ ]+route[ ]*ip[ ]*(\d+\.\d+\.\d+\.\d{1,3}|)[ ]*(\S{1,30})[ ]*(autodial|)/]); FW_REGEX_TEMPLATE.SYSTEM_NETWORK_INTERFACE_EDITINTERFACE_DIALER = { description : [/^Description : (.*)[ ]/], DialerMtu : [/^The Maximum Transmit Unit is (\d{1,5}) bytes/], zoneName : [/^\S{1,64} current firewall zone : (.+)/] }; FW_REGEX_TEMPLATE.SYSTEM_NETWORK_INTERFACE_EDITINTERFACE_DIALER_THIS = { interfaceName : [/^interface (\S{1,64})\s*/], findAddressModePPP : [/^\s*ip address ppp-(\w{1,32})\s*/], 'fwipfield_ip_address_dialer,fwipfield_mask_dialer' : [/^\s*ip address (\d+\.\d+\.\d+\.\d+) (\d+\.\d+\.\d+\.\d+)/], pppAuthenticationMode : [/^\s*ppp authentication-mode ((\S+ *)*)/], usernameChap : [/^\s*ppp chap user ((".+"@".+")|(\S+@".+")|(".+"@\S+)|(\S+@\S+)|(".+")|(\S+))/], 'chapPwdType,passwordChap' : [/^\s*ppp chap password (cipher|simple) (.+)/], 'usernamePap,pwdType,passwordPap' : [/^ ppp pap local-user (".+"@".+"|\S+@".+"|".+"@\S+|\S+@\S+|".+"|\S+) password (cipher|simple) (.+)/], 'ipcpDnsFirst,ipcpDnsSecond' : [/^\s*ppp ipcp dns (\d+\.\d+\.\d+\.\d+)[ ]*(\d+\.\d+\.\d+\.\d+|)/], ipcpDnsAny : [/^\s*ppp ipcp dns (admit-any)/], sharingDccUserName : [/^\s*dialer user ((".+"@".+")|(\S+@".+")|(".+"@\S+)|(\S+@\S+)|(".+")|(\S+))/], sharingDialerBundle : [/^\s*dialer bundle (\d{1,3})/], 'sharingDialerNumber,sharingAutoDial' : [/^\s*dialer number (\S{1,30}\s*\"*)\s*(autodial)*/], dialerTimerIdle : [/^\s*dialer timer idle (\d{1,5})/], sharingDialerRuleNumber : [/^\s*dialer-group (\d{1,3})/], circularEnable : [/^\s*dialer (enable-circular)/], circularTimeAuto : [/^\s*dialer timer autodial (\d{1,6})/], loadWeight : [/load weight (\d{1,3})/], mtu : [/^\s*mtu (\d+)/] }; FW_REGEX_TEMPLATE.SYSTEM_NETWORK_INTERFACE_EDITINTERFACE_GSHDSL_THIS = { interfaceName : [/^interface (\S{1,64})\s*/], atmMode : [/^\s*using (atm)/], bindingVfw : [/ip binding vpn-instance (\S+)/], 'ipAddress,maskAddress' : [/^\s*ip address (\d+\.\d+\.\d+\.\d+) (\d+\.\d+\.\d+\.\d+)/], bindInterfaceName : [/^\s*ip address unnumbered interface (\S{1,64})/], shutdown : [/^ shut(down)/], bindTwoInterface : [/\s*bind[ ]*\d{1}[ ]*(\d{1}\/\d{1})/], bindOtherInterface : [/\s*bind (\d{1})/], GSHDSLMtu : [/^\s*mtu[ ]+(\d{1,4})/], snmp : [/^ undo enable snmp trap (\w{1,6})/] } FW_REGEX_TEMPLATE.SYSTEM_NETWORK_INTERFACE_EDITINTERFACE_GSHDSL_TEMP = { description : [/^Description : (.*)[ ]/], zoneName : [/^\S{1,64} current firewall zone : (.+)/] }; FW_REGEX_TEMPLATE.SYSTEM_NETWORK_INTERFACE_GSHDSL_PARSE_PVC = new Array( ['\r\n pvc'], [/^ (\d{1,3})\/(\d{1,5})/], [/encapsulation[ ](llc|vc-mux)/], [/map[ ]bridge[ ](\S+)/],[/map[ ]ppp[ ](\S+)\s*(autodial)*/]); FW_REGEX_TEMPLATE.SYSTEM_NETWORK_INTERFACE_EDITINTERFACE_VIRTUALTEMPLATE_THIS = { interfaceName : [/^interface (\S{1,64})\s*/], findAddressPPP : [/^\s*ip address ppp-(\w{1,32})\s*/], virFindModelInterfaceName : [/^\s*ip address unnumbered interface (\S{1,64})/], virLinkNumber : [/^\s*broadcast-limit link (\d{1,3})/], timerNegotiate : [/^\s*ppp timer negotiate (\d{1,3})/], ipcpDns : [/^\s*ppp ipcp dns (\d+\.\d+\.\d+\.\d+)/], timerHold : [/^\s*timer hold (\d{1,5})/], 'ipAddress,maskAddress' : [/^\s*ip address (\d+\.\d+\.\d+\.\d+) (\d+\.\d+\.\d+\.\d+)/], remoteAddressPool : [/^\s*remote address (pool\s*\d{0,2})/], remoteAddress : [/^\s*remote address (\d+\.\d+\.\d+\.\d+)/], remoteAddressForce : [/^\s(ppp ipcp remote-address forced)/], l2tpCallLnsUser : [/^\s*call-lns[ ]local-user[ ](\S+)/], iphcCheck : [/^\s*ppp compression (\w{1,12})/], vjcompressCheck : [/^\s*ip tcp (\w{1,64})/], pppAuthMode : [/^\s*ppp authentication-mode ((\S+ *)*)/], usernameChap : [/^\s*ppp chap user ((".+"@".+")|(\S+@".+")|(".+"@\S+)|(\S+@\S+)|(".+")|(\S+))/], 'chapPwdType,passwordChap' : [/^\s*ppp chap password (cipher|simple) (.+)/], 'usernamePap,pwdType,passwordPap' : [/^ ppp pap local-user (".+"@".+"|\S+@".+"|".+"@\S+|\S+@\S+|".+"|\S+) password (cipher|simple) (.+)/], bindingVfw : [/ip binding vpn-instance (\S+)/] }; FW_REGEX_TEMPLATE.SYSTEM_NETWORK_INTERFACE_EDITINTERFACE_SERIAL = { description : [/^Description : (.*)[ ]/], dteOrDce : [/Interface is (\w+)/], baudrate : [/Baudrate is (\d{1,5})/], mtuSe : [/^The Maximum Transmit Unit is (\d{1,5}) bytes/], zoneName : [/^\S{1,64} current firewall zone : (.+)/] }; FW_REGEX_TEMPLATE.SYSTEM_NETWORK_INTERFACE_EDITINTERFACE_SERIAL_THIS = { interfaceName : [/^interface (\S{1,64})\s*/], findAddressPPP : [/^\s*ip address ppp-(\w{1,32})\s*/], virFindModelInterfaceName : [/^\s*ip address unnumbered interface (\S{1,64})/], 'ipAddress,maskAddress' : [/^\s*ip address (\d+\.\d+\.\d+\.\d+) (\d+\.\d+\.\d+\.\d+)/], shutdown : [/^ shut(down)/], linkProtocol : [/link-protocol (\S+)/], holdtime : [/^ timer hold (\d{1,5})/], mtu : [/^ mtu (\d{1,5})/], selectClock : [/clock (\S+)/], clockTransmit : [/^ invert (transmit-clock)/], nrziCode : [/^ code (nrzi)/], detctDcd : [/^ undo detect (dcd)/], detctDtr : [/^ undo detect (dsr-dtr)/], snmp : [/^ undo enable snmp trap (updown)/], pppAuthMode : [/^\s*ppp authentication-mode ((\S+ *)*)/], usernameChap : [/^\s*ppp chap user ((".+"@".+")|(\S+@".+")|(".+"@\S+)|(\S+@\S+)|(".+")|(\S+))/], 'chapPwdType,passwordChap' : [/^\s*ppp chap password (cipher|simple) (.+)/], 'usernamePap,pwdType,passwordPap' : [/^ ppp pap local-user (".+"@".+"|\S+@".+"|".+"@\S+|\S+@\S+|".+"|\S+) password (cipher|simple) (.+)/], timerNegotiate : [/^\s*ppp timer negotiate (\d{1,3})/], ipcpDns : [/^\s*ppp ipcp dns (\d+\.\d+\.\d+\.\d+)/], remoteAddressPool : [/^\s*remote address (pool\s*\d{0,2})/], remoteAddress : [/^\s*remote address (\d+\.\d+\.\d+\.\d+)/], iphcCheck : [/^\s*ppp compression (\w{1,12})/], vjcompressCheck : [/^\s*ip tcp (\w{1,64})/] }; FW_REGEX_TEMPLATE.SYSTEM_NETWORK_INTERFACE_EDITINTERFACE_E1 = { description : [/^Description : (.*)[ ]/], cable : [/Cable type is (\d{1,5}) OHM/] }; FW_REGEX_TEMPLATE.SYSTEM_NETWORK_INTERFACE_EDITINTERFACE_E1_THIS = { interfaceName : [/controller (\S{1,64} \S*)/], usingMode : [/using (\S+)/], code : [/code (\S+)/], frameFormat : [/frame-format (\S+)/], clock : [/clock (\S+)/], shutdown : [/shut(down)/], loopback : [/loopback (\S+)/], snmp : [/undo enable snmp trap (updown)/], channelset : [/(channel-set \S+ timeslot-list \S+)/,'+'] }; FW_REGEX_TEMPLATE.SYSTEM_NETWORK_INTERFACE_SERIAL = new Array( ['\r\n\r\n'], [/^(.{1,64}) current state : [Administratively| ]*(UP|DOWN)[\S ]*$/]); FW_REGEX_TEMPLATE.SYSTEM_INTERFACE_E1_MATCH_CHANNELSET = /channel-set (\S+) timeslot-list \S+/; FW_REGEX_TEMPLATE.SYSTEM_INTERFACE_E1_MATCH_TIMESLOT = /channel-set \S+ timeslot-list (\S+)/; FW_REGEX_TEMPLATE.SYSTEM_INTERFACE_E1_TIMESLOT_RANGE = /^[0-9]*((,[ ]*|-)[0-9]+)*$/; FW_REGEX_TEMPLATE.SYSTEM_NETWORK_INTERFACE_EDITINTERFACE_ETHTRUNK = { description : [/^Description : (.*)[ ]/], trunkMtu : [/^The Maximum Transmit Unit is (\d{1,5}) bytes/], zoneName : [/^\S{1,64} current firewall zone : (.+)/] }; FW_REGEX_TEMPLATE.SYSTEM_NETWORK_INTERFACE_EDITINTERFACE_ETHTRUNK_THIS = { interfaceName : [/^interface (\S{1,64})\s*/], trunkMacAddress : [/^ mac-address (\w{1,4}-\w{1,4}-\w{1,4})/], shutdown : [/^ shut(down)/], portswitch : [/^ port(switch)/], leastActiveLinknumber : [/^ least active-linknumber (\d{1,2})/], maxActiveLinknumber : [/^ max bandwidth-affected-linknumber (\d{1,2})/], snmp : [/^ undo enable snmp trap (\w{1,6})/], 'ipAddress,maskAddress' : [/^ ip address (\d+\.\d+\.\d+\.\d+) (\d+\.\d+\.\d+\.\d+)/], bindingVfw : [/ip binding vpn-instance (\S+)/], port_default : [/port default vlan (\d*)/], port_trunk_allow_pass : [/port trunk allow-pass vlan (.*)/], port_hybrid_untagged : [/port hybrid untagged vlan (.*)/], dhcpClient : [/^ dhcp client (enable)/ ], loadWeight : [/load weight (\d{1,3})/] }; FW_REGEX_TEMPLATE.SYSTEM_NETWORK_INTERFACE_EDITINTERFACE_ETHTRUNKSUB = { description : [/^Description : (.*)[ ]/], zoneName : [/^\S{1,64} current firewall zone : (.+)/] }; FW_REGEX_TEMPLATE.SYSTEM_NETWORK_INTERFACE_EDITINTERFACE_ETHTRUNKSUB_THIS = { interfaceName : [/^interface (\S{1,64})\s*/], vlanidInt : [/^ vlan-type dot1q (\d{1,4})/], shutdown : [/^ shut(down)/], snmp : [/^ undo enable snmp trap (\w{1,6})/], 'ipAddress,maskAddress' : [/^ ip address (\d+\.\d+\.\d+\.\d+) (\d+\.\d+\.\d+\.\d+)/], bindingVfw : [/ip binding vpn-instance (\S+)/], dhcpClient : [/^ dhcp client (enable)/ ] }; FW_REGEX_TEMPLATE.SYSTEM_NETWORK_INTERFACE_EDITINTERFACE_GIGABITETHERNET = { description : [/^Description : (.*)[ ]/], mtuGe : [/^The Maximum Transmit Unit is (\d{1,5}) bytes/], zoneName : [/^\S{1,64} current firewall zone : (.+)/] }; FW_REGEX_TEMPLATE.SYSTEM_NETWORK_INTERFACE_EDITINTERFACE_GIGABITETHERNET_THIS = { interfaceName : [/^interface (\S{1,64})\s*/], shutdown : [/^ shut(down)/], portswitch : [/^ port(switch)/], snmp : [/^ undo enable snmp trap (\w{1,6})/], ethtrunk : [/^ (eth-trunk \d{1,2})/], loopback : [/^ loop(back)/], speedGe : [/^ speed (\d{1,4})/], duplexGe : [/^ duplex (\w{1,12})/], virTemp : [/^ pppoe-server bind (\S* \d{1,4})/], 'ipAddress,maskAddress' : [/^ ip address (\d+\.\d+\.\d+\.\d+) (\d+\.\d+\.\d+\.\d+)/], bindingVfw : [/ip binding vpn-instance (\S+)/], port_default : [/port default vlan (\d*)/], port_trunk_allow_pass : [/port trunk allow-pass vlan (.*)/], port_hybrid_untagged : [/port hybrid untagged vlan (.*)/], dhcpClient : [/^ dhcp client (enable)/ ] ,arpProxy : [/^ arp-proxy (enable)/] ,forward : [/^ virtual-l2tpforward (enable)/] }; FW_REGEX_TEMPLATE.SYSTEM_NETWORK_INTERFACE_EDITINTERFACE_GIGABITETHERNETSUB = { description : [/^Description : (.*)[ ]/], zoneName : [/^\S{1,64} current firewall zone : (.+)/] }; FW_REGEX_TEMPLATE.SYSTEM_NETWORK_INTERFACE_EDITINTERFACE_GIGABITETHERNETSUB_THIS = { interfaceName : [/^interface (\S{1,64})/], vlanidInt : [/^ vlan-type dot1q (\d{1,4})/], shutdown : [/^ shut(down)/], virTemp : [/^ pppoe-server bind (\S* \d{1,4})/], snmp : [/^ undo enable snmp trap (\w{1,6})/], 'ipAddress,maskAddress' : [/^ ip address (\d+\.\d+\.\d+\.\d+) (\d+\.\d+\.\d+\.\d+)/], bindingVfw : [/ip binding vpn-instance (\S+)/], dhcpClient : [/^ dhcp client (enable)/ ] ,arpProxy : [/^ arp-proxy (enable)/] ,forward : [/^ virtual-l2tpforward (enable)/] }; FW_REGEX_TEMPLATE.SYSTEM_NETWORK_INTERFACE_EDITINTERFACE_ETHERNET = { description : [/^Description : (.*)[ ]/], mtuEther : [/^The Maximum Transmit Unit is (\d{1,5}) bytes/], zoneName : [/^\S{1,64} current firewall zone : (.+)/] }; FW_REGEX_TEMPLATE.SYSTEM_NETWORK_INTERFACE_EDITINTERFACE_ETHERNET_THIS = { interfaceName : [/^interface (\S{1,64})\s*/], shutdown : [/^ shut(down)/], portswitch : [/^ port(switch)/], snmp : [/^ undo enable snmp trap (\w{1,6})/], ethtrunk : [/^ (eth-trunk \d{1,2})/], loopback : [/^ loop(back)/], speedEther : [/^ speed (\d{1,4})/], duplexEther : [/^ duplex (\w{1,12})/], 'ipAddress,maskAddress' : [/^ ip address (\d+\.\d+\.\d+\.\d+) (\d+\.\d+\.\d+\.\d+)/], bindingVfw : [/ip binding vpn-instance (\S+)/], port_default : [/port default vlan (\d*)/], port_trunk_allow_pass : [/port trunk allow-pass vlan (.*)/], port_hybrid_untagged : [/port hybrid untagged vlan (.*)/], dhcpClient : [/^ dhcp client (enable)/ ], loadWeight : [/load weight (\d{1,3})/] ,arpProxy : [/^ arp-proxy (enable)/] ,forward : [/^ virtual-l2tpforward (enable)/] }; FW_REGEX_TEMPLATE.SYSTEM_NETWORK_INTERFACE_EDITINTERFACE_ETHERNETSUB = { description : [/^Description : (.*)[ ]/], zoneName : [/^\S{1,64} current firewall zone : (.+)/] }; FW_REGEX_TEMPLATE.SYSTEM_NETWORK_INTERFACE_EDITINTERFACE_ETHERNETSUB_THIS = { interfaceName : [/^interface (\S{1,64})/], vlanidInt : [/^ vlan-type dot1q (\d{1,4})/], shutdown : [/^ shut(down)/], snmp : [/^ undo enable snmp trap (\w{1,6})/], 'ipAddress,maskAddress' : [/^ ip address (\d+\.\d+\.\d+\.\d+) (\d+\.\d+\.\d+\.\d+)/], bindingVfw : [/ip binding vpn-instance (\S+)/], dhcpClient : [/^ dhcp client (enable)/ ] ,arpProxy : [/^ arp-proxy (enable)/] ,forward : [/^ virtual-l2tpforward (enable)/] }; FW_REGEX_TEMPLATE.SYSTEM_NETWORK_INTERFACE_EDITINTERFACE_LOOPBACK = { description : [/^Description : (.*)[ ]/] }; FW_REGEX_TEMPLATE.SYSTEM_NETWORK_INTERFACE_EDITINTERFACE_LOOPBACK_THIS = { interfaceName : [/^interface (\S{1,64})/], 'ipAddress,maskAddress' : [/^ ip address (\d+\.\d+\.\d+\.\d+) (\d+\.\d+\.\d+\.\d+)/], bindingVfw : [/ip binding vpn-instance (\S+)/] }; FW_REGEX_TEMPLATE.SYSTEM_NETWORK_INTERFACE_EDITINTERFACE_VLANIF = { description : [/^Description : (.*)[ ]/], mtuVlanif : [/^The Maximum Transmit Unit is (\d{1,5}) bytes/], zoneName : [/^\S{1,64} current firewall zone : (.+)/] }; FW_REGEX_TEMPLATE.SYSTEM_NETWORK_INTERFACE_EDITINTERFACE_VLANIF_THIS = { interfaceName : [/^interface (\S{1,64})/], 'ipAddress,maskAddress' : [/^ ip address (\d+\.\d+\.\d+\.\d+) (\d+\.\d+\.\d+\.\d+)/], bindingVfw : [/ip binding vpn-instance (\S+)/], shutdown : [/^ shut(down)/], dhcpClient : [/^ dhcp client (enable)/ ], loadWeight : [/load weight (\d{1,3})/] }; FW_REGEX_TEMPLATE.SYSTEM_NETWORK_INTERFACE_QUERYTYE_SELECT_ZONENAME = /^firewall zone (?!vpn-instance)(?:name\s|)(?!vzone|local)(\S*)/; FW_REGEX_TEMPLATE.SYSTEM_NETWORK_SUBIPADDRESS = { subip : [ /(\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}\s\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3})\ssub/, '+'] }; FW_REGEX_TEMPLATE.SYSTEM_NETWORK_IPADDRESS = [['\r\n'], /(\S+)\s+(\S+)\s+(sub)/]; FW_REGEX_TEMPLATE.SYSTEM_NETWORK_INTERFACE_ETHTRUNK_PORTCHANGE = { portswitch : [/^ port(switch)/] }; FW_REGEX_TEMPLATE.SYSTEM_NETWORK_INTERFACE_GETINTERFACETYPE = new Array( ['\r\n'], [/ (\S{1,64}) /]); FW_REGEX_TEMPLATE.SYSTEM_NETWORK_INTERFACE_GIGABITETHERNETMAIN = 'GigabitEthernet[0-9]{1,4}\/[0-9]{1,4}\/[0-9]{1,4} current state'; FW_REGEX_TEMPLATE.SYSTEM_NETWORK_INTERFACE_ETHERNETMAIN = 'Ethernet[0-9]{1,4}\/[0-9]{1,4}\/[0-9]{1,4} current state'; FW_REGEX_TEMPLATE.SYSTEM_NETWORK_INTERFACE_ETHTRUNKMAIN = 'Eth-Trunk[0-9]{1,2} current state'; FW_REGEX_TEMPLATE.SYSTEM_NETWORK_INTERFACE_PONTYPE = 'pon[0-9]{1,4}\/[0-9]{1,4}\/[0-9]{1,4} current state'; FW_REGEX_TEMPLATE.SYSTEM_NETWORK_INTERFACE_PONSTORE_PONNAME = new Array( ['\r\n\r\n'], [/^(pon\d*\/\d*\/\d*) current state/]); FW_REGEX_TEMPLATE.SYSTEM_DDNS_POLICY_APPLY_LIST_PARSETPL = new Array( ['\r\n '], [/(\S*)/],[/^\s*Apply interface:\s*(\S+)\s*/,'+']); FW_REGEX_TEMPLATE.SYSTEM_DDNS_NAME_VALIDATE = /[\\%]/; FW_REGEX_TEMPLATE.SYSTEM_DDNS_TBRIEF_INTERFACE_TPL = new Array(['\r\n'], [/^[ ]*(\S+)/]); FW_REGEX_TEMPLATE.SYSTEM_DNS_RESOLVE_ENABLE = /dns (\w*)$/; FW_REGEX_TEMPLATE.SYSTEM_DNS_PROXY_ENABLE = /dns proxy (\w*)$/; FW_REGEX_TEMPLATE.SYSTEM_DNS_SERVER_GRID = new Array(['\r\n'], [/\d+\s+(\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3})\s+(\S+)/]); FW_REGEX_TEMPLATE.SYSTEM_DNS_IP_HOST_LIST_PARSETPL = new Array( ['\r\n'], [/^([a-zA-Z0-9_.-]+)\s+(\d+)\s+(\w+)\s+(\d{1,3}.\d{1,3}.\d{1,3}.\d{1,3})/]); FW_REGEX_TEMPLATE.SYSTEM_DNS_DynamicCache_LIST_PARSETPL = new Array( ['\r\n'], [/^(\d+)\s+(\S+)\s+(\d{1,3}.\d{1,3}.\d{1,3}.\d{1,3})\s+(\d+)[ ]+(\S+)?/]); FW_REGEX_TEMPLATE.SYSTEM_DDNS_CLIENT_ENABLE = /ddns\s+client\s+(\S+)/; FW_REGEX_TEMPLATE.SYSTEM_DDNS_CURRENT_STATE_PARSETPL = new Array( ['Policy-'], [/name:[ ]+(\S+)\s*$/], [/^[ ]*Domain-name:[ ]+(\S+)\s*$/], [/^[ ]*IP-address:[ ]+(\d{1,3}.\d{1,3}.\d{1,3}.\d{1,3})\s*$/], [/^[ ]*State:[ ]+(\S+)\s*$/], [/^[ ]*Time:[ ]+([0-9]{2}:[0-9]{2}:[0-9]{2}\s+[0-9]{4}-[0-9]{2}-[0-9]{2})\s*$/]); FW_REGEX_TEMPLATE.SYSTEM_DDNS_POLICY_LIST_PARSETPL = new Array( ['-----------------------------------------------------------\r\n '], [/(\S*)/], [/^\s*Server:\s+(\S+)\s*$/], [/^\s*Mode:\s+(\S+)\s*$/], [/^\s*Username:\s+(\S+)\s*$/], [/^\s*Password:\s+(\S+)\s*$/], [/^\s*Domain name:\s+(\S+)\s*$/]); FW_REGEX_TEMPLATE.SYSTEM_MSTP_GLOBAL_STP_ENABLE = /stp\s+enabl(\S+)/; FW_REGEX_TEMPLATE.SYSTEM_MSTP_GLOBAL_STP_MODE = /stp\s+mode\s+(\S+)/; FW_REGEX_TEMPLATE.SYSTEM_MSTP_GLOBAL_STP_BPDU_PROTEC = /stp\s+bpdu-(\S+)/; FW_REGEX_TEMPLATE.SYSTEM_MSTP_GLOBAL_STP_PATHCOST = /stp\s+pathcost-standard\s+(\S+)/; FW_REGEX_TEMPLATE.SYSTEM_MSTP_GLOBAL_PROTOCAL_STATUS = /Protocol Status\s+:(\S+)/; FW_REGEX_TEMPLATE.SYSTEM_MSTP_DIS_STP_STP_MODE = /\[CIST Global Info\]\[Mode\s+(\S+)\]/; FW_REGEX_TEMPLATE.SYSTEM_MSTP_DIS_STP_STP_BPDU_PROTEC = /BPDU-Protection\s+:(\S+)/; FW_REGEX_TEMPLATE.SYSTEM_MSTP_CHECK_REGION_NAME = /\s+Region\s+name\s+:(\S+)\s*/; FW_REGEX_TEMPLATE.SYSTEM_MSTP_CHECK_REVISION_LEVEL = /\s+Revision level\s+:(\d+)/; FW_REGEX_TEMPLATE.SYSTEM_MSTP_DIS_REGION_NAME = /\s+Region\s+name\s+:(\S+)\s*/; FW_REGEX_TEMPLATE.SYSTEM_MSTP_DIS_REVISION_LEVEL = /\s+Revision level\s+:(\d+)/; FW_REGEX_TEMPLATE.SYSTEM_MSTP_INST_VLAN_LIST_PARSETPL = new Array( ['\r\n'], [/^\s*(\d+)\s+([\w+,\s+]*)/]); FW_REGEX_TEMPLATE.SYSTEM_MSTP_ROOT_TYPE =/stp[ ]+instance[ ]+\d+[ ]+root[ ]+(\S+)/; FW_REGEX_TEMPLATE.SYSTEM_MSTP_PRIORITY = /stp[ ]+instance[ ]+\d+[ ]+priority[ ]+(\d+)/; FW_REGEX_TEMPLATE.SYSTEM_MSTP_CIST_ROOT_TYPE = /CIST Root Type\s+:(\S+)\s*/; FW_REGEX_TEMPLATE.SYSTEM_MSTP_MSTI_ROOT_TYPE = /MSTI Root Type\s+:(\S+)s*/; FW_REGEX_TEMPLATE.SYSTEM_MSTP_CIST_PRIORITY = /CIST Bridge\s+:(\d+)./; FW_REGEX_TEMPLATE.SYSTEM_MSTP_MSTI_PRIORITY = /MSTI Bridge ID\s+:(\d+)./; FW_REGEX_TEMPLATE.SYSTEM_MSTP_INTEFACE_STP_ENABLED_TPL = new Array( ['[Port'], [/\d+\((\S+)\)\]\[\S+\]----/], [/\s*Port\s+Protocol\s+:(\S+)/], [/^\s*Port Edged\s+:Config=([\S\s]+)\s*\/\s*Active/], [/^ Point-to-point\s+:Config=(\S+)/], [/^ Protection Type\s+:(\S+)$/], [/^ Port Stp Mode :(\S+)/]); FW_REGEX_TEMPLATE.SYSTEM_MSTP_VLAN_MAPPED=/^[1-9][0-9]*((,[ ]*| to )*[1-9][0-9]*)*$/; FW_REGEX_TEMPLATE.SYSTEM_MSTP_INTEFACE_STP_TPL = new Array(['\r\n'],[/----\[Port\d*\((\S+)\)\]/]); FW_REGEX_TEMPLATE.SYSTEM_MSTP_INTEFACE_TYPE_NUM = /([a-zA-z-]+)(\d+)/; FW_REGEX_TEMPLATE.SYSTEM_MSTP_INTEFACE_ETHERNET_NUM = /(\S+)(\d\/\d\/\d(.\d+|))/; FW_REGEX_TEMPLATE.SYSTEM_MSTP_INTEFACE_STP_DISABLED_TPL = new Array(['\r\n'],[/----\[Port\d*\((\S+)\)\]\[DISABLED\]----/]); FW_REGEX_TEMPLATE.SYSTEM_MSTP_TWO_LAYER_INTERFACE_TPL = new Array(['\r\n'],[/^(\S{1,64}) current state/], [/^Eth-Trunk number: (\d)/]); FW_REGEX_TEMPLATE.SYSTEM_MSTP_PORT_STATE_INFO_TPL = new Array(['\r\n'], [/^\s*(\d+)\s+(\S+)\s+(\S+)\s+(\S+)\s+(\S+)/]); FW_REGEX_TEMPLATE.SYSTEM_MSTP_BPDU_BRIDGE_ROLE = /BridgeRole\s+(\S+)/; FW_REGEX_TEMPLATE.SYSTEM_MSTP_BPDU_GROUP_MAC = /GroupMac\s+(\S+)/; FW_REGEX_TEMPLATE.SYSTEM_MSTP_LAYER2_INTERFACE_TPL = new Array( ['-----'], [/^(GigabitEthernet\d{1,}\/\d{1,}\/\d{1,}|Ethernet\d{1,}\/\d{1,}\/\d{1,}|Eth-Trunk\d{1,}):/]); FW_REGEX_TEMPLATE.SYSTEM_MSTP_BPDU_ENABLE = /^BpduOneQStatus\s+(disable|enable)$/; FW_REGEX_TEMPLATE.SYSTEM_MSTP_BPDU_VLAN = /Dot1QVlan\s+(\d*)/; FW_REGEX_TEMPLATE.SYSTEM_MSTP_BPDU_TUNNEL = /^TwoQList ([\S\s]+)/; FW_REGEX_TEMPLATE.SYSTEM_MSTP_VLAN_TAG_LIST_GRID = new Array([' '],[/(\S+)/]); FW_REGEX_TEMPLATE.SYSTEM_MSTP_BPDU_GRID = new Array(['-----------------------------------'], [/^(\S+):$/], [/^BpduOneQStatus\s+(disable|enable)$/], [/^Dot1QVlan\s+(\d*)$/], [/^TwoQList ([\S\s]+)/]); FW_REGEX_TEMPLATE.SYSTEM_MSTP_GET_EXISTED_VLAN = new Array(['\r\n\r\n'], [/Vlan ([\d]{1,4}) Is (Enable|Disable)/], [/Vlan Interface Name : ([\w]{1,64})/], [/L3 State : (UP|DOWN)/]); FW_REGEX_TEMPLATE.SYSTEM_MSTP_VLAN_PORT_TRUNK_LIST = new Array(['\r\n'],[/^[ ]*\S+[ ]+(\d+)/]); FW_REGEX_TEMPLATE.SYSTEM_MSTP_VLAN_ALL_LIST = new Array(['\r\n'],[/^(\d+)[ ]+\S+[ ]+/]); FW_REGEX_TEMPLATE.SYSTEM_MSTP_VLAN_TAG_LIST = new Array(['\r\n'],[/bpdu-tunnel stp vlan ([\S\s]+)/]); FW_REGEX_TEMPLATE.SYSTEM_LINKGROUP =new Array( ['\r\n link group '], [/^[\s]*(\d{1,4}),\stotal\s\d,\sfault\s\d/], [/^[ ]+(\S+)\s:\s\S*/, '+']); FW_REGEX_TEMPLATE.SYSTEM_LINKGROUP_ONE = new Array( [' link group '], [/(\d*),/], [/(Eth-Trunk|Ip-Trunk|Tunnel|GigabitEthernet|Ethernet|Pos|Atm)(\S* : [\S ]*)/, '+'] ); FW_REGEX_TEMPLATE.SYSTEM_LINKGROUP_ALL = new Array( [' link group '], [/(\d*) :/], [/(Eth-Trunk|Ip-Trunk|Tunnel|GigabitEthernet|Ethernet|Pos|Atm)(\S* : [\S ]*)/, '+'] ); FW_REGEX_TEMPLATE.OUT_INTERFACE_LIST=new Array( ['\r\n'], [/(Eth-Trunk|Ip-Trunk|Tunnel|GigabitEthernet|Pos|Ethernet|Atm)(\S+)/] ); FW_REGEX_TEMPLATE.SYSTEM_NETWORK_INTERFACE_GETALLTEMPLATE = new Array( ['\r\n'], [/(Eth-Trunk|Virtual-Ethernet|Ethernet|Vlanif|GigabitEthernet)(\S+)/]); FW_REGEX_TEMPLATE.SYSTEM_RELIABILITY_HRP_IPLINK_LIST_PARSE_REGEX = /(\d{1,3})[ ]{1,5}(\S{2,5})[ ]{1,5}(\d{1})[ ]{1,5}(\S+|[ ]{1,5})[ ]+(\S+)[ ]{1,9}(\S*)[ ]+(\S+)[ ]*(master|slave)/; FW_REGEX_TEMPLATE.SYSTEM_RELIABILITY_IPLINK_LIST_PARSE_REGEX =/(\d{1,3})[ ]{1,5}(\S{2,5})[ ]{1,5}(\d{1,3})[ ]{1,5}(\S+|)\s*(\S+)[ ]{1,16}(\S*)[ ]+(\S+)[ ]*(\S*)/; FW_REGEX_TEMPLATE.SYSTEM_RELIABILITY_IPLINK_LIST = new Array( ['\r\n'], [FW_REGEX_TEMPLATE.SYSTEM_RELIABILITY_IPLINK_LIST_PARSE_REGEX]); FW_REGEX_TEMPLATE.SYSTEM_RELIABILITY_HRP_IPLINK_LIST = new Array( ['\r\n'], [FW_REGEX_TEMPLATE.SYSTEM_RELIABILITY_HRP_IPLINK_LIST_PARSE_REGEX]); FW_REGEX_TEMPLATE.SYSTEM_RELIABILITY_HRP_NEWIPLINK_LIST = new Array( ['\r\n'], [FW_REGEX_TEMPLATE.SYSTEM_RELIABILITY_IPLINK_LIST_PARSE_REGEX]); FW_REGEX_TEMPLATE.SYSTEM_RELIABILITY_IPLINK_CHECK = { enabled : [/^ ip-link check (enable)$/] }; FW_REGEX_TEMPLATE.SYSTEM_NETWORK_INTERFACE_GETALLTEMPLATE = new Array( ['\r\n'], [/(Eth-Trunk|Virtual-Ethernet|Ethernet|Vlanif|GigabitEthernet)(\S+)/]); FW_REGEX_TEMPLATE.SYSTEM_NETWORK_HRP_REGEXP_IPLINKID = /^(\d{1,2})$/; FW_REGEX_TEMPLATE.SYSTEM_NETWORK_HRP_STATE = new Array(['\r\n'], [/^\s*The firewall's config state is: (\w{1,32})$/]); FW_REGEX_TEMPLATE.SYSTEM_NETWORK_HRP_GROUP = new Array([], [/^\s*Master group status:/], [/^\s*Group enabled:[ ]*\w*/], [/^\s*State:[ ]*(\w{1,32})/], [/^\s*Priority running:[ ]*(\d{1,5})/], [/^\s*Total VRRP members:[ ]*(\d{1,4})/], [/^\s*Hello interval\(ms\):[ ]*(\d{1,5})/], [/^\s*Preempt delay\(s\):[ ]*(\d{1,4})/], [/^\s*Peer group available:[ ]*(\d{1,4})/], [/^\s*Peer's member same:[ ]*(\w{1,12})/], [/^\s*Slave group status:/], [/^\s*Group enabled:[ ]*\w*/], [/^\s*State:[ ]*(\w{1,32})/], [/^\s*Priority running:[ ]*(\d{1,5})/], [/^\s*Total VRRP members:[ ]*(\d{1,4})/], [/^\s*Hello interval\(ms\):[ ]*(\d{1,5})/], [/^\s*Preempt delay\(s\):[ ]*(\d{1,4})/], [/^\s*Peer group available:[ ]*(\d{1,4})/], [/^\s*Peer's member same:[ ]*(\w{1,12})/]); FW_REGEX_TEMPLATE.SYSTEM_NETWORK_HRP_GETGIGETHSTORE = new Array( ['\r\n'], [/^((GigabitEthernet|Ethernet|Eth-Trunk)\S{1,64})\s*\d{1,3}.\d{1,3}.\d{1,3}.\d{1,3}/]); FW_REGEX_TEMPLATE.SYSTEM_NETWORK_HRP_VRID_GETDATA = { 'interfaceNameVrid,vrid' : [/^\s*(\S{1,64}) \| Virtual Router (\d{1,4})$/], VrrpGroup : [/^\s*VRRP Group : (\w{1,64})\s*$/], virtualIp : [/^\s*Virtual IP : (\d+\.\d+\.\d+\.\d+)$/], PriorityRun : [/^\s*PriorityRun : (\d{1,4})$/], PriorityConfig : [/^\s*PriorityConfig : (\d{1,4})$/], MasterPriority : [/^\s*MasterPriority : (\d{1,4})$/], 'Preempt,DelayTime' : [/^\s*Preempt : (\w{1,64}) Delay Time : (\d{1,4})$/], Timer : [/^\s*Timer : (\d{1,4})$/], 'AuthType,password' : [/^\s*Auth Type : (\w{1,12})\s\w{1,12} Auth key : (\S*)$/], trackInterface : [/\s*Track IF : (\S{1,64})/], CheckTTLs : [/^\s*Check TTL : (\w{1,20})$/], iplinkId : [/^\s*Ip-Link (\d{1,3})\S*/] }; FW_REGEX_TEMPLATE.AUTHGLOBALVFG_URL=/^http[s]?\:\/\/[\S]+$/; FW_REGEX_TEMPLATE.SYSTEM_NETWORK_HRP_VRID_MASKADDRESS = /virtual-ip \d{1,3}.\d{1,3}.\d{1,3}.\d{1,3} (\d{1,3}.\d{1,3}.\d{1,3}.\d{1,3})/; FW_REGEX_TEMPLATE.SYSTEM_NETWORK_HRP_VRID_IPLINKCHECKIPADDRESS = /\d{1,3}\s*\w{1,12}\s*\d{1,9}\s*(\d{1,3}.\d{1,3}.\d{1,3}.\d{1,3})/; FW_REGEX_TEMPLATE.SYSTEM_NETWORK_HRP_VRID_IPLINK = /^\s*ip-link check (\w{1,32})$/; FW_REGEX_TEMPLATE.SYSTEM_NETWORK_HRP_REMOVED_SUCCESSFLAG = ['All hrp interfaces have been removed', '系统中所有的hrp备份通道都已经被删除', false]; FW_REGEX_TEMPLATE.SYSTEM_NETWORK_HRP_GETIPLINKIDSTORE = new Array(['\r\n'], [/^(\d{1,2}) /]); FW_REGEX_TEMPLATE.SYSTEM_NETWORK_HRP_GETVLANIFSTORE = new Array(['\r\n'], [/(\S+)[ ]*\(VLAN[ ]*\d+\)[ ]*:[ ]*(\S+)/]); FW_REGEX_TEMPLATE.SYSTEM_NETWORK_RELIABILITY_BYPASS_SWITCH_RECORD = new Array(['\r\n'], [/(\d{1,12})\s+\d+\s+(\S+)\s+((?:\S+[ ]?)+)\s{2,}(\d{1,4}-\d{1,2}-\d{1,2} \d{1,2}:\d{1,2}:\d{1,2})/]); FW_REGEX_TEMPLATE.SYSTEM_NETWORK_RELIABILITY_BYPASS = new Array(['\r\n'],[/(\d*\/\d*\/\d*)\s*(\d*\/\d*\/\d*)\s*(switch|no-switch)/]); FW_REGEX_TEMPLATE.SYSTEM_NETWORK_RELIABILITY_BYPASS_ALL = new Array(['\r\n#'], [/bypass-link (\d*\/\d*\/\d*)/], [/(switch) bypass/], [/(undo) auto-recover/]); FW_REGEX_TEMPLATE.SYSTEM_NETWORK_RELIABILITY_LIGHT_BYPASS = new Array(['\r\n\r\n'], [/Bypass (\d*\/\d*\/\d*) configuration/], [/Mode[ ]*(\w*)/],[/Channel type[ ]*(.*)/], [/HeartBeat function[ ]*(\w*)/], [/Revertive function[ ]*(\w*)/], [/Wait-to-Restore time\(in Seconds\)[ ]*(\d*)/]); FW_REGEX_TEMPLATE.SYSTEM_NETWORK_RELIABILITY_LIGHT_BYPASS_CN = new Array(['\r\n\r\n'], [/Bypass (\d*\/\d*\/\d*) 配置信息/], [/模式[ ]*(\S*)/], [/通道类型[ ]*(\S*)/], [/心跳功能[ ]*(\S*)/], [/回切功能[ ]*(\S*)/], [/反转恢复时间值\(单位秒\)[ ]*(\d*)/]); FW_REGEX_TEMPLATE.SYSTEM_NETWORK_RELIABILITY_LIGHT_BYPASS_DATA = { 'Mode' : [/Mode[ ]*(\w*)/], 'ChannelType' : [/Channel type[ ]*(\w*)/], 'SaveConfig' : [/SaveConfigWhenPowerOff[ ]*(Disable|Enable)/], 'HeartBeat' : [/HeartBeat function[ ]*(Disable|Enable)/], 'Revertive' : [/Revertive function[ ]*(Disable|Enable)/], 'WaitRestoreTime' : [/Wait-to-Restore time\(in Seconds\)[ ]*(\d*)/], 'WaveLength' : [/Wave-length\(nm\)[ ]*(N|\d{1,4})/], 'LOSThresholdOne' : [/LOS threshold\(dBm\)[ ]*([-\d]*)/], 'LOSHysterisisOne' : [/LOS hysterisis\(dBm\)[ ]*([-\d]*)/], 'DegThresholdOne' : [/Degradation threshold\(dBm\)[ ]*([-\d]*)/], 'DegHysterisisOne' : [/Degradation hysterisis\(dBm\)[ ]*([-\d]*)/], 'LOSThresholdTwo' : [/LOS threshold\(dBm\)[ ]*([-\d]*)/], 'LOSHysterisisTwo' : [/LOS hysterisis\(dBm\)[ ]*([-\d]*)/], 'DegThresholdTwo' : [/Degradation threshold\(dBm\)[ ]*([-\d]*)/], 'DegHysterisisTwo' : [/Degradation hysterisis\(dBm\)[ ]*([-\d]*)/] }; FW_REGEX_TEMPLATE.SYSTEM_NETWORK_RELIABILITY_BYPASS_INFO = new Array(['\r\n'], [/^((?:\S+[ ]?)+)(?:\s{2,}(.+)|)$/]); FW_REGEX_TEMPLATE.SYSTEM_NETWORK_HRP_CONFIGURATION = { 'hrpEnable' : [/^\s*hrp (\w{1,12})\s*$/], 'slaveConfigEnable' : [/^\s*hrp slave config (enable)\s*$/], 'preemptDelay' : [/((undo |)hrp preempt(?: delay[ ]*|)(.*))/], 'mirrorSession' : [/^\s*hrp mirror session (\w{1,12})\s*$/], 'autoSync' : [/(undo) hrp auto-sync config/], 'autoSyncConnStatus' : [/(undo) hrp auto-sync connection-status/], 'remarkPackageSend' : [/(firewall) composite-hrp permit-backupforward/], 'ospfEnable,ospfCost' : [/hrp ospf-cost adjust-(enable)(?: (\d{1,5})|)/] }; FW_REGEX_TEMPLATE.SYSTEM_NETWORK_HRP_PREEMPT_DELAY = /((undo |)hrp preempt(?: delay[ ]*|)(.*))/; FW_REGEX_TEMPLATE.SYSTEM_NETWORK_HRP_IPLINK_CHECKBOX = /^\s*ip-link check (\w{1,12})\s*$/; FW_REGEX_TEMPLATE.SYSTEM_NETWORK_HRP_GETCHECKMESSAGEINTERFACE = new Array( ['\r\n'], [/(Eth-Trunk\S{1,64}|GigabitEthernet\S{1,64})/]); FW_REGEX_TEMPLATE.SYSTEM_NETWORK_HRP_HRPTRANSFERINTERFACE = new Array(['\r\n'], [/hrp interface (\S{1,64})(\stransfer-only|)/]); FW_REGEX_TEMPLATE.SYSTEM_NETWORK_HRP_VRIDLISTTPL = new Array(['Check TTL'], [/^\s*([\S]{1,64}) \| Virtual Router ([\d]{1,4})$/], [/^\s*VRRP Group : (\w{1,32})\s*/], [/^\s*state : ([\w]{1,12})\s*$/], [/^\s*Virtual IP : (\d{1,3}.\d{1,3}.\d{1,3}.\d{1,3})\s*$/]); FW_REGEX_TEMPLATE.SYSTEM_NETWORK_HRP_BACKCHANNEL = new Array(['\r\n'],[/^\s*(\S*)\s:[ ]*\s*[ ]*(\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3})?[ ]*(\w*)/]); FW_REGEX_TEMPLATE.SYSTEM_NETWORK_HRP_BACKCHANNEL_CURR = new Array(['\r\n'], [/^[ ]*hrp[ ]*interface[ ]*(\S+)[ ]*\S*[ ]*(\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3})?/]); FW_REGEX_TEMPLATE.SYSTEM_NETWORK_HRP_DISPLAY_STATE = /^\s*(\S*\s\S*\s*\S*)[ ]*:[ ]*(\S*)/; FW_REGEX_TEMPLATE.SYSTEM_HRP_VLAN_LOGSERVERINTERFACETPL = new Array( ['\r\n'], [/^(\S{1,64}) current state :/]); FW_REGEX_TEMPLATE.SYSTEM_RELIABILITY_HRP_TRACK_INTERFACE = /(\S*)\s*\(VLAN\s*(\d{1,4})\)/; FW_REGEX_TEMPLATE.SYSTEM_NETWORK_HRP_BACKORCHECKCMPTPL = /^\w*\s*\w*\s*\d{1,4}\/\d{1,2}\/\d{1,2}\s*\d{1,2}:\d{1,2}:\d{1,2}\s*\d{1,4}\/\d{1,2}\/\d{1,2}\s*\d{1,2}:\d{1,2}:\d{1,2}\s*([\S ]*)/; FW_REGEX_TEMPLATE.SYSTEM_NETWORK_HRP_BACKORCHECKCMPTPL_CHINESE = /^\w*\s*\S*\s*\d{1,4}\/\d{1,2}\/\d{1,2}\s*\d{1,2}:\d{1,2}:\d{1,2}\s*\d{1,4}\/\d{1,2}\/\d{1,2}\s*\d{1,2}:\d{1,2}:\d{1,2}\s*(\S*)/; FW_REGEX_TEMPLATE.SYSTEM_NETWORK_HRP_GETIPLINKJSON = / (\d{1,3}.\d{1,3}.\d{1,3}.\d{1,3})\s*(\S{1,64})$/; FW_REGEX_TEMPLATE.SYSTEM_NETWORK_HRP_HRPCHANNELTPL = new Array(['\r\n'], [/hrp interface (\S{1,64})(\stransfer-only|)/]); FW_REGEX_TEMPLATE.SYSTEM_NETWORK_HRP_STATE_MATCH = /\S{1,64}/g; FW_REGEX_TEMPLATE.SYSTEM_NETWORK_GRIDPAGETOTAL = /\s+(\d{1,})[ ]+(\d{1,}).*/; FW_REGEX_TEMPLATE.SYSTEM_NETWORK_ZONE_ZONELISTSUCC = new Array(['\r\n#'], [/^(?!HRP)([\S\s]*)/], [/^ description ([\S\s]*)$/], [/^ priority is (\d{1,64})$/], [/^ interface of the zone is [(](\d{1,64})[)]:$/], [/^ (\S*)$/, '+']); FW_REGEX_TEMPLATE.SYSTEM_NETWORK_ZONE_GETYESJOINZONE = /^ (\S{1,64})/; FW_REGEX_TEMPLATE.SYSTEM_NETWORK_ZONE_GETZONELISTDATA = new Array(['\r\n#'], [/^(?!HRP)([\S\s]*)/]); FW_REGEX_TEMPLATE.SYSTEM_NETWORK_ZONE_GETAZONELISTDATA = new Array(['\r\n'], [/^[ ]{2}((?!interface|priority)\S+)[ ]+\S+/]); FW_REGEX_TEMPLATE.SYSTEM_NETWORK_ZONE_SHOWNEWOREDITPANEL_INTERFACENAME = new Array( ['\r\n'], [/^ (\S{1,64})/]); FW_REGEX_TEMPLATE.SYSTEM_NETWORK_ZONE_ALREADYJOINZONE_INTERFACENAME = new Array( ['\r\n'], [/ (\S{1,64})$/]); FW_REGEX_TEMPLATE.SYSTEM_NETWORK_ZONE_STARTLEVEL = /\b(vzone|untrust|dmz|trust|local)$/; FW_REGEX_TEMPLATE.SYSTEM_NETWORK_ZONE_NOTEDIT = /\b(vzone|local)$/; FW_REGEX_TEMPLATE.SYSTEM_NETWORK_INTERFACEGRID_NOTEDIT = /(NULL)/; FW_REGEX_TEMPLATE.SYSTEM_NETWORK_VLAN_LISTSUCC = new Array(['Untagged Ports'], [/^\s*Vlan ([\d]{1,4}) is (enable|able)$/], [/^\s*binding vpn-instance (\S{1,20})/], [/^\s*Vlan interface name: ([\w]{1,64})$/], [/^\s*L3 state: (Up|Down)$/]); FW_REGEX_TEMPLATE.SYSTEM_NETWORK_VLAN__LISTSUCC_NEW = new Array(['Untagged Ports'], [/Vlan ([\d]{1,4}) is (Enable|enable|Disable|disable)/], [/Vlan Interface Name : ([\w]{1,64})/], [/L3 State : (UP|DOWN)/]); FW_REGEX_TEMPLATE.SYSTEM_NETWORK_VLAN_TWOLAYERINTERFACE_GRID = new Array( ['\r\n'], [/(\S+)[ ][ ]:[ ][ ](Tagged Ports|Untagged Ports)[ ]+\((\S+)\)/] ); FW_REGEX_TEMPLATE.SYSTEM_NETWORK_VLAN_LOADACCESSINTERFACEDATA = new Array( ['\r\n'], [/(\S+)[ ][ ]:[ ][ ](\S+)/] ); FW_REGEX_TEMPLATE.SYSTEM_NETWORK_VLAN_VLANEDITACTION = { vlanid : [/^vlan (\d{1,4})/], tovfwvlan : [/^\s*binding vpn-instance (\S{1,20})/], description : [/^ description ([\S ]*)/], hrpTrack : [/^ hrp track (\w{1,12})/], taggedPorts : [/^ Tagged Ports: (\w{1,4})$/], untaggedPorts : [/^ Untagged Ports: (\w{1,4})$/] }; FW_REGEX_TEMPLATE.SYSTEM_NETWORK_VLAN_REFURBISHTWOLAYERINTERFACE = { taggedPorts : [/^\sTagged Ports: (\w{1,4})/], untaggedPorts : [/^\sUntagged Ports: (\w{1,4})/] }; FW_REGEX_TEMPLATE.SYSTEM_NETWORK_VLAN_INTERFACESTORE_MATCH = /\S{1,64}/g; FW_REGEX_TEMPLATE.SYSTEM_NETWORK_VLAN_MACLISTSUCC = new Array( ['\r\n'], [/^\s*(\d{1,4})\s*([a-f0-9]{1,4}-[a-f0-9]{1,4}-[a-f0-9]{1,4})\s*\w*\s*(\S{1,64}|)\s*(dynamic|static)\s*/]); FW_REGEX_TEMPLATE.SYSTEM_NETWORK_VLAN_MACLISTSUCC_NEW = new Array( ['\r\n'], [/(\S+)[ ]+(\S+)[ ]+(\S+)[ ]+(\S+)[ ]/]); FW_REGEX_TEMPLATE.SYSTEM_NETWORK_VLAN_MACCOMBOSELECT = new Array(['\r\n'], [/^\s*\d{1,4}\s*([a-f0-9]{1,4}-[a-f0-9]{1,4}-[a-f0-9]{1,4})/]); FW_REGEX_TEMPLATE.SYSTEM_NETWORK_VLAN_MACCOMBOSELECT_NEW = new Array(['\r\n'], [/^\s*([a-f0-9]{1,4}-[a-f0-9]{1,4}-[a-f0-9]{1,4})/]); FW_REGEX_TEMPLATE.SYSTEM_NETWORK_VLAN_VLANCOMBOSELECT = new Array(['\r\n'], [/^\s*(\d{1,4})\s*[a-f0-9]{1,4}-[a-f0-9]{1,4}-[a-f0-9]{1,4}/]); FW_REGEX_TEMPLATE.SYSTEM_NETWORK_VLAN_VLANCOMBOSELECT_NEW = new Array(['\r\n'], [/^\s*[a-f0-9]{1,4}-[a-f0-9]{1,4}-[a-f0-9]{1,4} \s*(\d{1,4})/]); FW_REGEX_TEMPLATE.SYSTEM_NETWORK_MAC_VLAN_EXIST = new Array(['Untagged Ports'], [/Vlan ([\d]{1,4}) (Is|is) (Enable|enable|disable|Disable)/]); FW_REGEX_TEMPLATE.SYSTEM_NETWORK_VLAN_LOGSERVERINTERFACETPL = new Array( ['\r\n'], [/^(\S{1,64}) current state :/]); FW_REGEX_TEMPLATE.SYSTEM_NETWORK_VLAN_INTCONFNEWGRID = new Array(['\r\n'], [/^(\S{1,64}) current state/], [/^Eth-Trunk number: (\d)/]); FW_REGEX_TEMPLATE.SYSTEM_NETWORK_MAC_INTERFACE_ETHTRUNK = /(E\d)$/; FW_REGEX_TEMPLATE.SYSTEM_NETWORK_MAC_INTERFACE_GIGABITETHERNET = /(G\d*\/\d*\/\d*)$/; FW_REGEX_TEMPLATE.SYSTEM_NETWORK_MAC_INTERFACE_ETHERNET = /(E\d*\/\d*\/\d*)$/; FW_REGEX_TEMPLATE.SYSTEM_CONFIGURE_CLOCKINFOPARSETPL = new Array([], [/^(\d*:\d*:\d*)[ ]*[a-zA-Z]*[ ]*[a-zA-Z]*[ ]*(\d*\/\d*\/\d*).*/], [/^Time Zone : ([\S\s]*)[ ]*(add|minus)[ ]*(\d*:\d*:\d*).*/], [/^Daylight saving time : [\S\s]*[ ]*(repeating|one-year)[ ]*(\d*)(~|)(\d*)*/], [/from[ ]*(\D+)-(\S+)[ ]*(\S+)[ ]*(\d*:\d*:\d*)/], [/to[ ]*(\D+)-(\S+)[ ]*(\S+)[ ]*(\d*:\d*:\d*)/], [/^[ ]+add[ ]*(\d*:\d*:\d*)/]); FW_REGEX_TEMPLATE.SYSTEM_CONFIGURE_NTPSERVERPARSETPL = new Array(['\r\n'], [/ntp-service unicast-server (\S+)/]); FW_REGEX_TEMPLATE.SYSTEM_CONFIGURE_FTPSERVERGETPARSETPL = new Array( ["\r\n\r\n"], [/^[ |Info:]*FTP server (has been|is) (\w*)/], [/^[ ]*Timeout value\(in minute\)[ ]*(\d*)/]); FW_REGEX_TEMPLATE.SYSTEM_CONFIGURE_FTPSERVERGETBYCURRPARSETPL = /^\s*FTP server (\S+)\s*\r\n\s+FTP timeout (\S+)/; FW_REGEX_TEMPLATE.SYSTEM_CONFIGURE_EQUIPGETPARSETPL = new Array(["\r\n\r\n"], [/^ Httpd(?: security | )server is (\w*).*/], [/^ HTTP(?:S|) port is (\d*).*/]); FW_REGEX_TEMPLATE.SYSTEM_CONFIGURE_EQUIPGETTIMEOUTPARSETPL = /web-manager timeout (\d+)/ FW_REGEX_TEMPLATE.ATTACK_DEFEND_ACTION = { defendAction : [/firewall\s*defend\s*action\s*(alert)/] }; FW_REGEX_TEMPLATE.SYSTEM_CONFIGURE_LinkStatePARSETPL = new Array(['\r\n'], [/(undo)\s*firewall session link-state check\s*(icmp|tcp)?/]); FW_REGEX_TEMPLATE.SYSTEM_CONFIG_EQUIPMENTSERVER_SSH = new Array([], [/SSH version[ ]*:[ ]*(\S*)/], [/SSH connection timeout[ ]*:[ ]*(\d{1,3}) second/], [/SSH server key generating interval[ ]*:[ ]*(\d{1,2})/], [/SSH authentication retries[ ]*:[ ]*(\d{1,2})/], [/SFTP server[ ]*:[ ]*(Enable|Disable)/], [/STELNET server[ ]*:[ ]*(Enable|Disable)/], [/SSH server port[ ]*:[ ]*(\d{1,5})/]); FW_REGEX_TEMPLATE.SYSTEM_MAINTENANCE_PATCHNAME = /\[patch\s+filename\]:\s+(\S+)/; FW_REGEX_TEMPLATE.SYSTEM_MAINTENANCE_PATCHSTATUS = /\[patch\s+status\]:\s+(\S+)/; FW_REGEX_TEMPLATE.SYSTEM_MAINTENANCE_COMPAREPARSETPL_SRG = new Array([], [/^[ ]*(WARNING:|Info:|Warning:)(t|T)he current configuration is (the |)(\w*).*/]); FW_REGEX_TEMPLATE.SYSTEM_MAINTENANCE_COMPAREPARSETPL = new Array([], [/^[ ]*(WARNING:|)(t|T)he current configuration is (the |)(\w*).*/]); FW_REGEX_TEMPLATE.SYSTEM_MAINTENANCE_CONFIGURATIONQUERYPARSETPL = new Array( ['\n'], [/\s*(.*)/]); FW_REGEX_TEMPLATE.SYSTEM_MAINTENANCE_GETMODEL = new Array(['\r\n'], [/\s*(\S+)/]); FW_REGEX_TEMPLATE.SYSTEM_MAINTENANCE_GETTYPE = new Array(['\r\n'], [/\s*(\S+)/]); FW_REGEX_TEMPLATE.SYSTEM_MAINTENANCE_GETLICENSEPARSETPL = { deviceID : [/^Device ESN is: (\w*)/], filename : [/^The file activated is:\s*(.*)/], activatetime : [/^The time when activated is:\s*(.*)/], VFW : [/^(VFW\s*: \d*)/], VPN : [/^(VPN\s*: \d*)/], SSLVPN_USERS_MAX : [/^(SSL VPN Users Max\s*: \d*)/], DPI : [/^(DPI\s*: \w*)/], SURF_BEHAVIOR : [/^(Surf-Behavior\s*: \w*)/], IPS : [/^(IPS\s*: \w*)/], Anti_Virus : [/^(Anti Virus\s*: \w*)/], URL_Filter : [/^(Mail Filter\s*: \w*)/], Mail_Filter : [/^(URL Filter\s*: \w*)/], Anti_DDOS : [/^(Anti-DDOS Capability\(Throughput:G\): \d*)/] }; FW_REGEX_TEMPLATE.SYSTEM_MAINTENANCE_LICENSEDIRPARSETPL = new Array( ['\r\n'], [/^[ ]*\d*[ ]*\-rw\-[ ]*(\d*)[ ]*(\w* \d* \d* \d*:\d*:\d*)[ ]*(.*\.dat)$/]); FW_REGEX_TEMPLATE.SYSTEM_MAINTENANCE_GETVERSIONPARSETPL = new Array( ['\r\n\r\n'], [/^Software Version[ ]*: (.*)(\(\S+\s*\(R\)[ ]*)Software\,([ ]*Version .*)/]); FW_REGEX_TEMPLATE.SYSTEM_MAINTENANCE_GETDETAILVERSIONPARSETPL = new Array([''], [/(.*)/]); FW_REGEX_TEMPLATE.SYSTEM_MAINTENANCE_GETSTARTUPPARSETPL = new Array([], [/^[ ]*Startup system software[ ]*:[ ]*(\S*)/], [/^[ ]*Next startup system software[ ]*:[ ]*(\S*)/], [/^[ ]*Startup saved-configuration file[ ]*:[ ]*(\S*)/], [/^[ ]*Next startup saved-configuration file[ ]*:[ ]*(\S*)/]); FW_REGEX_TEMPLATE.SYSTEM_MAINTENANCE_GETPATCHINFORMATIONPARSETPL = new Array( [], [/^ Current[ ]*patch[ ]*file[ ]*name[ ]*:[ ]*(\S*)/], [/^ Total Patch Num : \S{9}(\S)/], [/^ Running Patch Num : \S{9}(\S)/], [/^ Active Patch Num : \S{9}(\S)/], [/^ Deactive Patch Num : \S{9}(\S)/], [/Status of Patch Unit 1 : (\S*)/]); FW_REGEX_TEMPLATE.SYSTEM_MAINTENANCE_SYSDIRPARSETPL = new Array( ['\r\n'], [/^[ ]*\d*[ ]*\-rw\-[ ]*(\d*)[ ]*(\w* \d* \d* \d*:\d*:\d*)[ ]*(.*\.bin)[ ]*$/]); FW_REGEX_TEMPLATE.SYSTEM_MAINTENANCE_SYSDIRPARSETPL_GETALLFILE = new Array( ['\r\n'], [/^[ ]*\d*[ ]*\-rw\-[ ]*(\d*)[ ]*(\w* \d* \d* \d*:\d*:\d*)[ ]*(.*\.*)[ ]*$/]); FW_REGEX_TEMPLATE.SYSTEM_MAINTENANCE_PATCHDIRPARSETPL = new Array( ['\r\n'], [/^[ ]*\d*[ ]*\-rw\-[ ]*(\d*)[ ]*(\w* \d* \d* \d*:\d*:\d*)[ ]*(.*\.pat)$/]); FW_REGEX_TEMPLATE.SYSTEM_MAINTENANCE_PATCHDIRPARSETPL_2100 = new Array( ['\r\n'], [/^[ ]*\d*[ ]*\-rw\-[ ]*(\d*)[ ]*(\w* \d* \d* \d*:\d*:\d*)[ ]*(patch.pat)$/]); FW_REGEX_TEMPLATE.SYSTEM_MAINTENANCE_CONFDIRPARSETPL = new Array( ['\r\n'], [/^[ ]*\d*[ ]*\-rw\-[ ]*(\d*)[ ]*(\w* \d* \d* \d*:\d*:\d*)[ ]*(.*(?:\.cfg|\.zip))$/]); FW_REGEX_TEMPLATE.SYSTEM_MAINTENANCE_FILENAMESUFFIX=/^[^\"\'\\~*]+\.(cfg|zip)/; FW_REGEX_TEMPLATE.SYSTEM_MAINTENANCE_CONFDIRPARSETPL_bak = new Array( ['\r\n'], [/^[ ]*\d*[ ]*\-rw\-[ ]*(\d*)[ ]*(\w* \d* \d* \d*:\d*:\d*)[ ]*([\w\-]*(\.cfg|\.zip|))$/]); FW_REGEX_TEMPLATE.SYSTEM_MAINTENANCE_TRIM = { trimRegex : /^\s+|\s+$/g } FW_REGEX_TEMPLATE.SYSTEM_MAINTENANCE_GETDIRTOTAL = { dirTotal : /(\d* KB) total \((\d* KB) free/ } FW_REGEX_TEMPLATE.SYSTEM_MAINTENANCE_Restart = { base64test : /[^A-Za-z0-9\+\/\=]/g } FW_REGEX_TEMPLATE.SYSTEM_MAINTENANCE_RESETCONFIG = new Array(['\r\n'],{ file : [/Next startup saved-configuration file:[ ]+flash:\/(\S+)/] }); FW_REGEX_TEMPLATE.SYSTEM_CONSTTPL = { globeSpace : / /g, endFlag : /(\r\n\r\n\[.*)/, leftBracket : /\[/g, rightBracket : /\]/g, toleftBracket : /\^\!\^/g, torightBracket : /@&@/g, leftbracket : //g, sessionNatIP : /\[(\d*.\d*.\d*.\d*:\d*)\]/ } FW_REGEX_TEMPLATE.DELETEFILECMDTPL_SUCCESSFLAG = ['Done|File can\'t be found', '完成|文件不存在', false]; FW_REGEX_TEMPLATE.SETFTPENABLECMDTPL_SUCCESSFLAG = [ 'Start FTP server|Close FTP server', '启动FTP服务器|关闭FTP服务器', false]; FW_REGEX_TEMPLATE.SAVECMDTPL_SUCCESSFLAG = ['successfully', '成功', false]; FW_REGEX_TEMPLATE.STARTUPCMDTPL_SUCCESSFLAG = ['Info', '提示', false]; FW_REGEX_TEMPLATE.NOTEMESSAGE = ['You will change the startup saved-configuration', '将改变系统配置文件', false]; FW_REGEX_TEMPLATE.SYSTEM_MAINTENANCE_DIAGNOSEPUBADDR = /^(?:(?:[A-Za-z0-9]+).){2,3}(?:com|org|cn|net|gov)$/; FW_REGEX_TEMPLATE.SYSTEM_MAINTENANCE_DIAGNOSEWEBURL = /^[hH][tT][tT][pP]\:\/\/.*$/; FW_REGEX_TEMPLATE.SYSTEM_MAINTENANCE_DIAGNOSESUBCMD = /[\S+[ ]+diagnose]/g; FW_REGEX_TEMPLATE.SYSTEM_MAINTENANCE_RESETRESON = /(\d{1,})\s{2,}(\d{1,})\s{2,}(\d+\-\d+\-\d+\s+\d{2}:\d{2}:\d{2})\s{2,}(.{1,})\s{2,}(\d{1,})\s{2,}(\d{1,})/; FW_REGEX_TEMPLATE.SYSTEM_INFO_ARPLISTPARSETPL = new Array( ['\r\n'], [/^(\d{1,3}.\d{1,3}.\d{1,3}.\d{1,3})[ ]+([a-z0-9]{4}\-[a-z0-9]{4}\-[a-z0-9]{4})[ ]+(\d*)[ ]*([A-Z]{1})[ ]*([a-zA-Z0-9\-\/]*)[ ]*([a-zA-Z0-9\-\/]*).*/]); FW_REGEX_TEMPLATE.SYSTEM_INFO_SERVERMAPLISTPARSETPL = new Array( ['\r\n\r\n'], [/(Reverse)?,\s*(\S+)\s*->\s*(\S+),\s*Zone:\s*(\S+)/], [/Protocol\s*:\s*(\S*)\(.*\)\s*,\s*Left-Time\s*:\s*(\S+),/], [/VPN:[ ]+(\S+)[ ]+->[ ]+(\S+)/] ); FW_REGEX_TEMPLATE.SYSTEM_INFO_INTERFACELISTPARSETPL = new Array( ['\r\n\r\n'], [/^(\S*)[ ]*(?:current state : \S*|is standby)/], [/^The Maximum Transmit Unit is \d* bytes, Hold timer is (\d*\(sec\))/], [/^ +(Last |)(?:\d+ minutes|\d+ seconds) input rate (\d+(?:\.\d+|)[ ]*(?:bytes|bits)\/(?:s|sec)), (\d+(?:\.\d+|)[ ]*packets\/(?:sec|s))/], [/^ +(Last |)(?:\d+ minutes|\d+ seconds) output rate (\d+(?:\.\d+|)[ ]*(?:bytes|bits)\/(?:s|sec)), (\d+(?:\.\d+|)[ ]*packets\/(?:sec|s))/], [/^[ ]{4}(?:Input(?:[ ]{0,5}):(?:[ ]{0,5}\d+ packets,){0,1}|\d+[ ]packets[ ]input,)[ ](\d+)[ ](?:bytes|goodbytes,[ ]\d+ badbytes)(?:,[ ]\d+ drops){0,1}/], [/^[ ]{4}(?:Output(?:[ ]{0,5}):(?:[ ]{0,5}\d+ packets,[ ]{0,5}){0,1}|\d+[ ]packets[ ]output,[ ]{0,5})(\d+)[ ]bytes(?:,[ ]\d+[ ]drops){0,1}/]); FW_REGEX_TEMPLATE.SYSTEM_INFO_SESSIONLISTPARSETPL = new Array( ['\r\n\r\n'], [/^[ ]*(\S+)[ ]*VPN:(\S+)[ ]*(-->)[ ]*(\S+)/], [/^[ ]*(?:Zone: ([a-zA-Z]+\S*)(\-\->|<\-\-) ([a-zA-Z]+\S*)[ ]*|)TTL:[ ]*(\d*:\d*:\d*)[ ]*Left:[ ]*(\d*:\d*:\d*)/], [/^(?:[ ]*Interface: (\S*)|)[ ]*NextHop: (\d*.\d*.\d*.\d*)(?: *MAC: (\S+)|)/], [/^[ ]*(\d*.\d*.\d*.\d*:\d*(\[\d*.\d*.\d*.\d*:\d*\]|)[ ]*(\+\->|\-\->|<\-\-|<\-\+)[ ]*\d*.\d*.\d*.\d*:\d*(\[\d*.\d*.\d*.\d*:\d*\]|)).*/]); FW_REGEX_TEMPLATE.SYSTEM_INFO_SESSIONLISTCOUNTPARSETPL =new Array(['\r\n'],[/^[ ]*Current total sessions:[ ]*(\d+)/]) ; FW_REGEX_TEMPLATE.SYSTEM_INFO_SESSIONLISTPARSETPL_bak = new Array( ['\r\n\r\n'], [/^[ ]*(\S+.*)[ ]*\(vpn: ([a-zA-Z]*) (\->|<\-) ([a-zA-Z]*).*/], [/^[ ]*zone: ([a-zA-Z]+\S*) (\->|<\-) ([a-zA-Z]+\S*)[ ]*tag: (\w*)[ ]*State: (\w*).*/], [/^[ ]*ttl: (\d*:\d*:\d*)[ ]*left: (\d*:\d*:\d*)[ ]*Id: (\w*)[ ]*SlvId: (\w*).*/], [/^[ ]*Interface: (\S*)[ ]*Nexthop: (\d*.\d*.\d*.\d*)[ ]*Mac: ([0-9a-z]*\-[0-9a-z]*\-[0-9a-z]*\-[0-9a-z]*\-[0-9a-z]*\-[0-9a-z]*).*/], [/^[ ]*(\d*.\d*.\d*.\d*:\d*(\[\d*.\d*.\d*.\d*:\d*\]|)(\+\->|\-\->|<\-\-|<\-\+)\d*.\d*.\d*.\d*:\d*(\[\d*.\d*.\d*.\d*:\d*\]|)).*/]); FW_REGEX_TEMPLATE.SYSTEM_INFO_SESSIONADDRTPL = /(\d*.\d*.\d*.\d*:\d*)(?:\[(\d*.\d*.\d*.\d*:\d*)\]|)[ ]*(\+\->|\-\->|<\-\-|<\-\+)[ ]*(\d*.\d*.\d*.\d*:\d*)(?:\[(\d*.\d*.\d*.\d*:\d*)\]|)/; FW_REGEX_TEMPLATE.SYSTEM_INFO_STA_SES=/(TCP|UDP|FTP|HTTP|H323|RTSP|SMTP) (?:s|S)ession(?:s|)(?: table|) number: +(\d+)/; FW_REGEX_TEMPLATE.SYSTEM_INFO_STA_REC=/(Total IP|Our IP|Forward IP|Other IP|Fragment) packets received: +(\d+)/; FW_REGEX_TEMPLATE.SYSTEM_INFO_STA_TRA=/(Total IP|Our IP|Forward IP|Other IP|Fragment) packets transmitted: +(\d+)/; FW_REGEX_TEMPLATE.SYSTEM_INFO_STA_DIS=/(Total defend|SYN flood|ICMP flood|Blacklist|UDP flood|Fragment excess) packets discarded: +(\d+)/; FW_REGEX_TEMPLATE.SYSTEM_INFO_STA_ALL=/(Table|Received|Transmitted|Packets)/; FW_REGEX_TEMPLATE.SYSTEM_INFO_STA_ALL_DETAIL=/ +(.+): +(\d+)/; FW_REGEX_TEMPLATE.SYSTEM_INFO_STATISTICLISTPARSETPL = new Array(['\r\n'], [/^[ ]*(\w{1,20}[ ]*\w{1,20}),[ ]*(\d*),[ ]*(.+)/]); FW_REGEX_TEMPLATE.SYSTEM_INFO_DISCARDINFO = /(\w*)(Dis|Discard).*/; FW_REGEX_TEMPLATE.SYSTEM_INFO_PASSRCVINFO = /^\w*(Octs|pkts|bytes|Pkts)$/; FW_REGEX_TEMPLATE.SYSTEM_INFO_SESSMODEL = /(\w*)(Session|Sess)$/; FW_REGEX_TEMPLATE.SYSTEM_INFO_STINFO = /^(Pass|Rcv)(\w*)pkts$/; FW_REGEX_TEMPLATE.SYSTEM_INFO_DISPKT = /(\w*)(DisPkt|DiscardPkt|DiscardPkts|DisPkts)$/; FW_REGEX_TEMPLATE.VFW_LIST = new Array(['VPN-Instance'], [/^[ ]*:[ ]*((\S{1,19})(?:[ ]*\(being deleted\)|))/], [/^[ ]*vpn-id[ ]*:[ ]*(\d{1,2})/], [/^[ ]*Description[ ]*:[ ]((?:\S*[ ]*)*)/], [/^\s*((?:\d+|(?:\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3})):\d+)/]); FW_REGEX_TEMPLATE.VFW_ROUTEMATCH = /^\s*(\d{1,}):(\d{1,})/; FW_REGEX_TEMPLATE.VFW_ISEXIST = /(VPN-Instance does not exist)/; FW_REGEX_TEMPLATE.VFW_MAXUSERNUM = /max-user-number (\d)+/; FW_REGEX_TEMPLATE.VFW_MAXUSERGROUPNUM = /max-group-number (\d)+/; FW_REGEX_TEMPLATE.VFW_DELETE_JUDGMENT = / \(being deleted\)/; FW_REGEX_TEMPLATE.VFW_DEL_SUCCESSFLAG = [ 'IP addresses from all interfaces in VPN-Instance', '中所有接口的IP地址已经被删除']; FW_REGEX_TEMPLATE.ROUTER_STATIC_GRID_LIST = new Array( ['\r\n'], [/[ ]+ip route-static ((vpn-instance[ ](\S{1,31}))|)[ ]*(\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3})[ ]+(\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3})[ ]*((vpn-instance[ ](\S{1,31}))|([a-zA-Z]{1,30}\S{1,20})|)[ ]*((\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3})(?: public|)|)[ ]*(preference|)[ ]*(\d*)[ ]*((track|)[ ]*ip-link (\d*)|)/] ); FW_REGEX_TEMPLATE.ROUTER_STATIC_DEFAULT_PREFERENCE = new Array(['\r\n'],[/\s*ip[ ]+route-static[ ]+default-preference[ ]+(\d*)/]); FW_REGEX_TEMPLATE.ROUTER_STATIC_VPNGRID_LIST = new Array( ['\r\n'], [/[ ]+ip[ ]+route-static[ ]+vpn-instance[ ]+ \w{1,19}[ ]+(\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3})[ ]+(\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3})[ ]*([^0-9]\S{1,63}|)[ ]*(\d{0,3}\.*\d{0,3}\.*\d{0,3}\.*\d{0,3})[ ]*(preference|)[ ]*(\d*)[ ]*(reject|blackhole|)/]); FW_REGEX_TEMPLATE.ROUTER_STATIC_DOWN_COMMAND = new Array([], [/^ Mac-binding is (Enabled|Disabled)[ ]*$/]); FW_REGEX_TEMPLATE.ROUTER_STATIC_ISP_DIRDATA = new Array( ['\r\n'], [/^[ ]*\d*[ ]*\-rw\-[ ]*(\d*)[ ]*(\w* \d* \d* \d*:\d*:\d*)[ ]*(\S*\.txt)/]); FW_REGEX_TEMPLATE.ROUTER_POLICY_DOWN_COMMAND = new Array([], [/^ Mac-binding is (Enabled|Disabled)[ ]*$/]); FW_REGEX_TEMPLATE.ROUTER_POLICY_IN_INTERFACE_DROPDOWN = new Array( ['\r\n\r\n'], [/^(GigabitEthernet\S*|Ethernet\S*|Virtual-Template\S*|Tunnel\S*) current state : (?:UP|DOWN)/]); FW_REGEX_TEMPLATE.ROUTER_POLICY_IN_INTERFACE = new Array(['\r\n'], [/^[ ]+(\w+)[ ]+([^\d]\S{1,64})/]); FW_REGEX_TEMPLATE.ROUTER_POLICY_IN_ACL = new Array( ['route-policy '], [/(\w+)[ ]+(permit|deny)[ ](\d+)/], [/^ if-match acl (\d+)/], [/^ apply output-interface ([^\d]\S{1,64})[ ]*([^\d]\S{0,64})/], [/^ apply ip-address next-hop (\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3})[ ]*(\d{0,3}\.*\d{0,3}\.*\d{0,3}\.*\d{0,3})/]); FW_REGEX_TEMPLATE.ROUTER_POLICY_DISPLAY_ACL = new Array(['\r\n'], [/[ ]*rule (\d+) (permit|deny) (service-set \S{1,} \((?:group|object|predefined)\)|\w+)[ ]+(?:source|)([ ]*address-set \S+ \((?:group|object)\)| \d+.\d+.\d+.\d+ [0-9\.]+|)[ ]*(?:destination|)([ ]*address-set \S+ \((?:group|object)\)| \d+.\d+.\d+.\d+ [0-9\.]+|)[ ]*(?:precedence|)([ ][a-z\-]+|)[ ]*(?:tos|)([ ][a-z0-9\-]+|)[ ]*(?:logging|)[ ]*(?:time-range|)([ ]*[\S]+|)[ ]*\((\d+) times matched\)/] ); FW_REGEX_TEMPLATE.ROUTER_POLICY_DISPLAY_GRIDLIST = [ ['\r\n policy-based-'], [/route :[ ]*([\S ]{1,19})/], [/\[ ]{1,5}(\d+)[ ]{1,5}(deny|permit)[ ]{1,5}:/], [/\r\n[ ]{4}if-match[ ]acl[ ](\d{4})/], [/\r\n[ ]{4}apply[ ]output-interface[ ](\S+(?:[ ]{1}\S*){0,1})/], [/\r\n[ ]{4}apply[ ]ip-address[ ]next-hop[ ](\d{1,3}.\d{1,3}.\d{1,3}.\d{1,3}(?:[ ]{1}\d{1,3}.\d{1,3}.\d{1,3}.\d{1,3}){0,1})/]]; FW_REGEX_TEMPLATE.ROUTER_POLICY_APPLYINTERFACEDATA = /^(?!HRP)[ ]*(\w[\w\-.\/]{1,64})/; FW_REGEX_TEMPLATE.ROUTER_DYNAMIC_OSPF_AREA_LIST = new Array( ['Area:'], [/^[ ]* (\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3})/], [/^[ ]*Authtype: ([\w-]*) Area flag:[ ]*(\w*)/]); FW_REGEX_TEMPLATE.ROUTER_DYNAMIC_OSPF_AREA_IP=/(\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3})/; FW_REGEX_TEMPLATE.ROUTER_DYNAMIC_OSPF_AREA_AUTHTYPE =/authentication-mode (simple|md5|hmac-md5)[ ]?(\d*)[ ]?(cipher|plain|)[ ]?(\S*)/; FW_REGEX_TEMPLATE.ROUTER_DYNAMIC_OSPF_AREA_AREATYPE =/(nssa|stub)[ ]?(default-route-advertise|)[ ]?(no-import-route|)[ ]?(no-summary|)/; FW_REGEX_TEMPLATE.ROUTER_DYNAMIC_OSPF_AREA_COST =/default-cost (\d+)/; FW_REGEX_TEMPLATE.ROUTER_DYNAMIC_OSPF_AREA_EDIT_MESSAGE = new Array( ['\r\n\r\n'], [/ Area (\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3})/], [/ Authtype: (?:\w*) Flags: <(\w*)[ ]*(\w*)[ ]*(\w*)[ ]*(\w*)[ ]*/]); FW_REGEX_TEMPLATE.ROUTER_DYNAMIC_OSPF_CONVERGE_LIST_ONE = new Array( ['\r\n #'], [/\s*area (\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3})/], [ /\s*abr-summary (\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3} \d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3})[ \S]*/, '+']); FW_REGEX_TEMPLATE.ROUTER_DYNAMIC_OSPF_CONVERGE_LIST_TWO = new Array( ['\r\n'], [/[ ]*(asbr)-summary (\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3})[ ]+(\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3})/]); FW_REGEX_TEMPLATE.ROUTER_DYNAMIC_OSPF_CONVERGE_LIST_THREE = new Array( ['\r\n'], [/[ ]*(asbr|abr)-summary (\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3})[ ]+(\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3})[ ]*(\w*[ ]*\-?\w*)/]); FW_REGEX_TEMPLATE.ROUTER_DYNAMIC_OSPF_CONVERGE_LIST_FOUR = new Array( ['\r\n'], [/\s*area (\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3})/], [/[ ]*(asbr|abr)-summary (\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3})[ ]+(\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3})[ ]*(not\-advertise)*[ ]*[tag]*[ ]*(\d*)[ ]*[cost]*[ ]*(\d*)/]); FW_REGEX_TEMPLATE.ROUTER_DYNAMIC_OSPF_CONVERGE_LIST_AREA=/area (\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3})/; FW_REGEX_TEMPLATE.ROUTER_DYNAMIC_OSPF_CONVERGE_LIST_OTHER=/(asbr|abr)-summary (\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3})[ ]+(\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3})[ ]*(not\-advertise|)[ ]*(?:tag (\d{1,10}))?[ ]*(?:cost (\d*))?/; FW_REGEX_TEMPLATE.ROUTER_DYNAMIC_OSPF_ENJOIN_INTERFACE = new Array(['silent'], [/^-interface[ ]+([^\d^\s]\S*)/]); FW_REGEX_TEMPLATE.ROUTER_DYNAMIC_OSPF_ENJOIN_INTERFACE_LIST = new Array( ['\r\n\r\n'], [/^(\S{1,64}) current state : [Administratively| ]*(UP|DOWN)[\S ]*$/]); FW_REGEX_TEMPLATE.ROUTER_DYNAMIC_OSPF_ENJOIN_INTERFACE_TYPE=/(\S+)[ ]*(?:[\S| ]+)[ ]*interface/; FW_REGEX_TEMPLATE.ROUTER_DYNAMIC_OSPF_INTERFACE_LIST = new Array( ['\r\n\r\n'], [/Interface:[ ](\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3})[ ]\(([^\d]\S{1,64}|)\)/], [/^\s*Cost:[ ]+(\d*)[ ]+State:[ ]+(\S{1,64})[ ]+Type:[ ]([^\d]\S{1,64}|)/], [/[ ]+Priority:[ ]+(\d+)/], [/[ ]+Timers:[ ]+Hello[ ]+(\d+)[ ]+,[ ]+Dead[ ]+(\d+)[ ]+,[ ]+Poll[ ]+(\d+)[ ]+,[ ]+Retransmit[ ]+(\d+)[ ]+,[ ]+Transmit[ ]+Delay[ ]+(\d+)/]); FW_REGEX_TEMPLATE.ROUTER_DYNAMIC_OSPF_INTERFACE_COMBO_LIST = new Array( ['\r\n'], [/^interface (\S+)/]); FW_REGEX_TEMPLATE.ROUTER_RIP_INTERFACE_LIST_DROPDOWN = new Array( ['\r\n\r\n'], [/^(GigabitEthernet\S*|Eth\S*|Virtual-Template\S*|LoopB\S*) current state : (?:UP|DOWN)/]); FW_REGEX_TEMPLATE.ROUTER_DYNAMIC_OSPF_INTERFACE_MD5_DISPLAY = new Array( ['#\r\n'], [/([ ]+ospf[ ]+mtu-enable)/] ); FW_REGEX_TEMPLATE.ROUTER_DYNAMIC_OSPF_GET_NETWORK_LIST = new Array(['\r\n '], [/\s*Area:\s+(\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3})/]); FW_REGEX_TEMPLATE.ROUTER_DYNAMIC_OSPF_NETWORK_LIST = new Array( ['\r\n area'], [/\s* (\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3})/], [/[ ]*authentication-mode[ ]+(simple|md5|hmac-md5)[ ]*(\d*)[ ]*\w*[ ]*(\S*)/], [ /network (\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3} \d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3})/, '+'], [/[ ]+(nssa|stub)[ ]*(default-route-advertise|)[ ]*(no-import-route|)[ ]*(no-summary|)/], [/[ ]+default-cost[ ]+(\d+)/]); FW_REGEX_TEMPLATE.ROUTER_DYNAMIC_OSPF_NETWORK_LIST_DISPLAY = new Array( ['area'], [/(\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3})/], [ /network (\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3} \d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3})/, '+']); FW_REGEX_TEMPLATE.ROUTER_DYNAMIC_OSPF_OSPF_GRID_LIST_VPN = new Array( ['\r\n'], [/^[ ]*ospf (\d{1,20})[ ]*(router-id[ ]+\d{1,3}.\d{1,3}.\d{1,3}.\d{1,3}|)[ ]+vpn-instance[ ]* (\w{1,19})/]); FW_REGEX_TEMPLATE.ROUTER_DYNAMIC_OSPF_OSPF_GRID_LIST_VPN_1 = new Array(['\r\nos'], [/^[ ]*pf (\d{1,20})/], [ /import-route (ospf \d{1,20})/, '+'] ); FW_REGEX_TEMPLATE.ROUTER_DYNAMIC_OSPF_OSPF_GRID_LIST = new Array(['Process'], [/^[ ]*(\d+) with Router ID (\d+\.\d+\.\d+\.\d+)/], [/^[.]* Multi-VPN-Instance is( not | )enabled/], [/^ Spf-schedule-interval: (\d+)/], [/^[ ]*Route Preference: (\d+)[ ]*/], [/^[ ]*Routing Preference: (\d+)[ ]*,[ ]*Preference Route Policy: ([\S ]*)/], [/^[ ]*ASE Route Preference: (\d+)[ ]*(?:,[ ]*ASE Preference Route Policy: ([\S ]*))?/], [/Nssa Area Count: (\d+)$/]); FW_REGEX_TEMPLATE.ROUTER_DYNAMIC_OSPF_OSPF_GRID_LIST_ID1=/ospf (\d{1,5})[ ]?(?:router-id[ ]+\d{1,3}.\d{1,3}.\d{1,3}.\d{1,3})?[ ]?(?:vpn-instance[ ]*(\S*))?/; FW_REGEX_TEMPLATE.ROUTER_DYNAMIC_OSPF_OSPF_GRID_LIST_ID2=/(\d{1,5}) with Router ID (\d{1,3}.\d{1,3}.\d{1,3}.\d{1,3})/; FW_REGEX_TEMPLATE.ROUTER_DYNAMIC_OSPF_OSPF_GRID_LIST_SPF=/Spf-schedule-interval: (\d+)/; FW_REGEX_TEMPLATE.ROUTER_DYNAMIC_OSPF_OSPF_GRID_LIST_INNER=/\r\n (?:Route|Routing) Preference: (\d+)(?: , Preference Route Policy: ([\S ]*))?/; FW_REGEX_TEMPLATE.ROUTER_DYNAMIC_OSPF_OSPF_GRID_LIST_ASE=/\r\n ASE Route Preference: (\d+)(?: ,[ ]*ASE Preference Route Policy: ([\S ]*))?/; FW_REGEX_TEMPLATE.ROUTER_DYNAMIC_OSPF_OSPF_SAME=/Multi-VPN-Instance is (not|)[ ]?enabled/; FW_REGEX_TEMPLATE.ROUTER_DYNAMIC_OSPF_OSPF_DISPLAY_ONE=new Array( ['\r\n'], [/ospf (\d{1,5})[ ]*(?:router-id \d{1,3}.\d{1,3}.\d{1,3}.\d{1,3}|)[ ]*(?:vpn-instance (\S*)|)/]); FW_REGEX_TEMPLATE.ROUTER_DYNAMIC_OSPF_OSPF_ESPECIAL_CHARACTERS=[/\\/g,/\_/g,/\$/g,/\+/g,/\(/g,/\)/g,/\[/g,/\]/g,/\{/g,/\}/g,/\^/g,/\|/g,/\*/g,/\./g]; FW_REGEX_TEMPLATE.ROUTER_DYNAMIC_OSPF_DEFAULT_ROUTE = /\r\n default-route-advertise(?: |)(always|)/; FW_REGEX_TEMPLATE.ROUTER_DYNAMIC_OSPF_OSPF_DOWN_COMMAND = new Array([], [/^ Mac-binding is (Enabled|Disabled)[ ]*$/]); FW_REGEX_TEMPLATE.ROUTER_DYNAMIC_OSPF_ROUTE_FILTER_MESSAGE = new Array( ['\r\n'], [/^[ ]*filter-policy[ ]+(?:(?:ip-prefix ("[^"].*"|\S+))|(\d*))[ ]*(import|export)[ ]*(\w*)[ ]*(\d*)/]); FW_REGEX_TEMPLATE.ROUTER_DYNAMIC_OSPF_ROUTE_FILTER_ACL_MESSAGE_DISPLAY = new Array( ['split_riproutefilter'], [/[ ]+(\d*)[ ]+(\S*)[ ]+(import|export)[ ]+(\S+)[ ]*(\S* *\d*)[ ]+\r\n[ ]+rule (\d+) (permit|deny)[ ]+(?:source|)([ ]*address-set \S+ \((?:group|object)\)| \d+.\d+.\d+.\d+ [0-9\.]+|)[ ]*(?:logging|)[ ]*(?:time-range|)([ ]*[\S]+|)[ ]*\(\d+ times matched\)/]); FW_REGEX_TEMPLATE.ROUTER_DYNAMIC_OSPF_ROUTE_FILTER_ACL_LIST_MESSAGE_DISPLAY = new Array( ['\r\n'], [/[ ]*Basic[ ]+ACL[ ]+(\d+)/], [/[ ]*rule (\d+) (permit|deny)[ ]+(?:source|)([ ]*address-set \S+ \((?:group|object)\)| \d+.\d+.\d+.\d+ [0-9\.]+|)[ ]*(?:logging|)[ ]*(?:time-range|)([ ]*[\S]+|)/] ); FW_REGEX_TEMPLATE.ROUTER_DYNAMIC_OSPF_ROUTE_FILTER_DOWN_COMMAND = new Array([], [/^ Mac-binding is (Enabled|Disabled)[ ]*$/]); FW_REGEX_TEMPLATE.ROUTER_DYNAMIC_OSPF_ROUTE_IMPORT_GRID_LIST = new Array( ['\r\n'], [/[\s]+import-route[ ]+(\w+-*\w+)[ ]*(\d*)[ cost ]*(\d*)[ type ]*(\d*)[ tag ]*(\d*)[ ]*(?:(?:route-policy ([ \S]+))|)/]); FW_REGEX_TEMPLATE.ROUTER_DYNAMIC_OSPF_GET_Router_Policy_LIST = new Array(['\r\n '], [/Route-policy : ([\S| ]+)/]); FW_REGEX_TEMPLATE.ROUTER_DYNAMIC_OSPF_VLANK_GRID_LIST = new Array( ['\r\n\r\n\ '], [/^\s*Virtual-link[ ]Neighbor-id[ ]+->[ ]+(\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}),[ ]Neighbor-State:[ ]+(\S*)/], [/^\s*Transit[ ]+Area:[ ]+(\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3})/], [/^\s+Timers:[ ]+Hello[ ]+(\d+)[ ],[ ]Dead[ ]+(\d+)[ ],[ ]Retransmit[ ]+(\d+)[ ],[ ]+Transmit[ ]+Delay[ ]+(\d+)/]); FW_REGEX_TEMPLATE.ROUTER_DYNAMIC_OSPF_GET_ROUTE_POLICY_ADD=new Array(['\r\n '],[/Route-policy[ ]+:[ ]+([\S ]+)/]); FW_REGEX_TEMPLATE.ROUTER_DYNAMIC_OSPF_VLANK_MD5=/(md5|hmac-md5)/; FW_REGEX_TEMPLATE.ROUTER_DYNAMIC_OSPF_VLANK_MD5_PWD=/(md5|hmac-md5)[ ]*(\d+)?[ ]*(\S+)?[ ]*(\S+)?/; FW_REGEX_TEMPLATE.ROUTER_DYNAMIC_OSPF_VLANK_SIMPLE_PWD=/(simple)[ ](\S+)[ ](\S+)/; FW_REGEX_TEMPLATE.ROUTER_DYNAMIC_OSPF_VLANK_NULL=/(authentication-null)/; FW_REGEX_TEMPLATE.ROUTER_DYNAMIC_OSPF_VLANK_PARSE_ALL = /(\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3})/; FW_REGEX_TEMPLATE.ROUTER_DYNAMIC_OSPF_VLANK_PARSE_SIMPLE = /simple \S+/g; FW_REGEX_TEMPLATE.ROUTER_DYNAMIC_OSPF_VLANK_PARSE_MD5 = /md5[ ]+\d*[ ]+\S*/g; FW_REGEX_TEMPLATE.ROUTER_DYNAMIC_RIP_INTERFACE_GRID_LIST = new Array( ['interf'], [/^ace[ ]+(\S+)[ ]*/], [/rip[ ]+authentication-mode[ ]+(\w+)[ ]+(\w*)[ ]*(\S{0,24})[ ]*(\d{0,3})[ ]*/], [/(undo[ ]+rip[ ]+output)[ ]*/], [/(undo[ ]+rip[ ]+input)[ ]*/], [/rip[ ]+metricin[ ]+(\d+)[ ]*/], [/rip[ ]+metricout[ ]+(\d+)[ ]*/], [/rip (poison-reverse)[ ]*/], [/rip[ ]+(split-horizon)/], [/rip[ ]+version[ ]+(\d{0,3})[ ]+(multicast|broadcast|)[ ]*/], [/rip pkt-transmit (?:interval (\d+)|)(?:[ ]*number (\d+)|)/] ); FW_REGEX_TEMPLATE.ROUTER_DYNAMIC_RIP_INTERFACE_AUTH = /rip[ ]+authentication-mode[ ]+(\w+)[ ]+(\w*)[ ]*(\S{0,32})[ ]*(\d{0,3})[ ]*/; FW_REGEX_TEMPLATE.ROUTER_DYNAMIC_RIP_INTERFACE_PKT = /rip pkt-transmit (?:interval (\d+)|)(?:[ ]*number (\d+)|)/; FW_REGEX_TEMPLATE.ROUTER_DYNAMIC_RIP_INTERFACE_NAME = /([ \S]*)\(\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}\)/; FW_REGEX_TEMPLATE.ROUTER_DYNAMIC_RIP_INTERFACE_VERSION = /Protocol\s*: (RIPv1|RIPv2)[ ]*(Multicast|Broadcast|)/; FW_REGEX_TEMPLATE.ROUTER_DYNAMIC_RIP_INTERFACE_AUTH_GRID = /Authentication type: (\S+)/; FW_REGEX_TEMPLATE.ROUTER_DYNAMIC_RIP_INTERFACE_METRICIN = /Metricin:\s*(\d*)\s*Metricout:\s*(\d*)/; FW_REGEX_TEMPLATE.ROUTER_DYNAMIC_RIP_INTERFACE_PUT = /Input:\s*(Enabled|Disabled)\s*Output:\s*(Enabled|Disabled)/; FW_REGEX_TEMPLATE.ROUTER_DYNAMIC_RIP_INTERFACE_REVERSE = /Poison-reverse\s*:\s*(Enabled|Disabled)/; FW_REGEX_TEMPLATE.ROUTER_DYNAMIC_RIP_INTERFACE_SPLIT = /Split-Horizon\s*:\s*(Enabled|Disabled)/; FW_REGEX_TEMPLATE.ROUTER_DYNAMIC_RIP_INTERFACE_LIST = new Array(['\n'], [/^(\w+\/*\w*\/*-*\w*)[ ]+current[ ]+state[ ]+:[ ]+\w+[ ]+[ ]*/]); FW_REGEX_TEMPLATE.ROUTER_DYNAMIC_RIP_INTERFACE_DOWN_COMMAND = new Array([], [/^ Mac-binding is (Enabled|Disabled)[ ]*$/]); FW_REGEX_TEMPLATE.ROUTER_DYNAMIC_RIP_NEIGHBOR_GRID_LIST = new Array(['\r\n'], [/[ ]*peer[ ]*(\d{0,3}\.*\d{0,3}\.*\d{0,3}\.*\d{0,3})/]); FW_REGEX_TEMPLATE.ROUTER_DYNAMIC_RIP_NEIGHBOR_DOWN_COMMAND = new Array([], [/^ Mac-binding is (Enabled|Disabled)[ ]*$/]); FW_REGEX_TEMPLATE.ROUTER_DYNAMIC_RIP_NETWORK_GRID_LIST = new Array(['\r\n'], [/[ ]*network[ ]*(\d{0,3}\.*\d{0,3}\.*\d{0,3}\.*\d{0,3})/]); FW_REGEX_TEMPLATE.ROUTER_DYNAMIC_RIP_NETWORK_DOWN_COMMAND = new Array([], [/^ Mac-binding is (Enabled|Disabled)[ ]*$/]); FW_REGEX_TEMPLATE.ROUTER_DYNAMIC_RIP_RIP_CHECK_RIP = new Array(['\n'], [/[ ]+RIP[ ]+is[ ]+turned[ ]+(on|off)/]); FW_REGEX_TEMPLATE.ROUTER_DYNAMIC_RIP_RIP_PANEL_MESSAGE = new Array( ['RIP is turned'], [/Checkzero[ ]+is[ ]+(\w+)[ ]+Default[ ]+cost[ ]+:[ ]+(\d*)/], [/Host-route[ ]+is[ ]+(on|off)/], [/Summary[ ]+is[ ]+(on|off)[ ]+Preference[ ]+:[ ]+(\d*)/], [/Period[ ]+update[ ]+timer[ ]+:[ ]+(\d*)/], [/Timeout[ ]+timer[ ]+:[ ]+(\d*)/]); FW_REGEX_TEMPLATE.ROUTER_DYNAMIC_RIP_RIP_DOWN_COMMAND = new Array([], [/^ Mac-binding is (Enabled|Disabled)[ ]*$/]); FW_REGEX_TEMPLATE.ROUTER_DYNAMIC_RIP_ROUTE_FILTER_DOWN_COMMAND = new Array([], [/^ Mac-binding is (Enabled|Disabled)[ ]*$/]); FW_REGEX_TEMPLATE.ROUTER_DYNAMIC_RIP_ROUTE_FILTER_ACL=/filter-policy (\d+)/; FW_REGEX_TEMPLATE.ROUTER_DYNAMIC_RIP_ROUTE_FILTER_DIS_THIS = new Array( ['\r\n'], [/^[ ]+filter-policy[ ]+(\d+)[ ]+(import|export)[ ]*(\w*[-]*\w*[ ]*\d*)/]); FW_REGEX_TEMPLATE.ROUTER_DYNAMIC_RIP_ROUTE_FILTER_DISPLAY_ACL = new Array( ['split_riproutefilter'], [/[ ]+(\S+)[ ]+(\S+)[ ]*(\S* *\d*)[ ]+\r\n[ ]+rule (\d+) (permit|deny) (service-set \S{1,} \((?:group|object|predefined)\)|\w+)[ ]+(?:source|)([ ]*address-set \S+ \((?:group|object)\)| \d+.\d+.\d+.\d+ [0-9\.]+|)[ ]*(?:destination|)([ ]*address-set \S+ \((?:group|object)\)| \d+.\d+.\d+.\d+ [0-9\.]+|)[ ]*(?:precedence|)([ ][a-z\-]+|)[ ]*(?:tos|)([ ][a-z0-9\-]+|)[ ]*(?:logging|)[ ]*(?:time-range|)([ ]*[\S]+|)[ ]*\((\d+) times matched\)/]); FW_REGEX_TEMPLATE.ROUTER_DYNAMIC_RIP_ROUTE_FILTER_DISPLAY_ACL_LIST = new Array( ['\r\n'], [/[ ]*Advanced[ ]+ACL[ ]+(\d+)/], [/[ ]*rule (\d+) (permit|deny) (service-set \S{1,} \((?:group|object|predefined)\)|\w+)[ ]+(?:source|)([ ]*address-set \S+ \((?:group|object)\)| \d+.\d+.\d+.\d+ [0-9\.]+|)[ ]*(?:destination|)([ ]*address-set \S+ \((?:group|object)\)| \d+.\d+.\d+.\d+ [0-9\.]+|)[ ]*(?:precedence|)([ ][a-z\-]+|)[ ]*(?:tos|)([ ][a-z0-9\-]+|)[ ]*(?:logging|)[ ]*(?:time-range|)([ ]*[\S]+|)[ ]*\((\d+) times matched\)/]); FW_REGEX_TEMPLATE.ROUTER_DYNAMIC_RIP_ROUTE_IMPORT_GRID_LIST = new Array( ['\n'], [/^[ ]+import-route[ ]+(\S{1,9})[ ]*(\d{0,5})[ ]*(?:cost|)[ ]*(\d{0,19}|)[ ]*/]); FW_REGEX_TEMPLATE.ROUTER_DYNAMIC_RIP_ROUTE_IMPORT_DOWN_COMMAND = new Array([], [/^ Mac-binding is (Enabled|Disabled)[ ]*$/]); FW_REGEX_TEMPLATE.ROUTER_TABLE_GRID_LIST = new Array( ['\r\n'], [/^(\d{0,3}\.*\d{0,3}\.*\d{0,3}\.*\d{0,3}\/*\d{0,2})[ ]*(\S{0,64})[ ]*(\S{0,64})[ ]*(\S{0,64})[ ]+(\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3})[ ]+(\S{1,64})/]); FW_REGEX_TEMPLATE.ROUTER_TABLE_EQUALROUTE = /load weight (enable)/; FW_REGEX_TEMPLATE.FIREWALL_ADDRESS_QUARYADDRS1 = new Array( ["\r\nAddress-set: "], [/^(\S+)/], [/^Description: ([\S ]+)$/], [/^ address (\d{1,4}) (?:range (\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3} \d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3})(?: description (.*)|\s*)|(\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3} (?:mask (?:[3][0-2]|[1-2][0-9]|[1-9]|)|)(?:\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}|0|))(?: description (.*)|\s*))$/,'+'] ); FW_REGEX_TEMPLATE.FIREWALL_ADDRESS_QUARYGRPAll = new Array( ["Address-set: "], [/^(\S+)/], [/^Description: ([\S ]+)$/], [ /^ address (\d{1,4}) (?:range (\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3} \d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3})[ ]*(.*)|(\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3} (?:mask (?:[3][0-2]|[1-2][0-9]|[1-9]|)|)(?:\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}|0|))[ ](.*)|address-set (\S+)[ ](.*))$/, '+'] ); FW_REGEX_TEMPLATE.FIREWALL_ADDRESS_ADDRDISTH = new Array(["#\r\n"], [/^ip address-set (\S+)[ ]*$/], [/^ description ([\S ]+)[ ]*$/], [ /^ address (\d{1,4}) (\S+) (\S+)[ ]*(["]?[\S ]*)[ ]*$/, '+']); FW_REGEX_TEMPLATE.FIREWALL_ADDRESS_QUARYADD = new Array(["Items"], [/^(\S+)$/], [/^ description ([\S ]*)$/], [ /^ address (\d{1,4}) (\S+) (\S+)[ ]*([\S| ]*)[ ]*$/, '+']); FW_REGEX_TEMPLATE.ROUTER_LDP_INTERFACE_LIST = new Array(['\r\n'],[/[ ]*(\S+)[ ]+(\S+)[ ]+\S+[ ]+(\S+)[ ]+(\S+)/]); FW_REGEX_TEMPLATE.ROUTER_MPLS_INTERFACE_LIST = new Array(['No '], [/Interface[ ]*:\s*(\S+)/], [/Status[ ]*:\s*(\S+)/], [/Static LSPCount[ ]*:\s*(\d+)/], [/MPLS Config MTU[ ]*:\s*(\d+|-)/], [/Interface MTU[ ]*:\s*(\d+)/], [/MPLS Effective MTU[ ]*:\s*(\d+)/]); FW_REGEX_TEMPLATE.ROUTER_MPLS_CONFIG_VPNINSTANCE =new Array( ['\r\n'],[/[ ]+(\S+)/] ); FW_REGEX_TEMPLATE.ROUTER_LDP_CONFIG_MTU_SIGNAL =/MTU Signaling[ ]+:[ ]+(\S*)/; FW_REGEX_TEMPLATE.ROUTER_LDP_CONFIG_LSR_ID =/LSR ID[ ]+:[ ]+(\S*)/; FW_REGEX_TEMPLATE.ROUTER_LDP_CONFIG_HOP_COUNT = /Hop Count Limit[ ]+:[ ]+(\S*)[ ]+Path Vector Limit[ ]+:[ ]+(\S*)/; FW_REGEX_TEMPLATE.ROUTER_LDP_CONFIG_LOOP_DETECT = /Loop Detection[ ]+:[ ]+(\S*)/; FW_REGEX_TEMPLATE.ROUTER_MPLS_CONFIG_ENABLE = /(mpls)[ ]*/; FW_REGEX_TEMPLATE.ROUTER_MPLS_CONFIG_LSRID = /mpls lsr-id[ ]*(\S*)/; FW_REGEX_TEMPLATE.ROUTER_MPLS_CONFIG_LSPTRIGGER = /lsp-trigger[ ]*(\S*)[ ]*("[^"].*"|\S+)?/; FW_REGEX_TEMPLATE.ROUTER_MPLS_CONFIG_LABEL_ADVERTISE =/label advertise[ ]*(\S*)/ ; FW_REGEX_TEMPLATE.ROUTER_MPLS_CONFIG_TTL_VPN = /(ttl propagate vpn)[ ]*/; FW_REGEX_TEMPLATE.ROUTER_MPLS_CONFIG_TTL_PUBLIC = /(undo ttl propagate public)[ ]*/; FW_REGEX_TEMPLATE.ROUTER_MPLS_CONFIG_TTL_POP = /(undo ttl expiration pop)[ ]*/; FW_REGEX_TEMPLATE.ROUTER_MPLS_LSP_COUNT_INFO = new Array(['\r\n'],[/(\S+)[ ]+(\S+)[ ]+(\S+)[ ]+(\S*)/]); FW_REGEX_TEMPLATE.ROUTER_LDP_INTERFACE_HELLO_TIMER=/[ ]*Configured Hello Timer[ ]+:[ ]*(\d+)[ ]*Sec/; FW_REGEX_TEMPLATE.ROUTER_LDP_INTERFACE_KEEPALIVE_TIMER=/[ ]*Configured Keepalive Timer[ ]*:[ ]*(\d+)[ ]*Sec/; FW_REGEX_TEMPLATE.ROUTER_LDP_INTERFACE_DELAY_TIMER=/[ ]*Configured Delay Timer[ ]*:[ ]*(\d+)[ ]*Sec/; FW_REGEX_TEMPLATE.ROUTER_LDP_INTERFACE_TRANSPORT_ADDR=/[ ]+Transport Address[ ]*:[ ]*(\S+)/ ; FW_REGEX_TEMPLATE.ROUTER_LDP_INTERFACE_ISIS=/[ ]*(\d+)[ ]+(\d+)/; FW_REGEX_TEMPLATE.ROUTER_LDP_INTERFACE_OSPF=/[ ]*HoldDown Timer:[ ]*(\d+)[ ]+HoldMaxCost Timer:[ ]*(\d+)/; FW_REGEX_TEMPLATE.ROUTER_LDP_OSPF_SYNC=/(ospf ldp-sync)/; FW_REGEX_TEMPLATE.ROUTER_LDP_OSPF_HOLDDOWN=/ospf timer ldp-sync hold-down[ ]*(\d+)/; FW_REGEX_TEMPLATE.ROUTER_LDP_OSPF_HOLDMAXCOST=/ospf timer ldp-sync hold-max-cost[ ]*(\d+)/; FW_REGEX_TEMPLATE.ROUTER_LDP_MD5_PEER_LIST=new Array(['\r\n'],[/[ ]*md5-password[ ]+(\S+)[ ]+(\S+)[ ]+(\S+)/]); FW_REGEX_TEMPLATE.ROUTER_LDP_INTERFACE_NAME=/([\S ]+) current state/; FW_REGEX_TEMPLATE.ROUTER_MPLS_INFO_LSP_SPLIT=/Statistics for Lsp IN : /; FW_REGEX_TEMPLATE.ROUTER_MPLS_INFO_INTERFACE_SPLIT=/Statistics for Interface IN /; FW_REGEX_TEMPLATE.ROUTER_MPLS_INFO_IO_OCTETS=/Octets\s+:\s(\d)/ig; FW_REGEX_TEMPLATE.ROUTER_MPLS_INFO_IO_PACKETS=/Packets\s+:\s(\d)/ig; FW_REGEX_TEMPLATE.ROUTER_MPLS_INFO_IO_ERRORS=/Errors\s+:\s(\d)/ig; FW_REGEX_TEMPLATE.ROUTER_MPLS_INFO_IO_DOWNS=/Down\s+:\s(\d)/ig; FW_REGEX_TEMPLATE.ROUTER_MPLS_INFO_IO_DISABLES=/Disables\s+:\s(\d)/ig; FW_REGEX_TEMPLATE.ROUTER_MPLS_INFO_LSP=/DynamicLsp\/(\S+)/; FW_REGEX_TEMPLATE.ROUTER_MPLS_INFO_INTERFACE=/Incoming Interface\s+(\S+)/; FW_REGEX_TEMPLATE.ROUTER_MPLS_INFO_OCTET=/Octets\s+:\s(\d)/; FW_REGEX_TEMPLATE.ROUTER_MPLS_INFO_PACKET=/Packets\s+:\s(\d)/; FW_REGEX_TEMPLATE.ROUTER_MPLS_INFO_ERROR=/Errors\s+:\s(\d)/; FW_REGEX_TEMPLATE.ROUTER_MPLS_INFO_DOWN=/Down\s+:\s(\d)/; FW_REGEX_TEMPLATE.ROUTER_MPLS_INFO_DISABLE=/Disables\s+:\s(\d)/; FW_REGEX_TEMPLATE.ROUTER_MPLS_INTERFACE_REPLACE=/\[.*\]/ig; FW_REGEX_TEMPLATE.ROUTER_LDP_INTERFACE_LISTNAME=/Interface[\S*\s*]*/; FW_REGEX_TEMPLATE.ROUTER_LDP_INTERFACE_FINDINTER=/^\S+/; FW_REGEX_TEMPLATE.ROUTER_INTERFACE_MPLSMTU=/<(\d+)-(\d+)>/; FW_REGEX_TEMPLATE.ROUTER_INTERFACE_MTU=/The Maximum Transmit Unit is (\d+) bytes.*/; FW_REGEX_TEMPLATE.ROUTER_QOS_PQL_RULEID=new Array(['\r\n'],[/[ ]*(\d+)[ ]+/]); FW_REGEX_TEMPLATE.ROUTER_QOS_QUEUE_INF=new Array([/^interface/],[/[ ]+(\S+)/],[/qos (pq|cq) (pql|cql)[ ]+(\d+)/]); FW_REGEX_TEMPLATE.ROUTER_QOS_QUEUE_INF=/qos (pq|cq) (pql|cql)[ ]+(\d+)/; FW_REGEX_TEMPLATE.ROUTER_QOS_QUEUE_INFNAME = /[ ]+(\S+)/; FW_REGEX_TEMPLATE.ROUTER_QOS_LR_INF=/qos lr cir[ ]+(\d+)[ ]+cbs[ ]+(\d+)/; FW_REGEX_TEMPLATE.ROUTE_SPLIT_PAGING_INDEX = /[ ]+(\d{1,})[ ]+(\d{1,}).*/; FW_REGEX_TEMPLATE.ROUTE_QOS_PQL_LIST = new Array(['\r\n'],[/(\d+)[ ]+(\S+)[ ]+(DefaultQueue|Length|Protocol[ ]\S+[ ]\S+)[ ]*(\S+|)/]); FW_REGEX_TEMPLATE.ROUTE_QOS_CQL_LIST = new Array(['\r\n'],[/(\d+)[ ]+(\S+)[ ]+(DefaultQueue|Serving|Length|Protocol[ ]\S+[ ]\S+)[ ]*(\S+|)/]); FW_REGEX_TEMPLATE.ROUTE_QOS_BEHAVIOR_REMAR = /remark[ ](\S+)[ ](\S+)/; FW_REGEX_TEMPLATE.ROUTE_QOS_BEHAVIOR_CAR = /car[ ]cir[ ](\d+)(?: cbs)*[ ]{0,1}(\d*)/; FW_REGEX_TEMPLATE.ROUTE_QOS_BEHAVIOR_QUEUE = /queue[ ](ef|af|wfq)(?:[ ](bandwidth|queue-number)[ ](\d+|pct)){0,1}[ ]{0,1}(?:cbs[ ]){0,1}(\d*)/; FW_REGEX_TEMPLATE.SYSTEM_LLDP_GLOBAL_CONFIG = { LldpEnable : [/^[ ]*lldp[ ]*(enable)$/], LldpMsgTxInterval : [/^[ ]*lldp message-transmission interval[ ]*([\d]+)$/], LldpMsgTxHoldMultiplier : [/^[ ]*lldp message-transmission hold-multiplier[ ]*([\d]+)$/], LldpReinitDelay : [/^[ ]*lldp restart-delay[ ]*([\d]+)$/], LldpTxDelay : [/^[ ]*lldp message-transmission transmit-delay[ ]*([\d]+)$/], LldpNotificationInterval : [/^[ ]*lldp notification-interval[ ]*([\d]+)/], LldpManagementAddress : [/^[ ]*lldp management-address[ ]*([\S]+)$/], LldpMsgTxFast : [/^[ ]*lldp message-transmission fast[ ]*([\d]+)$/], LldpCheckChangeInterval : [/^[ ]*lldp check-change-interval[ ]*([\d]+)$/] } FW_REGEX_TEMPLATE.SYSTEM_LLDP_DISLLDPLOCAL = new Array(['\r\n\r\n'],[/^[ ]*Interface:[ ]*([\S]+)/], [/^[ ]*PortId Subtype:[ ]*(\S[\S| ]+)/], [/^[ ]*PortId:[ ]*(\S[\S| ]+)/], [/^[ ]*PortDesc:[ ]*(\S[\S| ]+)/], [/^[ ]*LLDP Running Status:[ ]*(\S[\S| ]+)/], [/^[ ]*Neighbors Total:[ ]*([\d]+)/]); FW_REGEX_TEMPLATE.SYSTEM_LLDP_DISTHISINTERFACE = { Interface : [/^[ ]*Interface[ ]*([\S]+)$/], state : [/^[ ]*lldp state[ ]*(\S[\S| ]+)$/], notification : [/^[ ]*lldp notification-interval[ ]*(enable)$/], tlv : [/^[ ]*lldp tlv-enable[ ]*([\S]+[ ]*[\S]+)$/,'+']}; FW_REGEX_TEMPLATE.SYSTEM_LLDP_DISLLDPSTATISTICS = new Array(['\r\nStatistics'],[/^ for[ ]*([\S]+):/], [/^[ ]*Transmitted Frames Total:[ ]*([\d]+)/], [/^[ ]*Received Frames Total:[ ]*([\d]+)/], [/^[ ]*Frames Discarded Total:[ ]*([\d]+)/], [/^[ ]*Frames Error Total:[ ]*([\d]+)/], [/^[ ]*TLVs Discarded Total:[ ]*([\d]+)/], [/^[ ]*TLVs Unrecognized Total:[ ]*([\d]+)/], [/^[ ]*Neighbors Expired Total:[ ]*([\d]+)/]); FW_REGEX_TEMPLATE.SYSTEM_LLDP_DISLLDPNEIGHBOR_DETAIL = new Array(['\r\n ChassisIdSubt'], [/^[ ]*ype:[ ]*(\S[\S| ]+)$/], [/^[ ]*ChasssisId:[ ]*(\S[\S| ]+)$/], [/^[ ]*PortIdSubtype:[ ]*(\S[\S| ]+)$/], [/^[ ]*PortId:[ ]*(\S[\S| ]+)$/], [/^[ ]*TimeToLive:[ ]*(\S[\S| ]+)$/], [/^[ ]*PortDesc:[ ]*(\S[\S| ]+)$/], [/^[ ]*SysName:[ ]*(\S[\S| ]+)$/], [/^[ ]*SysDesc:[ ]*(\S[\S| ]+)$/], [/^[ ]*SysCapSupported:[ ]*(\S[\S| ]+)$/], [/^[ ]*SysCapEnabled:[ ]*(\S[\S| ]+)$/], [/^[ ]*Management Address:[ ]*(\S[\S| ]+)$/], [/^[ ]*Expired Time:[ ]*(\S[\S| ]+)$/]); FW_REGEX_TEMPLATE.SYSTEM_LLDP_DISLLDPNEIGHBOR = new Array(['\r\nInterface'],[/^[ ]*(\S[\S| ]+\S) has [\d]+ Neighbors:/], [/^([ ]*ChassisIdSubtype:[ ]*\S[\S| ]+)$/]); FW_REGEX_TEMPLATE.SYSTEM_LLDP_DISINTERFACE = new Array(['\r\n'],[/^[ ]+((?:Ethernet|GigabitEthernet)[\d]{1,2}\/[\d]{1,2}\/[\d]{1,2})[ ]+/]); FW_REGEX_TEMPLATE.FIREWALL_TIMERANGE_FORMAT = /^(2[0-3]|[0-1][0-9]):[0-5][0-9]$/; FW_REGEX_TEMPLATE.FIREWALL_TIMERANGE_QUARYALLTRS1 = /(\S+) \(/; FW_REGEX_TEMPLATE.FIREWALL_TIMERANGE_QUARYALLTRS2 = /(\d+:\d+\s*\d+\/\d+\/\d+|\d+:\d+)\s*to(\s*tomorrow|)\s*(\d+:\d+\s*\d+\/\d+\/\d+|\d+:\d+)[ ]*([\S ]+|)/; FW_REGEX_TEMPLATE.FIREWALL_TIMERANGE_QUARYALLTRS = new Array(["Time-range : "], [/^(\S+) \( \S+ \)[ ]*$/], [/^ (\S{5}) to (\S{5}) ([\S| ]+)[ ]*$/, '+'], [ /^ from (\S+[ ]\S+) to (\S+[ ]\S+)[ ]*$/, '+']); FW_REGEX_TEMPLATE.FIREWALL_POLICY_DISADDRESSSET = new Array(['\r\n\r\n'], [/^Address-set: (\S+)[ ]*$/], [/^Type: (object|group)\s*$/]); FW_REGEX_TEMPLATE.FIREWALL_POLICY_DISINTERVAL = new Array(["Time-range : "], [/^(\S+) \( \S+ \)[ ]*$/], [/^ (\S{5}) to (\S{5}) ([\S| ]+)[ ]*$/, '+'], [ /^ from (\S+[ ]\S+) to (\S+[ ]\S+)[ ]*$/, '+']); FW_REGEX_TEMPLATE.FIREWALL_PUBLIC_SPACE = /[ ]/g; FW_REGEX_TEMPLATE.USERDEFINDESERVICE = /Basic ACL[ ]+(\d+),[ ]+0[ ]+rule/; FW_REGEX_TEMPLATE.SERVICETPL0 = new Array(['\r\n'], [/ip service-set (\S+) protocol (\S+)/]); FW_REGEX_TEMPLATE.SERVICETPL1 = new Array( ['*'], [/\S+[ ]+\d+[ ]+(\d+)[ ]+user[ ]+defined\r\n[ ]+rule (\d{1,}) permit (source |)(address-set \S{1,} |[\d{1,}\. ]+ | |)(time-range \S{1,}| |)(logging | |)\(/]); FW_REGEX_TEMPLATE.FIREWALL_MAP1 = /\S+[ ]+\d+[ ]+(\d+)[ ]+/; FW_REGEX_TEMPLATE.FIREWALL_MAP2 = /(\S+)[ ]+(\d+)[ ]+(\d+)[ ]+user[ ]+defined/; FW_REGEX_TEMPLATE.FIREWALL_MAP3 = /rule (\d{1,}) (permit|deny) (?:source |)((?:any|\d+\.\d+\.\d+\.\d+ (?:\d+\.\d+\.\d+\.\d+|0)|address-set \S+ \((?:group|object)\)) |)(?:logging |)(?:time-range |)(\S+|)[ ]*\(/; FW_REGEX_TEMPLATE.FIREWALL_SERVICE_SERVICEGROUP_GET = /(\S+) protocol (\S+)/; FW_REGEX_TEMPLATE.FIREWALL_SERVICE_SERVICEGROUP = new Array(['\r\n\r\n'], [/^\s*Service-set Name:[ ]*([a-zA-Z0-9]{1,19}).*$/], [/Protocol: (\S+)/]); FW_REGEX_TEMPLATE.FIREWALL_SERVICE_SEARCHSERVICE1 = new Array( [], [/^ description (\S*)$/], [ /^ service (\d*) source-port range (\d*) (\d*) destination-port range (\d*) (\d*)[ ]*(\S*)$/, "+"]); FW_REGEX_TEMPLATE.FIREWALL_SERVICE_SEARCHSERVICE2 = new Array([], [/^ description (\S*)$/], [ /^ service (\d*) icmp-type (\d*) (\d*)[ ]*(\S*)$/, "+"]); FW_REGEX_TEMPLATE.FIREWALL_SERVICE_PORTMAPPING = new Array(['\r\n'], [/^[ ]+([\S]+)[ ]+([\d]+)[ ]+([\d]+| )[ ]+([\S| ]*)/]); FW_REGEX_TEMPLATE.SERVICE_PORTMAPPING = new Array(['\r\n'], [/(\S+)[ ]+(\d+)[ ]+(\d+)[ ]+user defined/]); FW_REGEX_TEMPLATE.FIREWALL_SERVICE_ACLINFOPARSETPL = new Array( ['\r\n'], [/rule (\d{1,}) permit (source |)(address-set \S{1,} |[\d{1,}\. ]+ | |)(time-range \S{1,}| |)(logging | |)\(/]); FW_REGEX_TEMPLATE.FIREWALL_SERVICE_GETACLNUMPARSETPL = new Array([], [/^\s*The ACL (\d+) is unused/]); FW_REGEX_TEMPLATE.FIREWALL_NATADDRESSPOOL_QUARY1 = /nat address-group \d+ (\S+) \d+.\d+.\d+.\d+ \d+.\d+.\d+.\d+/; FW_REGEX_TEMPLATE.FIREWALL_NATADDRESSPOOL_QUARYNGPS = new Array( ['\r\n\r\n'], [/number[ ]+:[ ]+(\d+)[ ]+name[ ]+:[ ]+(\S+)/], [/startaddr[ ]+:[ ]+(\S+)[ ]+endaddr[ ]+:[ ]+(\S+)/], [/reference[ ]+:[ ]+(\d+)[ ]+vrrp[ ]+:[ ]+(\S+)/], [/vpninstance[ ]+:[ ]+(\S+)/]); FW_REGEX_TEMPLATE.FIREWALL_NATADDRESSPOOL_QUARYNGPS1 = / nat address-group (\d+)/; FW_REGEX_TEMPLATE.FIREWALL_NATADDRESSPOOL_ = new Array([], [/^ nat address-group (\d+) [\S ]*\S+ \S+ vrrp (\d+)[ ]*$/]); FW_REGEX_TEMPLATE.FIREWALL_NATADDRESSPOOL_QUARYNGPBYNUM = new Array([], [/ nat address-group (\d+) [\S ]*\S+ \S+ vrrp (\d+)[ ]*/]); FW_REGEX_TEMPLATE.FIREWALL_NATADDRESSPOOL_ADDRESSRANGE= new Array([],[/nat address-group \d{1,4} (?:\S* |)(\d{1,3}\.\d{1,3}.\d{1,3}.\d{1,3}) (\d{1,3}\.\d{1,3}.\d{1,3}.\d{1,3})/]); FW_REGEX_TEMPLATE.FIREWALL_ADDRESSMAPPING_LIST = new Array( ["\r\n\r\n"], [/id[ ]+:[ ]+(\d+)/], [/zone[ ]+:[ ]+(\S+)\s*(?:interface[ ]+:[ ]+(\S+)|)/], [/globaladdr[ ]+:[ ]+(\S+)[ ]+insideaddr[ ]+:[ ]+(\S+)/], [/globalport[ ]+:[ ]+(\S+)[ ]+insideport[ ]+:[ ]+(\S+)/], [/globalvpn[ ]+:[ ]+(\S+)[ ]+insidevpn[ ]+:[ ]+(\S+)/], [/protocol[ ]+:[ ]+(\S+)[ ]+vrrp[ ]+:[ ]+(\S+)/], [/no-reverse[ ]*:[ ]*(yes|no)/]); FW_REGEX_TEMPLATE.FIREWALL_ADDRESSMAPPING_LIST_diff = new Array( ["\r\n\r\n"], [/id[ ]+:[ ]+(\d+)/], [/zone[ ]+:[ ]+(\S+)\s*(?:interface[ ]+:[ ]+(\S+)|)/], [/interface[ ]+:[ ]+(\S+)/], [/global-start-addr[ ]+:[ ]+(\S+)[ ]+global-end-addr[ ]+:[ ]+(\S+)/], [/inside-start-addr[ ]+:[ ]+(\S+)[ ]+inside-end-addr[ ]+:[ ]+(\S+)/], [/global-start-port[ ]+:[ ]+(\S+)[ ]+global-end-port[ ]+:[ ]+(\S+)/], [/insideport[ ]+:[ ]+(\S+)/], [/globalvpn[ ]+:[ ]+(\S+)[ ]+insidevpn[ ]+:[ ]+(\S+)/], [/protocol[ ]+:[ ]+(\S+)[ ]+vrrp[ ]+:[ ]+(\S+)/], [/no-reverse[ ]*:[ ]*(yes|no)/]); FW_REGEX_TEMPLATE.FIREWALL_ADDRESSMAPPING_SEARCH = new Array( ["\r\n"], [/nat server (\d+) (?:zone (\S+)|)(?: |)(?:protocol (\S+)|)[ ]?global (\d+.\d+.\d+.\d+) (\S*)[ ]?inside (\d+.\d+.\d+.\d+)[ ]?(\S*)[ ]?(?:vrrp|)[ ]?(\d*)/]); FW_REGEX_TEMPLATE.FIREWALL_PORTPOLICY_QUERY=new Array(['\r\n'], [/firewall packet-filter (\d+)[ ]+(\S+)/]); FW_REGEX_TEMPLATE.FIREWALL_PORTPOLICY_INTERFACENAME=new Array( ["interface"], [/(\S+)/]); FW_REGEX_TEMPLATE.FIREWALL_PORTPOLICY_INTERFACE_LIST=new Array( ['\r\n'], [/^[ ]*(\S+)[ ]+\S+[ ]+\S+[ ]+\S+[ ]+\S+[ ]+\S+[ ]*/]); FW_REGEX_TEMPLATE.FIREWALL_PORTPOLICY_INTERFACE_NAME=/(\S+)[ ]+\S+[ ]+\S+[ ]+\S+[ ]+\S+[ ]+\S+/; FW_REGEX_TEMPLATE.FIREWALL_PORTPOLICY_INTERFACE_POLICY=/firewall packet-filter (\d{4}) (inbound|outbound)/; FW_REGEX_TEMPLATE.FIREWALL_PORTPOLICY_INTERFACE_REPLACE=/\|/ig; FW_REGEX_TEMPLATE.FIREWALL_PORTPOLICY_INTERFACE_NAME_VPN=/(\S+) current firewall zone : vpn-instance (\S+)/; FW_REGEX_TEMPLATE.FIREWALL_PORTPOLICY_INTERFACE_NAME_PORT=/(\S+) Interface, (Route|Switch) Port/; FW_REGEX_TEMPLATE.FIREWALL_PORTPOLICY_INTERFACE_NAME_PHYSICAL=/(\S{1,64}) current state :/; FW_REGEX_TEMPLATE.FIREWALL_PORTPOLICY_INTERFACE_VPN=/ip binding (vpn-instance \S+)/; FW_REGEX_TEMPLATE.FIREWALL_PORTPOLICY_INTERFACE_RULE_NUM=/(?:Advanced|Basic)[ ]*ACL[ ]*(?:\d*),[ ]*(\d*)[ ]*rule/; FW_REGEX_TEMPLATE.FIREWALL_PORTPOLICY_INTERFACE_INFO=/Interface[ ]*(\S+)[ ]*(inbound|outbound)[ ]*ACL:[ ]*(\d+)[ ]*(?:vpn-instance:(\S+)|)/; FW_REGEX_TEMPLATE.FIREWALL_PORTPOLICY_INTERFACE_STR_INFO=/split_filter (\d+) (inbound|outbound) (\S+)/; FW_REGEX_TEMPLATE.VPN_PKI_LOCALGRID_PARSE = new Array(['======================================='], [/^(?:Local):(\S+)(?:[ ]*Subject:[ ]*(.*))*/]); FW_REGEX_TEMPLATE.VPN_PKI_LOCALGRID_DETAIL_PARSE = new Array([' Ver'], [/[ ]*sion:[ ](\d+[ ]\S*)\s*[ ]*Serial Number:\s*[ ]*(\S+)\s*[ ]*Signature Algorithm: \S+\s*[ ]*Issuer: (.+\b)\s*Validity\s*Not Before: (.+\b)\s*Not After : (.+\b)\s*Subject: (.+\b)\s*Subject Public Key Info:\s*([\S\s]+Exponent: \d+ \S+\))\s*\S+ extensions:\s*([\s\S]+)/]); FW_REGEX_TEMPLATE.VPN_PKI_LOCALGRID_DETAIL_REQ_PARSE = new Array([' Ver'], [/[ ]*sion:[ ](\d+[ ]\S*)\s*[ ]*Subject: (.+\b)\s+Subject Public Key Info:\s*([\S\s]+Exponent: \d+ \S+\))[\s\S]*Extensions:\s*([\s\S]+)/]); FW_REGEX_TEMPLATE.VPN_PKI_LOCALGRID_DETAIL_REQ_PARSE2 = new Array([' Ver'], [/[ ]*sion:[ ](\d+[ ]\S*)\s*[ ]*Subject: (.+\b)\s+Subject Public Key Info:\s*([\S\s]+Exponent: \d+ \S+\))[\s\S]+(Signature Algorithm:[\s\S]+)/] ); FW_REGEX_TEMPLATE.VPN_PKI_LOCALKEY_PARSE = new Array(['\r\n'], [/Time[ ]of[ ]Key[ ]pair[ ]created:[ ](\d{2}:\d{2}:\d{2}[ ]+\d{4}\/\d{1,2}\/\d{1,2})/]); FW_REGEX_TEMPLATE.VPN_PKI_CAGRID_PARSE = new Array(['======================================='], [/CA:(\S+)(?:[ ]+Subject:[ ]*(.*\b))*/]); FW_REGEX_TEMPLATE.VPN_PKI_CAGRID_DETAIL_PARSE = new Array([' Ver'], [/[ ]*sion:[ ](\d+[ ]\S*)\s*[ ]*Serial Number:\s*[ ]*(\S+)\s*[ ]*Signature Algorithm: \S+\s*[ ]*Issuer: (.+\b)\s*Validity\s*Not Before: (.+\b)\s*Not After : (.+\b)\s*Subject: (.+\b)[\s\S]*extensions:\s*([\s\S]+)/]); FW_REGEX_TEMPLATE.VPN_PKI_CRLGRID_PARSE = new Array(['======================================='], [/CRL:(\S+)[ ]+Issuer:[ ]*(.*\b)/]); FW_REGEX_TEMPLATE.VPN_PKI_DISDOMAIN = new Array(['\r\n'], [/pki domain (.+)\b/]); FW_REGEX_TEMPLATE.VPN_PKI_CRLGRID_DETAIL_PARSE = new Array([' Ver'], [/[ ]*sion (\d+[ ]\S*)\s*[ ]*Signature Algorithm: \S+\s*[ ]*Issuer: (.+\b)\s*[ ]*Last Update: (.+\b)\s*[ ]*Next Update: (.+\b)\s*CRL extensions:\s*[ ]*([\s\S]+)\s*[ ]*((?:No Revoked Certificates.\s*[ ]*Signature )|(Revoked Certificates:([\s\S]+)\s*[ ]*CRL entry extensions:))/]); FW_REGEX_TEMPLATE.VPN_PKI_UPLOAD_URL = /\w+:\/\/[^\/:]+:\d*?[^#]*/; FW_REGEX_TEMPLATE.VPN_PKI_UPLOAD_FILESUFFIX_LOCAL = /\S+\.(?:cer|crt|pem)$/; FW_REGEX_TEMPLATE.VPN_PKI_UPLOAD_FILESUFFIX_CA = /\S+\.(?:cer|crt|pem)$/; FW_REGEX_TEMPLATE.VPN_PKI_UPLOAD_FILESUFFIX_CRL = /\S+\.(?:crl|pem)$/; FW_REGEX_TEMPLATE.VPN_PKI_FILTERPOLICY_GRIDPARSETPL = new Array( ['\r\npki certificate access-control-policy '], [/^(.+)[\s]*/], [/[ ]+rule (\d{1,3}) (\S+) (.+)/, '+']); FW_REGEX_TEMPLATE.VPN_PKI_ATTRIGROUP_GRIDPARSETPL = new Array( ['\r\npki certificate attribute-group '], [/^(.+)[\s]*/], [/[ ]+attribute (\d{1,3}) (\S+) (\S+) (\S+) (.+)/, '+']); FW_REGEX_TEMPLATE.VPN_PKI_DEFAULTPOLICY_PARSETPL = new Array( ['\r\n'], [/pki certificate access-control-policy default (\S+)/]); FW_REGEX_TEMPLATE.VPN_PKI_GETDOMAIN = /^pki\s*domain\s*(\S*)/; FW_REGEX_TEMPLATE.VPN_PKI_LEGALCHARACTER = /[^a-zA-Z0-9+-=:',./]/; FW_REGEX_TEMPLATE.VPN_L2TP_CONFIG_DISPLAYL2TP = new Array( ["\r\nl2tp"], [/^-group[ ]+(1000|[0-9]{1,3})$/], [/^\s*allow[ ]*l2tp[ ]*virtual-template[ ]*(\d+)(?:[ ]*remote[ ]*|)(\S+|)/], [/^[ ]+tunnel[ ]+name[ ]+(\S{1,30})$/]); FW_REGEX_TEMPLATE.VPN_L2TP_GETVT = /^(Virtual-Template(\d{1,4}))/; FW_REGEX_TEMPLATE.VPN_L2TP_GETLOOPBACK = /^(LoopBack\d+)/; FW_REGEX_TEMPLATE.VPN_L2TP_L2TPUSERNAME = /^[\s]*((\S{1,63}@(\S{1,63}))|(\S{1,64}))[ ]+(Active|Block)[ ]*((\S{1,100}))[ ]+(?:Dft|30|1[0-9]|2[0-9]|\d)[ ]+(?:No|20[0-6]0[0-8]|1\d{4}|\d{1,4})[ ]+(20[0-6]0[0-8]|1\d{4}|\d{1,4})[ ]+(\d{1,3}.\d{1,3}.\d{1,3}.\d{1,3}|---|)[\s]*$/; FW_REGEX_TEMPLATE.VPN_L2TP_CONFIG_GETL2TPINFO = ['\n', { groupid : [/^l2tp-group[ ]+(1000|\d{1,3})/], 'vt,oppositePortName,remoteUserDomain,vpn' : [/\s*allow[ ]l2tp[ ]virtual-template[ ](\d+)(?:[ ]*remote[ ]|)(\S+|)(?:[ ]domain[ ]|)(\S+|)(?:[ ]vpn-instance[ ]|)(\S+|)/], localPortName : [/^[\s]*tunnel[ ]+name[ ]+(\S{1,30})/], passwordauth : [/^[\s]*undo[ ]+tunnel[ ]+(authentication)/], 'password' : [/^[\s]*tunnel[ ]+password[ ]+(\S{1,16})/], timer : [/^[\s]*tunnel[ ]+timer[ ]+hello[ ]+(1000|\d{3}|[6-9]\d)/], lcp : [/^[\s]*(mandatory-lcp)/], chap : [/^[\s]*(mandatory-chap)/], avphidden : [/tunnel (avp-hidden)/], sourceif : [/tunnel source (LoopBack\d+)/], 'serverDomain,domain' : [/^[\s]*start[ ]+l2tp[ ]+lns-domain[ ](\S{1,64})[ ]*domain (\S{1,64})/], 'serverDomain,user' : [/^[\s]*start[ ]+l2tp[ ]+lns-domain[ ](\S{1,64})[ ]*fullusername (\S{1,64})/], 'serverip,serveraddressvalue1,serveraddressvalue2,serveraddressvalue3,serveraddressvalue4,domain' : [/^[\s]*start[ ]+l2tp[ ]+ip[ ]+(\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3})[ ]+(?:ip |)(\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}|)[ ]*(?:ip |)(\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}|)[ ]*(?:ip |)(\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}|)[ ]*(?:ip |)(\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}|)[ ]*domain (\S{1,64})/], 'serverip,serveraddressvalue1,serveraddressvalue2,serveraddressvalue3,serveraddressvalue4,user' : [/^[\s]*start[ ]+l2tp[ ]+ip[ ]+(\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3})[ ]+(?:ip |)(\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}|)[ ]*(?:ip |)(\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}|)[ ]*(?:ip |)(\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}|)[ ]*(?:ip |)(\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}|)[ ]*fullusername[ ]+(\S{1,64})/] }]; FW_REGEX_TEMPLATE.VPN_L2TP_CONFIG_QUERYL2TP = new Array( ["l2tp-group"], [/^[ ]+(1000|\d{1,3})$/], [/\s*allow[ ]*l2tp[ ]*virtual-template[ ]*(\d+)(?:[ ]*remote[ ]*|)(\S+|)/], [/^[ ]+tunnel[ ]+name[ ]+(\S{1,30})$/]); FW_REGEX_TEMPLATE.VPN_L2TP_L2TPTUNNEL_LIST = new Array( ["\r\n"], [/(\d{1,4})\s+(\d{1,4})\s+(\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3})\s+(\d+)\s+(\d{1,20608})\s+(\S{0,30})/]); FW_REGEX_TEMPLATE.VPN_L2TP_L2TPSESSION_LIST = new Array(["\r\n"], [/^\s+(\d+)[ ]+(\d+)[ ]+(\d+)/]); FW_REGEX_TEMPLATE.VPN_L2TP_USER_QUERYUSER = ['\n', { 'userName,groupName' : [/^[\s]*Username[ ]+:[ ]+(".+"|\S+@(".+"|\S{1,64})|(".+"|\S{1,64}))/], state : [/^[\s]*State[ ]+:[ ]+(Active|Block)[\s]*/], assignFixedIP : [/^[\s]*L2tp-ip[ ]+:[ ]+(\d{1,3}.\d{1,3}.\d{1,3}.\d{1,3})/], serviceType : [/^[\s]*Service-type[ ]+:[ ]+(ppp|All)/], password : [/^[\s]*Password[ ]+:[ ]+(\S{1,16})/] }]; FW_REGEX_TEMPLATE.VPN_L2TP_USER_QUERYUSERUNDERGROUP = [ ['\n'], [/^[\s]*((".+"|\S{1,63}@(".+"|\S{1,63}))|(".+"|\S{1,64}))[ ]+(Active|Block)[ ]*((\S{1,100}))[ ]+(?:Dft|30|1[0-9]|2[0-9]|\d)[ ]+(?:No|20[0-6]0[0-8]|1\d{4}|\d{1,4})[ ]+(20[0-6]0[0-8]|1\d{4}|\d{1,4})[ ]+(\d{1,3}.\d{1,3}.\d{1,3}.\d{1,3}|---|)[\s]*$/]]; FW_REGEX_TEMPLATE.VPN_L2TP_GETL2TPGROUPLIST = [["\r\n"], [/(".+"|\S{1,64})[ ]+(Active|Block)[ ]+\d{1,2}[ ]+\d{1,5}[ ]+\d{1,5}/]]; FW_REGEX_TEMPLATE.VPN_L2TP_GETSCHEME = new Array(['\r\n'], [/\s+(\S{1,32})[ ]+.*/]); FW_REGEX_TEMPLATE.VPN_L2TP_GETRADIUS = new Array( [' -------------------------------------------------------------------\r\n'], [/^[ ]+Server-template-name[ ]+: (\S{1,32})/]); FW_REGEX_TEMPLATE.VPN_L2TP_GETIPPOOLLIST = new Array( ['\r\n'], [/^[\s]*(\d{1,2})[ ]+(\d{1,3}.\d{1,3}.\d{1,3}.\d{1,3})[ ]+(\d{1,3}.\d{1,3}.\d{1,3}.\d{1,3}|)[ ]+(?:\d{1,})[ ]+(?:\d{1,})[\s]*$/]); FW_REGEX_TEMPLATE.VPN_L2TP_USER_GETGROUPINFO = ['\n', { domainname : [/^[\s]*Domain-name[ ]+:[ ]+(".+"|\S{1,64})/], state : [/^[\s]*Domain-state[ ]+:[ ]+(Active|Block)/], dnshost : [/^[\s]*Primary-DNS-IP-address[ ]+:[ ]+(\d{1,3}.\d{1,3}.\d{1,3}.\d{1,3}|-)/], dnsguest : [/^[\s]*Second-DNS-IP-address[ ]+:[ ]+(\d{1,3}.\d{1,3}.\d{1,3}.\d{1,3}|-)/], winshost : [/^[\s]*Primary-NBNS-IP-address[ ]+:[ ]+(\d{1,3}.\d{1,3}.\d{1,3}.\d{1,3}|-)/], winsguest : [/^[\s]*Second-NBNS-IP-address[ ]+:[ ]+(\d{1,3}.\d{1,3}.\d{1,3}.\d{1,3}|-)/], authentication : [/^[\s]*Authentication-scheme-name[ ]+:[ ]+(\S{1,32})/], authorization : [/^[\s]*Authorization-scheme-name[ ]+:[ ]+(\S{1,32})/], account : [/^[\s]*Accounting-scheme-name[ ]+:[ ]+(\S{1,32})/], radiusserver : [/^[\s]*RADIUS-server-template[ ]+:[ ]+(\S{1,32}|-)/] }]; FW_REGEX_TEMPLATE.VPN_IPSEC_DISPLAYIKELIST = new Array( ["\r\nIKE "], [/Peer:\s*(.{1,15})/], [/\s*version:[ ]+(v1v2|v1|v2)/], [/ipsec policy:[ ]+((?:.{1,15})-\d*-(?:template|isakmp))[ ]*(?:template:|)[ ]*(\S*)[ ]*Using interface: {(\S*)}/,'+']); FW_REGEX_TEMPLATE.VPN_IPSEC_DISPLAYIPSECPOLICYEXTENDACL_SECONDCUT = /Policy:\s|IPsec|Using\s/; FW_REGEX_TEMPLATE.USER_ = ''; FW_REGEX_TEMPLATE.ATTACKDEFENSE_DEFEND_DDOS_DISPLAYRULEBYACLNUMBER = new Array( ['\r\n'], [/^[ ]*rule (\d+) (permit|deny) (service-set \S{1,} \((?:group|object|predefined)\)|\w+)[ ]+(?:source|)([ ]*address-set \S+ \((?:group|object)\)| \d+.\d+.\d+.\d+ [0-9\.]+|)[ ]*(?:destination|)([ ]*address-set \S+ \((?:group|object)\)| \d+.\d+.\d+.\d+ [0-9\.]+|)[ ]*(?:precedence|)([ ][a-z\-]+|)[ ]*(?:tos|)([ ][a-z0-9\-]+|)[ ]*(?:logging|)[ ]*(?:time-range|)([ ]*[\S]+|)[ ]*\(\d+ times matched\)(?:\(Inactive\)|)/]); FW_REGEX_TEMPLATE.ATTACKDEFENSE_DEFEND_DNS_DISPLAYDNSFLOOD_INTERFACE=[['firewall defend dns-flood inter'], [/face (\S+) alert-rate (\d+) max-rate (\d+)/]]; FW_REGEX_TEMPLATE.ATTACKDEFENSE_DEFEND_DNS_DISPLAYDNSFLOOD_IP=[['firewall defend dns-flood i'], [/p (\S+) (?:vpn-instance \S* |)alert-rate (\d+) max-rate (\d+)/]]; FW_REGEX_TEMPLATE.ATTACKDEFENSE_DEFEND_DNS_DISPLAYDNSFLOOD_ZONE=[['firewall defend dns-flood z'], [/one (?:vpn-instance \S* |)(\S+) alert-rate (\d+) max-rate (\d+)/]]; FW_REGEX_TEMPLATE.ATTACKDEFENSE_DEFEND_ICMP_DISICMPENABLE = new Array(['\r\n'], [/^( firewall defend icmp-flood enable)$/]); FW_REGEX_TEMPLATE.ATTACKDEFENSE_DEFEND_ICMP_GETICMPMAXRATE = new Array( ['\r\n'], [/^ firewall defend icmp-flood base-session max-rate (\d{1,3})$/]); FW_REGEX_TEMPLATE.ATTACKDEFENSE_DEFEND_ICMP_LISTICMPINTERFACE = new Array( ['\r\n'], [/^ firewall defend icmp-flood interface (\S+) max-rate (\d{1,}|)$/]); FW_REGEX_TEMPLATE.ATTACKDEFENSE_DEFEND_ICMP_LISTICMPZONE = new Array( ['\r\n'], [/^ firewall defend icmp-flood zone (?:vpn-instance \S* |)(\S+)(?: max-rate (\d{1,5})|)$/]); FW_REGEX_TEMPLATE.ATTACKDEFENSE_DEFEND_SCAN_DISIPSWEEPENABLE = new Array( ['\r\n'], [/^( firewall defend ip-sweep enable)$/]); FW_REGEX_TEMPLATE.ATTACKDEFENSE_DEFEND_SCAN_DISIPSWEEPMAXRATE = new Array( ['\r\n'], [/^ firewall defend ip-sweep max-rate (\d{1,5})$/]); FW_REGEX_TEMPLATE.ATTACKDEFENSE_DEFEND_SCAN_DISIPSWEEPTIMEOUT = new Array( ['\r\n'], [/^ firewall defend ip-sweep blacklist-timeout (\d{1,4})$/]); FW_REGEX_TEMPLATE.ATTACKDEFENSE_DEFEND_SCAN_DISPORTSCANENABLE = new Array( ['\r\n'], [/^( firewall defend port-scan enable)$/]); FW_REGEX_TEMPLATE.ATTACKDEFENSE_DEFEND_SCAN_DISPORTSCANMAXRATE = new Array( ['\r\n'], [/^ firewall defend port-scan max-rate (\d{1,5})$/]); FW_REGEX_TEMPLATE.ATTACKDEFENSE_DEFEND_SCAN_DISPORTSCANTIMEOUT = new Array( ['\r\n'], [/^ firewall defend port-scan blacklist-timeout (\d{1,4})$/]); FW_REGEX_TEMPLATE.ATTACKDEFENSE_DEFEND_SYN_DISSYNENABLE = new Array(['\r\n'], [/^( firewall defend syn-flood enable)$/]); FW_REGEX_TEMPLATE.ATTACKDEFENSE_DEFEND_SYN_dISTCPMSS = new Array(['\r\n'], [/^ firewall tcp-mss (\d{3,4})$/]); FW_REGEX_TEMPLATE.ATTACKDEFENSE_DEFEND_SYN_LISTSYNINTERFACE = new Array( ['\r\n'], [/^ firewall defend syn-flood interface (\S+) alert-rate (\d+) max-rate (\d+) tcp-proxy (auto|on|off)$/]); FW_REGEX_TEMPLATE.ATTACKDEFENSE_PHYSICAL_INTERFACE=/^(GigabitEthernet[0-9/]+|Ethernet[0-9/]+|pon[0-9/]+) current state/; FW_REGEX_TEMPLATE.ATTACKDEFENSE_ARPFLOOD_INTERFACE=/^\s*(GigabitEthernet[0-9/]{1,8}|Virtual\-Ethernet[0-9]{1,4}|Wlan\-Bss[0-9]{1,4}|Ethernet[0-9/]{1,8}|pon[0-9/]{1,8}) current state/; FW_REGEX_TEMPLATE.ATTACKDEFENSE_DEFEND_SYN_LISTSYNIP = new Array( ['\r\n'], [/^ firewall defend syn-flood ip (\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}) (?:vpn-instance \S* |)alert-rate (\d{1,5}) max-rate (\d{1,5}) (tcp-proxy|source-detect) (\S{1,4})$/]); FW_REGEX_TEMPLATE.ATTACKDEFENSE_DEFEND_SYN_LISTSYNZONE = new Array( ['\r\n'], [/^ firewall defend syn-flood zone (?:vpn-instance \S* |)(\S+)[ ]*(port[ ]*|)(?:alert-rate (\d{1,5})|)(?: max-rate (\d{1,5})|)(?: tcp-proxy (off|on)|)$/]); FW_REGEX_TEMPLATE.ATTACKDEFENSE_DEFEND_SYN_LISTSYNSZONE = new Array( ['\r\n'], [/^ firewall defend source-syn-flood zone (?:vpn-instance \S* |)(\S+)[ ]*(?:alert-rate|)[ ]*(\d{1,5}|)[ ]*(?:max-rate|)[ ]*(\d{1,5}|)[ ]*(?: tcp-proxy (off|on)|)$/]); FW_REGEX_TEMPLATE.ATTACKDEFENSE_DEFEND_UDP_LISTUDPSZONE = new Array( ['\r\n'], [/^ firewall defend source-udp-flood zone (\S+)[ ]*(?:alert-rate|)[ ]*(\d{1,5}|)[ ]*(?:max-rate|)[ ]*(\d{1,5}|)[ ]*$/]); FW_REGEX_TEMPLATE.ATTACKDEFENSE_DEFEND_TPL_DISALLENABLE = new Array( ['\r\n'], [/^[ ]+[a-zA-Z0-9-]*[ ]*:[ ]*(enable|disable)/,'+']); FW_REGEX_TEMPLATE.ATTACKDEFENSE_DEFEND_TPL_PHYSICSINTERFACE = new Array( ['\r\n'], [/^(\S{5,32})$/]); FW_REGEX_TEMPLATE.ATTACKDEFENSE_DEFEND_TPL_DISZONEALL = new Array(['\r\n'], [/^firewall zone(?: name|)(?: vpn-instance \S+(?: name|)|) (\S{1,32})$/]); FW_REGEX_TEMPLATE.ATTACKDEFENSE_DEFEND_UDP_DISUDPENABLE = new Array(['\r\n'], [/^( firewall defend udp-flood enable)$/]); FW_REGEX_TEMPLATE.ATTACKDEFENSE_DEFEND_UDP_GETUDPPUBLIC=[['\r\n'],[/base-session max-rate (\d+)/]]; FW_REGEX_TEMPLATE.ATTACKDEFENSE_DEFEND_UDP_LISTUDPINTERFACE = new Array( ['\r\n'], [/^ firewall defend udp-flood interface (\S+) max-rate (\d{1,8})$/]); FW_REGEX_TEMPLATE.ATTACKDEFENSE_DEFEND_UDP_LISTUDPIP = new Array( ['\r\n'], [/^ firewall defend udp-flood ip (\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}) (?:vpn-instance \S* |)alert-rate (\d{1,5}) max-rate (\d{1,5})$/]); FW_REGEX_TEMPLATE.ATTACKDEFENSE_DEFEND_UDP_LISTUDPZONE = new Array( ['\r\n'], [/^ firewall defend udp-flood zone (?:vpn-instance \S* |)(\S+)(?: alert-rate (\d{1,5})|)(?: max-rate (\d{1,5})|)(?: source-max-rate (\d{1,5})|)$/]); FW_REGEX_TEMPLATE.ATTACKDEFENSE_DEFEND_ARP_GRID_PARSE=/^ firewall defend arp-flood interface (\S+) max-rate (\d+)$/; FW_REGEX_TEMPLATE.ATTACKDEFENSE_DEFEND_ARP_ENABLE_PARSE=/^ firewall defend arp-flood enable$/; FW_REGEX_TEMPLATE.ATTACKDEFENSE_DEFEND_HTTP_GRID_PARSE=/^ firewall defend http-flood source-detect interface (\S+) alert-rate (\d+) max-rate (\d+)$/; FW_REGEX_TEMPLATE.ATTACKDEFENSE_DEFEND_HTTP_ENABLE_PARSE=/^ firewall defend http-flood enable$/; FW_REGEX_TEMPLATE.ATTACKDEFENSE_DEFEND_UDP_FINGERPRINT_LIST = new Array([], [/firewall defend udp-flood fingerprint-learn offset (\d{1,4}) fingerprint-length (\d)/], [/firewall defend udp-flood fingerprint-hit destination-max-rate (\d{1,4})/], [/firewall defend udp-flood fingerprint-hit source-max-rate (\d{1,4})/]); FW_REGEX_TEMPLATE.ATTACKDEFENSE_IPMAC_MAC_BINDING = [[], [/^ Mac-binding is (\S+)[ ]*$/]] FW_REGEX_TEMPLATE.ATTACKDEFENSE_IPMAC_IPMAC_LIST = new Array( ['\r\n'], [/(\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3})[ ]+(\w{1,4}-\w{1,4}-\w{1,4})[ ]*(?:(\w{1,19})|)/]); FW_REGEX_TEMPLATE.ATTACKDEFENSE_IPMAC_LISTARP = new Array( ['\r\n'], [/^(\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}) +(\w{1,4}-\w{1,4}-\w{1,4}|Incomplete) +(\d{1,3}|) *(S|I|D|\d{1,4}) {1,13}([^-]\S{1,63}|) *([^-]\S*|)(-+|) *(\d{1,5}|)/] ); FW_REGEX_TEMPLATE.ATTACKDEFENSE_DEFEND_SYN_LISTINTERFACE = new Array( ['\r\n'], [/[ ]*(.+)[ ]+syn[ ]+(\d{1,})[ ]+(\d{1,})[ ]+(?:on|off)[ ]+\d{1,}/]); FW_REGEX_TEMPLATE.ATTACKDEFENSE_DEFEND_SYNACK_LISTINTERFACE = new Array( ['\r\n'], [/[ ]*(.+)[ ]+syn-ack[ ]+(\d{1,})[ ]+(\d{1,})[ ]+(?:on|off)[ ]+\d{1,}/]); FW_REGEX_TEMPLATE.ATTACKDEFENSE_DEFEND_ACK_LISTINTERFACE = new Array( ['\r\n'], [/[ ]*(.+)[ ]+ack[ ]+(\d{1,})[ ]+(\d{1,})[ ]+(?:on|off)[ ]+\d{1,}/]); FW_REGEX_TEMPLATE.ATTACKDEFENSE_DEFEND_HTTP_LISTINTERFACE = new Array( ['\r\n'], [/[ ]*(.+)[ ]+http[ ]+(\d{1,})[ ]+(\d{1,})[ ]+(?:on|off)[ ]+\d{1,}/]); FW_REGEX_TEMPLATE.ATTACKDEFENSE_DEFEND_DNSREQUEST_LISTINTERFACE = new Array( ['\r\n'], [/[ ]*(.+)[ ]+dns-request[ ]+(\d{1,})[ ]+(\d{1,})[ ]+(?:on|off)[ ]+\d{1,}/]); FW_REGEX_TEMPLATE.ATTACKDEFENSE_DEFEND_DNSREPLY_LISTINTERFACE = new Array( ['\r\n'], [/[ ]*(.+)[ ]+dns-reply[ ]+(\d{1,})[ ]+(\d{1,})[ ]+(?:on|off)[ ]+\d{1,}/]); FW_REGEX_TEMPLATE.ATTACKDEFENSE_DEFEND_SIP_LISTINTERFACE = new Array( ['\r\n'], [/[ ]*(.+)[ ]+sip[ ]+(\d{1,})[ ]+(\d{1,})[ ]+(?:on|off)[ ]+\d{1,}/]); FW_REGEX_TEMPLATE.ATTACKDEFENSE_DEFEND_GOLBALPARAM_FINGERPRINTLIST = new Array( ['\r\n'], [/[ ]*firewall ddos-fingerprint index (\d) protocol (\w+) offset (\d{1,}) content (.+)/]); FW_REGEX_TEMPLATE.ATTACKDEFENSE_DEFEND_GOLBALPARAM_TTL_PARSE = new Array( ['\r\n'], [/[ ]*firewall source-ip detect ttl (.+)/]); FW_REGEX_TEMPLATE.ATTACKDEFENSE_DEFEND_GOLBALPARAM_BLACKLIST_PARSE = new Array( ['\r\n'], [/^ firewall defend http-flood blacklist-timeout (\S+)[ ]*$/]); FW_REGEX_TEMPLATE.ATTACKDEFENSE_DEFEND_GOLBALPARAM_TTL_MATCHREGX = /ttl (\d{1,})/; FW_REGEX_TEMPLATE.ATTACKDEFENSE_DEFEND_GOLBALPARAM_BLACKEXPIRE_MATCHREGX = /blacklist-timeout (\d{1,})/; FW_REGEX_TEMPLATE.ATTACKDEFENSE_DEFEND_GOLBALPARAM_WHITE_MATCHREGX = /aging-time (\d{1,})/; FW_REGEX_TEMPLATE.ATTACKDEFENSE_DEFEND_GOLBALPARAM_BGP_NEXTHOP_MATCHREGX = /bgp-next-hop (\d{1,3}.\d{1,3}.\d{1,3}.\d{1,3})/; FW_REGEX_TEMPLATE.ATTACKDEFENSE_DEFEND_GOLBALPARAM_BGP_FIB_MATCHREGX = /bgp-next-hop (fib-filter)/; FW_REGEX_TEMPLATE.ATTACKDEFENSE_DEFEND_GOLBALPARAM_LOG_LOCAL_MATCHREGX = /log-local-ip (\d{1,3}.\d{1,3}.\d{1,3}.\d{1,3})/; FW_REGEX_TEMPLATE.ATTACKDEFENSE_DEFEND_GOLBALPARAM_LOG_SERVER_MATCHREGX = /log-server-ip (\d{1,3}.\d{1,3}.\d{1,3}.\d{1,3})/; FW_REGEX_TEMPLATE.ATTACKDEFENSE_DEFEND_GOLBALPARAM_INTERFACECFG_PARSE = new Array( ['\r\n'], [/[ ]*(.+)[ ]+(enable|-)[ ]+(enable|-)[ ]*/]); FW_REGEX_TEMPLATE.ATTACKDEFENSE_DEFEND_ICMP_GETICMPMAXRATE_DDOS = new Array( ['\r\n'], [/^ firewall defend icmp-flood base-session max-rate (\d{1,3})$/]); FW_REGEX_TEMPLATE.ATTACKDEFENSE_DEFEND_ICMP_LISTICMPINTERFACE_DDOS = new Array( [' firewall'], [/[ ]*defend icmp-flood interface (\S+)[ ]*(?:max-rate|)[ ]*(\d{1,8}|)[ ]*/]); FW_REGEX_TEMPLATE.ATTACKDEFENSE_DEFEND_UDP_LISTUDPINTERFACE_DDOS = new Array( [' firewall'], [/[ ]*defend udp-flood interface (\S+)[ ]*(?:max-rate|)[ ]*(\d{1,6}|)[ ]*/]); FW_REGEX_TEMPLATE.ATTACKDEFENSE_DEFEND_UDP_LISTUDPSESSION_DDOS = new Array( ['\r\n'], [/[ ]*firewall defend udp-flood base-session max-rate (\d{1,5})/]); FW_REGEX_TEMPLATE.ATTACKDEFENSE_BLACKLIST_DISPLAYCLOCKTPL = /\s*(\d{2}:\d{2}:\d{2})[ ]+(\d{4}\/\d{2}\/\d{2})/; FW_REGEX_TEMPLATE.ATTACKDEFENSE_BLACKLIST_DISPLAYBLACKLISTITEMTPL = new Array( ['\r\n'], [/^(\d{1,3}.\d{1,3}.\d{1,3}.\d{1,3})[ ]+([^\d]{1,})(\d{4}\/\d{2}\/\d{2}[ ]\d{2}\:\d{2}\:\d{2})[ ]+(\S{1,})[ ]*(?:(\S{1,31})|)$/]); FW_REGEX_TEMPLATE.ATTACKDEFENSE_BLACKLIST_SEARCHBLACKLISTITEMTPL = new Array( ['\r\n'], [/^(\d{1,3}.\d{1,3}.\d{1,3}.\d{1,3})[ ]+([^\d]{1,})(\d{4}\/\d{2}\/\d{2}[ ]\d{2}\:\d{2}\:\d{2})[ ]+(\S{1,})[ ]*$/]); FW_REGEX_TEMPLATE.ATTACKDEFENSE_WHITELIST_LIST_PARSETPL = new Array( ["\r\n"], [/^(\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3})[ ]+(Syn[ ]flood|Http[ ]flood|Unknown)[ ]+(\d{4}\/\d{1,2}\/\d{1,2} \d{2}:\d{2}:\d{2})[ ]+\d{1,5}[ ]*(?:(\w{1,19})|)/]); FW_REGEX_TEMPLATE.ATTACKDEFENSE_WHITELIST_LIST_PARSESTATTPL = new Array( ["\r\n"], [/^\s*Total of End:(\d{1,32})[ ]+Syn-flood:(\d{1,32})[ ]+Http-flood:(\d{1,32})[ ]+Unknown:(\d{1,32})/]); FW_REGEX_TEMPLATE.ATTACKDEFENSE_WHITELIST_GETAGETIME = new Array([], [/^ firewall source-ip detect aging-time (\d{1,5})$/]); FW_REGEX_TEMPLATE.LOGTRAP_CONFIG_SESSIONLOG_ACLRULE = /^[ ]*rule (\d+) (permit|deny) (service-set \S{1,} \((?:group|object|predefined)\)|\w+)[ ]+(?:source|)([ ]*address-set \S+ \((?:group|object)\)| \d+.\d+.\d+.\d+ [0-9\.]+|)[ ]*(?:destination|)([ ]*address-set \S+ \((?:group|object)\)| \d+.\d+.\d+.\d+ [0-9\.]+|)[ ]*(?:precedence|)([ ][a-z\-]+|)[ ]*(?:tos|)([ ][a-z0-9\-]+|)[ ]*(?:logging|)[ ]*(?:time-range|)([ ]*[^(][\S]+|)[ ]*(?:\(Inactive\)|)/; FW_REGEX_TEMPLATE.LOGTRAP_CONFIG_LOGHOSTLIST = new Array( ['\r\n'], [/info-center loghost (\d{1,3}.\d{1,3}.\d{1,3}.\d{1,3})[ ]*((language){1,8})*/]); FW_REGEX_TEMPLATE.LOGTRAP_CONFIG_LOGHOSTLIST_JiangXi = new Array( ['\r\n'], [/info-center loghost (\d{1,3}.\d{1,3}.\d{1,3}.\d{1,3})[ ]*(\d{1,5})[ ]*((language){1,8})*/]); FW_REGEX_TEMPLATE.LOGTRAP_CONFIG_GETINTERFACE = new Array(['\r\n'], [/^interface ([\w\d\/.-]*)/]); FW_REGEX_TEMPLATE.LOGTRAP_CONFIG_QURYLOGHOSTINTERFACE = /^[ ]*info-center loghost source ([\S]+)/; FW_REGEX_TEMPLATE.LOGTRAP_CONFIG_QUERYLOGHOSTSYSTEM = /^[ ]*info-center loghost type ([\w\-]+)/; FW_REGEX_TEMPLATE.LOGTRAP_CONFIG_QURYSESSIONLOGHOSTINTERFACE = { sessionip : [/^[ ]*firewall session log-type binary host (\d*.\d*.\d*.\d*) \d+/], sessioninterface : [/^[ ]*firewall session log-type binary host \d*.\d*.\d*.\d* (\d+)/] }; FW_REGEX_TEMPLATE.LOGTRAP_CONFIG_SESSIONLOG_INFIREWALL_INBOUND = { aclNum : [/^\s*session log enable acl-number (\d{1,64}) inbound/] }; FW_REGEX_TEMPLATE.LOGTRAP_CONFIG_SESSIONLOG_INFIREWALL_OUTBOUND = { aclNum : [/^\s*session log enable acl-number (\d{1,64}) outbound/] }; FW_REGEX_TEMPLATE.LOGTRAP_CONFIG_SESSIONLOG_GETHIDEACL = /^\s*The ACL (\d+) is unused/; FW_REGEX_TEMPLATE.LOGTRAP_CONFIG_SESSIONLOG_ADDRESSSET = new Array(['\r\n'], [/^ address (\d*) (\d*.\d*.\d*.\d*) (\d*.\d*.\d*.\d*) ([\w\-]*)/]); FW_REGEX_TEMPLATE.LOGTRAP_DISPLAY_LOGBUFFERLISTSUCCTPL = new Array( ['\r\n'], [/\%( |(?:DST |)\S+\s*\S+\d )[ ]*(.*)[ ]+([\%\w]+)(\/)(\d+)(\/)(\w+)(\((\w+|)\))\:(.*)/] ); FW_REGEX_TEMPLATE.LOGTRAP_DISPLAY_TRAGBUFFERLISTSUCCTPL = new Array( ['\r\n'], [/#((?:DST |)(?: |[\d\/]+ [\d:]{8}|\d{4}\-\d{2}-\d{2} [\d:]{8}|[\.\d+]+))[ ]*(.*)(\/)(\d+)(\/)(\w+):[ ]*(.*)/]); FW_REGEX_TEMPLATE.ATTACKDEFENSE_DEFEND_SIP_GETPORTRANGE = new Array( ['\r\n'], [/^ range[ ]*(\d*)(?: (\d*)|)$/]); FW_REGEX_TEMPLATE.ATTACKDEFENSE_DEFEND_SIP_LISTSIPIP = new Array ( ['\r\n'], [/^ firewall defend sip-flood ip (\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}) (?:alert-rate (\d*) \S* (\d*) )?\S* (\S*)$/] ); FW_REGEX_TEMPLATE.ATTACKDEFENSE_DEFEND_SIP_LISTSIPZONE = new Array ( ['\r\n'], [/^ firewall defend sip-flood zone (?:v\S* \S* )?(\S*) (?:alert-rate (\d*) \S* (\d*) )?\S* (\S*)$/] ); var FW_REGEX_VIEW = function() { } FW_REGEX_VIEW.CTRL_FIELD_GIGABITETHERNET = /^(gigabitethernet\d{1,4}\/\d{1,4}\/\d{1,4}.\d{1,4})$/; FW_REGEX_VIEW.CTRL_FIELD_GIGABITETHERNET_INTERFACENAME = /\.(\d{1,4})/; FW_REGEX_VIEW.CTRL_FIELD_GIGABITETHERNET_INTERFACENAME_MINVALUE = /(\d{1,4})\/(\d{1,4})\/(\d{1,4})./; FW_REGEX_VIEW.CTRL_FIELD_ETHERNET = /^(ethernet\d{1,4}\/\d{1,4}\/\d.\d{1,4})$/; FW_REGEX_VIEW.CTRL_FIELD_ETHTRUNK = /^(eth-trunk[0-7])$/; FW_REGEX_VIEW.CTRL_FIELD_ETHTRUNKSUB = /^(eth-trunk[0-7].\d{1,4})$/; FW_REGEX_VIEW.CTRL_FIELD_VIRTUALTEMPLATE = /^(virtual-template\d{1,4})$/; FW_REGEX_VIEW.CTRL_FIELD_VIRTUALTEMPLATE_INTERFACE = /^virtual-template(\d{1,4})$/; FW_REGEX_VIEW.CTRL_FIELD_LOOPBACK = /^(loopback\d{1,4})$/; FW_REGEX_VIEW.CTRL_FIELD_LOOPBACK_INTERFACE = /^loopback(\d{1,4})$/; FW_REGEX_VIEW.CTRL_FIELD_ZONE = /^([A-Za-z\u0391-\uFFE5])[^-? ]*$/; FW_REGEX_VIEW.CTRL_FIELD_FWTEXTAREA = /^[ ]*$/; FW_REGEX_VIEW.UTIL_CELLACTIONS_CLASSNAME = /ux-cell-action /; FW_REGEX_VIEW.UTIL_DDVIEW_CLASSRE = /class=(['"])(.*)\1/; FW_REGEX_VIEW.UTIL_DDVIEW_TAGRE = /(<\w*)(.*?>)/; FW_REGEX_VIEW.UTIL_EXPORT_BASE64TEST = /[^A-Za-z0-9\+\/\=]/g; FW_REGEX_VIEW.UTIL_FWUTIL_FILEURL = /^\s+|\s+$/g; FW_REGEX_VIEW.UTIL_PARSE_TRIM = /^\s+|\s+$/g; FW_REGEX_VIEW.UTIL_ROWACTIONS_CLASSNAME = /ux-row-action-item /; FW_REGEX_VIEW.UTIL_ROWACTIONS_ACTION = / ux-row-action-text/; FW_REGEX_VIEW.UTIL_ROWACTIONS_GROUP = /ext-gen[0-9]+-gp-/; FW_REGEX_VIEW.UTIL_ROWACTIONS_GROUPID = /ext-gen[0-9]+-gp-/; FW_REGEX_VIEW.UTIL_ROWACTIONS_CLASSNAMEREP = /ux-grow-action-item (ux-action-right )*/; FW_REGEX_VIEW.DDNS_POLICY_USER_REGEX = /^[a-zA-Z][a-zA-Z0123456789\-_\.]*$/; FW_REGEX_VIEW.COMBO_ZONE_NAME = /^[ ]{2}(\S+)[ ]+\S+/; FW_REGEX_VIEW.SPLIT_PAGED_DATA = /\r\n[ ]*\r\n/; FW_REGEX_VIEW.SYSTEM_STATE_SYSINFO_TOTAL = /[ ]+\d{1,}[ ]+(\d{1,})[ ]*/; FW_REGEX_VIEW.SYSTEM_STATE_LOG_REPALCE = /:(\r\n\t) /g; FW_REGEX_VIEW.SYSTEM_STATE_LOG_REPALCE = /[ ]+\d{1,}[ ]+(\d{1,})[ ]*/; FW_REGEX_VIEW.SYSTEM_INFO_TOTALNUMBER = /[ ]+(\d{1,})[ ]+(\d{1,})/; FW_REGEX_VIEW.ROUTER_STATIC_TRIM = /^\s+|\s+$/g; FW_REGEX_VIEW.ROUTER_STATIC_GRID_TOTAL = /[ ]+\d{1,}[ ]+(\d{1,}).*/; FW_REGEX_VIEW.ROUTER_POLICY_TRIM = /^\s+|\s+$/g; FW_REGEX_VIEW.ROUTER_POLICY_GRID_TOTAL = /[ ]+\d{1,}[ ]+(\d{1,}).*/; FW_REGEX_VIEW.ROUTER_POLICY_NONE_TO_USE_ACL = /^\s*The ACL (\d+) is unused.*$/; FW_REGEX_VIEW.ROUTER_DYNAMIC_TRIM = /^\s+|\s+$/g; FW_REGEX_VIEW.ROUTER_DYNAMIC_GRID_TOTAL = /[ ]+(\d{1,})[ ]+(\d{1,}).*/; FW_REGEX_VIEW.ROUTER_DYNAMIC_OSPF_CONVERGE_REPLACESTR = '\/'; FW_REGEX_VIEW.ROUTER_DYNAMIC_OSPF_CONVERGE_ADDSTR = '\/'; FW_REGEX_VIEW.ROUTER_DYNAMIC_OSPF_OSPF_INNER_VALIDATOR_1 = /\D+/g; FW_REGEX_VIEW.ROUTER_DYNAMIC_OSPF_OSPF_INNER_VALIDATOR_2 = /\d+/g; FW_REGEX_VIEW.ROUTER_DYNAMIC_OSPF_ROUTE_FILTER_NONE_TO_USE_ACL = /^\s*The ACL (\d+) is unused.*$/; FW_REGEX_VIEW.ROUTER_DYNAMIC_OSPF_INTERFACE_PASSWORD_VALIDATOR = /^[a-zA-Z0-9]{1,64}$/; FW_REGEX_VIEW.ROUTER_DYNAMIC_RIP_ROUTE_FILTER_NONE_TO_USE_ACL = /^\s*The ACL (\d+) is unused.*$/; FW_REGEX_VIEW.ROUTER_TABLE_TRIM = /^\s+|\s+$/g; FW_REGEX_VIEW.ROUTER_TABLE_GRID_TOTAL = /[ ]+\d{1,}[ ]+(\d{1,}).*/; FW_REGEX_VIEW.FIREWALL_ADDRESS_QUARYADDRNAME1 = /Address-set : (\S+)/; FW_REGEX_VIEW.FIREWALL_ADDRESS_QUARYADDRNAME2 = / address (\d+) (\S+) (\S+)[ ]*(\S*)/; FW_REGEX_VIEW.FIREWALL_ADDRESS_QUARYADDRNAME = /^[a-zA-Z][a-zA-Z0-9]*$/; FW_REGEX_VIEW.FIREWALL_ADDRESS_REPLACE = /\"/g; FW_REGEX_VIEW.FIREWALL_TIMERANGE_QUARYTRNAME = /^[a-zA-Z]\S*$/; FW_REGEX_VIEW.FIREWALL_TIMERANGE_REPLACE = /,/g; FW_REGEX_VIEW.FIREWALL_TIMERANGE_TRIM = /^[ ]+|[ ]+$/g; FW_REGEX_VIEW.FIREWALL_TIMERANGE_NUMDAYS = /-/g; FW_REGEX_VIEW.FIREWALL_POLICY_SUCCESSFLAG = [ 'Info: The policy is inactive or action is deny, so specifed application(s) is', '提示: 策略在无效状态或者动作为阻断,所以,指定的应用无效!', true]; FW_REGEX_VIEW.FIREWALL_POLICY_SERVICE_TEMP = /[ ]*(\d+)[ ]*(\d+)/; FW_REGEX_VIEW.FIREWALL_POLICY_SERVICE_VALIDATE = /(\d+)[a-z|A-Z]+/; FW_REGEX_VIEW.FIREWALL_POLICY_INSERT_REPLACE = /\[*(\d+)]/; FW_REGEX_VIEW.FIREWALL_POLICY_INSERT_REPLACE_MODIFY = /\S*\-(\d+)\]/; FW_REGEX_VIEW.FIREWALL_POLICY_LONGLINK_MATCH = / Long-link aging-time is (\d+) hours/; FW_REGEX_VIEW.FIREWALL_POLICY_POPGRIDPANEL = /\d+.\S \S/; FW_REGEX_VIEW.FIREWALL_POLICY_POLICYTYPE = / (nat-policy|policy) \d+/; FW_REGEX_VIEW.FIREWALL_POLICY_VPN = /^ vpn-instance \S+ (\S*)\r\n(?: description [\S ]+\r\n|) priority is (\d+)/; FW_REGEX_VIEW.FIREWALL_POLICY_VPNLIST = new Array(["\r\n\r\n"], [/^VPN-Instance :[ ]*(\S*)$/]); FW_REGEX_VIEW.FIREWALL_POLICY_PUBLICCMP1 = /^(\S*)\r\n(?: description [\S ]+\r\n|) priority is (\d+)/; FW_REGEX_VIEW.FIREWALL_POLICY_PUBLICCMP2 = /^[A-Z|a-z][A-Za-z0-9]*$/; FW_REGEX_VIEW.FIREWALL_POLICY_PUBLICCMP3 = /^\S*$|^\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}[/ ](?:\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}|[0])$/; FW_REGEX_VIEW.FIREWALL_POLICY_ADDRMULTI = /^((?:(?:[1-2][0-5][0-5]|[0-9]|[1-9][0-9])\.){3}(?:[1-2][0-5][0-5]|[0-9]|[1-9][0-9]))\/((?:(?:[1-2][0-5][0-5]|[0-9]|[1-9][0-9])\.){3}(?:[1-2][0-5][0-5]|[0-9]|[1-9][0-9])|(?:[0-9]|[1-2][0-9]|3[0-2]))$|^((?:(?:[1-2][0-5][0-5]|[0-9]|[1-9][0-9])\.){3}(?:[1-2][0-5][0-5]|[0-9]|[1-9][0-9]))-((?:(?:[1-2][0-5][0-5]|[0-9]|[1-9][0-9])\.){3}(?:[1-2][0-5][0-5]|[0-9]|[1-9][0-9]))$/; FW_REGEX_VIEW.FIREWALL_POLICY_MASKMULTI = /^(?:(?:[0-9]|[1-9][0-9]|[1][0-9][0-9]|[2][0-4][0-9]|[2][5][0-5]))(?:\.(?:[0-9]|[1-9][0-9]|[1][0-9][0-9]|[2][0-4][0-9]|[2][5][0-5])){3}([/\\])(?:(?:(?:[0-9]|[1-9][0-9]|[1][0-9][0-9]|[2][0-4][0-9]|[2][5][0-5])\.){3}(?:[0-9]|[1-9][0-9]|[1][0-9][0-9]|[2][0-4][0-9]|[2][5][0-5])|(?:[0-9]|[1-2][0-9]|[3][0-2]))$/; FW_REGEX_VIEW.FIREWALL_POLICY_RANGEMULTI = /^(?:(?:[0-9]|[1-9][0-9]|[1][0-9][0-9]|[2][0-4][0-9]|[2][5][0-5])\.){3}(?:[0-9]|[1-9][0-9]|[1][0-9][0-9]|[2][0-4][0-9]|[2][5][0-5])-(?:(?:[0-9]|[1-9][0-9]|[1][0-9][0-9]|[2][0-4][0-9]|[2][5][0-5])\.){3}(?:[0-9]|[1-9][0-9]|[1][0-9][0-9]|[2][0-4][0-9]|[2][5][0-5])$/; FW_REGEX_VIEW.FIREWALL_POLICY_PUBLICCMP3MULTI = /^\S*$|^\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}[/\\](?:\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}|(?:[0-9]|[1-2][0-9]|3[0-2]))$|^\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}-\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}$/; FW_REGEX_VIEW.FIREWALL_POLICY_NUMBER = /^\d+$/; FW_REGEX_VIEW.FIREWALL_POLICY_OTHERMASK = /^((?:(?:[1][0-9][0-9]|[2][0-4][0-9]|[2][5][0-5]|[0-9]|[1-9][0-9])\.){3}(?:[1][0-9][0-9]|[2][0-4][0-9]|[2][5][0-5]|[0-9]|[1-9][0-9]))[\\]((?:(?:[1][0-9][0-9]|[2][0-4][0-9]|[2][5][0-5]|[0-9]|[1-9][0-9])\.){3}(?:[1][0-9][0-9]|[2][0-4][0-9]|[2][5][0-5]|[0-9]|[1-9][0-9])|0)$/; FW_REGEX_VIEW.FIREWALL_POLICY_PROTOCOLMASK = /^(?:[1][0-9][0-9]|[2][0-4][0-9]|[2][5][0-5]|[1-9]|[1-9][0-9])$/; FW_REGEX_VIEW.FIREWALL_POLICY_POLICYMASK = /(?:^(?:(?:[0-9]|[1-9][0-9]|[1][0-9][0-9]|[2][0-4][0-9]|[2][5][0-5]))(\.(?:[0-9]|[1-9][0-9]|[1][0-9][0-9]|[2][0-4][0-9]|[2][5][0-5])){3}(\/(?:(?:(?:[0-9]|[1-9][0-9]|[1][0-9][0-9]|[2][0-4][0-9]|[2][5][0-5])\.){3}(?:[0-9]|[1-9][0-9]|[1][0-9][0-9]|[2][0-4][0-9]|[2][5][0-5])|(?:[0-9]|[1-2][0-9]|[3][0-2]))|\\(?:(?:(?:[0-9]|[1-9][0-9]|[1][0-9][0-9]|[2][0-4][0-9]|[2][5][0-5])\.){3}(?:[0-9]|[1-9][0-9]|[1][0-9][0-9]|[2][0-4][0-9]|[2][5][0-5])|0))$|^(?:(?:[0-9]|[1-9][0-9]|[1][0-9][0-9]|[2][0-4][0-9]|[2][5][0-5])\.){3}(?:[0-9]|[1-9][0-9]|[1][0-9][0-9]|[2][0-4][0-9]|[2][5][0-5])-(?:(?:[0-9]|[1-9][0-9]|[1][0-9][0-9]|[2][0-4][0-9]|[2][5][0-5])\.){3}(?:[0-9]|[1-9][0-9]|[1][0-9][0-9]|[2][0-4][0-9]|[2][5][0-5])$)/; FW_REGEX_VIEW.FIREWALL_POLICY_POLICYSEARCH = /(?:^(?:(?:[0-9]|[1-9][0-9]|[1][0-9][0-9]|[2][0-4][0-9]|[2][5][0-5]))(\.(?:[0-9]|[1-9][0-9]|[1][0-9][0-9]|[2][0-4][0-9]|[2][5][0-5])){3}[/\\](?:(?:(?:[0-9]|[1-9][0-9]|[1][0-9][0-9]|[2][0-4][0-9]|[2][5][0-5])\.){3}(?:[0-9]|[1-9][0-9]|[1][0-9][0-9]|[2][0-4][0-9]|[2][5][0-5]))$|^(?:(?:[0-9]|[1-9][0-9]|[1][0-9][0-9]|[2][0-4][0-9]|[2][5][0-5])\.){3}(?:[0-9]|[1-9][0-9]|[1][0-9][0-9]|[2][0-4][0-9]|[2][5][0-5])-(?:(?:[0-9]|[1-9][0-9]|[1][0-9][0-9]|[2][0-4][0-9]|[2][5][0-5])\.){3}(?:[0-9]|[1-9][0-9]|[1][0-9][0-9]|[2][0-4][0-9]|[2][5][0-5])$)/; FW_REGEX_VIEW.FIREWALL_POLICY_PUBLICCMP4 = /^[a-zA-Z]\S*$/; FW_REGEX_VIEW.FIREWALL_POLICY_PUBLICCMP5 = /^(0|[1-9]|1[0-5]|max-reliability|max-throughput|min-delay|min-monetary-cost|immediate|normal)$/; FW_REGEX_VIEW.FIREWALL_POLICY_PUBLICCMP6 = /^\S*$/; FW_REGEX_VIEW.FIREWALL_POLICY_HEADSTR = /(?:nat-policy|policy) (zone|interzone) (?:vpn-instance \S+ |)(?:\S+ \S+ \S+|\S+)/; FW_REGEX_VIEW.FIREWALL_POLICY_MULTITYPE = /((?:zone|interzone) (?:vpn-instance \S+ |)(?:\S+ \S+ \S+|\S+)(?: shared| per-ip|)) policy (\d+)/ FW_REGEX_VIEW.FIREWALL_POLICY_PUBLICEVENT1 = /^(\S*)\r\n(?: description [\S ]+\r\n|) priority is (\d+)/; FW_REGEX_VIEW.FIREWALL_POLICY_PUBLICEVENT2 = /(nat-policy|policy) interzone (\S+) (\S+) (\S+)/; FW_REGEX_VIEW.FIREWALL_POLICY_PUBLICEVENT2VPN = /(nat-policy|policy) interzone \S+ \S+ (\S+) (\S+) (\S+)/; FW_REGEX_VIEW.FIREWALL_POLICY_PUBLICEVENT3 = / firewall default packet-filter is (\S+)/; FW_REGEX_VIEW.FIREWALL_POLICY_PUBLICEVENT4 = /policy (\d+)/; FW_REGEX_VIEW.FIREWALL_POLICY_PUBLICEVENT5 = / policy (\d+)/; FW_REGEX_VIEW.FIREWALL_POLICY_PUBLICEVENT6 = / policy (permit|deny) (service-set [\w\-]{1,} \((?:group|object|predefined)|\w+)[ ]+(?:source|)([ ]*address-set [\w\-]+| \d+.\d+.\d+.\d+ [0-9\.]+|)[ ]*(?:destination|)([ ]*address-set [\w\-]+| \d+.\d+.\d+.\d+ [0-9\.]+|)[ ]*(?:precedence|)([ ][a-z\-]+|)[ ]*(?:tos|)([ ][a-z0-9\-]+|)[ ]*(?:logging|)[ ]*(?:time-range|)([ ]*[\S]+|)[ ]*\((\d+) times matched\)*/; FW_REGEX_VIEW.FIREWALL_POLICY_PUBLICEVENT7 = / apply-to nat address-group (\d+) (no-pat|)/; FW_REGEX_VIEW.FIREWALL_POLICY_PUBLICEVENT8 = /policy \d+ \(Inactive\)[ ]*/; FW_REGEX_VIEW.FIREWALL_POLICY_PUBLICEVENT9 = /(nat-policy|policy) zone (\S+)/; FW_REGEX_VIEW.FIREWALL_POLICY_PUBLICEVENT9VPN = /(nat-policy|policy) zone \S+ \S+ (\S+)/; FW_REGEX_VIEW.FIREWALL_POLICY_PUBLICEVENT10 = / description ([\S ]*)/; FW_REGEX_VIEW.FIREWALL_POLICY_PUBLICEVENT11 = / service (\d*) icmp-type (\d+) (\d+)[ ]*([\S ]*)/; FW_REGEX_VIEW.FIREWALL_POLICY_PUBLICEVENT12 = / service (\d*) icmp-type (\S+)[ ]*([\S ]*)/; FW_REGEX_VIEW.FIREWALL_POLICY_PUBLICEVENT13 = /ip service-set \S+ protocol (\S+)/; FW_REGEX_VIEW.FIREWALL_POLICY_PUBLICEVENT14 = / service (\d+) source-port(?: range|) (\S+) (\S+) destination-port(?: range|)[ ]*(\S*)[ ]*(\S*)[ ]*([\S ]*)/; FW_REGEX_VIEW.FIREWALL_POLICY_PUBLICEVENT15 = /^"[\S ]+"$/; FW_REGEX_VIEW.FIREWALL_POLICY_NAT = /^\s+address-group (\d+)\s{0,2}(?:\((\S+)\)){0,1}\s{0,2}(no-pat|){0,1}/; FW_REGEX_VIEW.FIREWALL_POLICY_LONGLINK = /^\s+apply-to (long-link)/; FW_REGEX_VIEW.FIREWALL_POLICY_ASPF = /^\s+apply-to aspf (java-blocking|)[ ]*(activex-blocking|)[ ]*(user-define|)/; FW_REGEX_VIEW.FIREWALL_POLICY_ID = /^\s+(?:nat-policy|policy) (\d+)[ ]*(\(Inactive\)|)\((\d+) times matched\)/; FW_REGEX_VIEW.FIREWALL_POLICY_PARAMS0 = /^\s+action (permit|deny)\s*$/; FW_REGEX_VIEW.FIREWALL_POLICY_PARAMS0_ = /^\s+action (no-nat|source-nat)\s*$/; FW_REGEX_VIEW.FIREWALL_POLICY_PARAMS1 = /^\s+(?:nat-policy|policy) precedence ([a-z\-]+)\s*$/; FW_REGEX_VIEW.FIREWALL_POLICY_PARAMS2 = /^\s+(?:nat-policy|policy) tos ([a-z0-9\-]+)\s*$/; FW_REGEX_VIEW.FIREWALL_POLICY_PARAMS3 = /^\s+(?:nat-policy|policy) (logging)\s*$/; FW_REGEX_VIEW.FIREWALL_POLICY_PARAMS4 = /^\s+(?:nat-policy|policy) time-range ([\S]+)\s*$/; FW_REGEX_VIEW.FIREWALL_POLICY_SERVICE = /^\s+(?:nat-policy|policy) service (service-set \S+(?: \((?:object|group|predefined)\)|))\s*$/; FW_REGEX_VIEW.FIREWALL_POLICY_SERVICESET = /^\s+(?:nat-policy|policy) service service-set (\S+) \((?:object|group|predefined)\)\s*$/; FW_REGEX_VIEW.FIREWALL_POLICY_SOURCE = /^\s+(?:nat-policy|policy) source (address-set \S+ \((?:object|group)\)|\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3} (?:\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}|0|(?:mask (?:\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}|[3][0-2]|[1-2][0-9]|[1-9])|))|any|range \d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3} \d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3})\s*$/; FW_REGEX_VIEW.FIREWALL_POLICY_SOURCEIP = /^\s+(?:nat-policy|policy) source (\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3} (?:(?:mask (?:\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}|[3][0-2]|[1-2][0-9]|[1-9])|)|\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}|0)|range \d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3} \d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3})\s*$/; FW_REGEX_VIEW.FIREWALL_POLICY_SOURCESET = /^\s+(?:nat-policy|policy) source address-set (\S+) \((?:object|group)\)\s*$/; FW_REGEX_VIEW.FIREWALL_POLICY_DEALADDR = /address-set (\S+) \((object|group)\)/; FW_REGEX_VIEW.FIREWALL_POLICY_DEALSERV = /service-set (\S+)(?: \((object|group|predefined)\)|)/; FW_REGEX_VIEW.FIREWALL_POLICY_ALLSET = /^Address-set: (\S+)\s*$/; FW_REGEX_VIEW.FIREWALL_POLICY_DESTINATION = /^\s+(?:nat-policy|policy) destination (address-set \S+ \((?:object|group)\)|\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3} (?:\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}|0|(?:mask (?:\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}|[3][0-2]|[1-2][0-9]|[1-9])|))|any|range \d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3} \d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3})\s*$/; FW_REGEX_VIEW.FIREWALL_POLICY_DESTINATIONIP = /^\s+(?:nat-policy|policy) destination (\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3} (?:(?:mask (?:\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}|[3][0-2]|[1-2][0-9]|[1-9])|)|\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}|0)|range \d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3} \d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3})\s*$/; FW_REGEX_VIEW.FIREWALL_POLICY_DESTINATIONSET = /^\s+(?:nat-policy|policy) destination address-set (\S+) \((?:object|group)\)\s*$/; FW_REGEX_VIEW.FIREWALL_POLICY_ALLSERVSET_ARRAYPARSE = /^\s+(\S+)\s+(?:Group|Object|Predefined) service set\s*$/; FW_REGEX_VIEW.FIREWALL_POLICY_ALLSERVSET = /^\s+(\S+)\s+(Group|Object|Predefined) service set\s*$/; FW_REGEX_VIEW.FIREWALL_POLICY_IPSPOLICY = / policy ips (.*)/; FW_REGEX_VIEW.FIREWALL_POLICY_AVPOLICY = / policy av (.*)/; FW_REGEX_VIEW.FIREWALL_POLICY_URLPOLICY = / policy url-filter (.*)/; FW_REGEX_VIEW.FIREWALL_POLICY_HTTP_ACCESS_ENABLE = / http-access log enable/; FW_REGEX_VIEW.FIREWALL_POLICY_DISDESCRIPTION = new Array(['\r\n'],[/^\s+([^A-Z]*) XXXXXXXXXXXXXX\s*$/]); FW_REGEX_VIEW.FIREWALL_POLICY_DISDESCRIPTION2 = /^\s+([^A-Z]*) XXXXXXXXXXXXXX\s*$/; FW_REGEX_VIEW.FIREWALL_POLICY_MAIL_FILTER_POLICY = /\s*policy mailfilter\s*(\S+)/; FW_REGEX_VIEW.FIREWALL_POLICY_RBL_FILTER_POLICY = /\s*(policy\s*rbl-filter)/; FW_REGEX_VIEW.FIREWALL_POLICY_EASY_IP=/\s*easy-ip\s*(\S+)/; FW_REGEX_VIEW.FIREWALL_POLICY_TRANSMITGRID = new Array(["\r\n\r\n"], [FW_REGEX_VIEW.FIREWALL_POLICY_ID], [FW_REGEX_VIEW.FIREWALL_POLICY_PARAMS0], [FW_REGEX_VIEW.FIREWALL_POLICY_PARAMS1], [FW_REGEX_VIEW.FIREWALL_POLICY_PARAMS2], [FW_REGEX_VIEW.FIREWALL_POLICY_PARAMS3], [FW_REGEX_VIEW.FIREWALL_POLICY_PARAMS4], [ FW_REGEX_VIEW.FIREWALL_POLICY_SERVICE, "+"], [ FW_REGEX_VIEW.FIREWALL_POLICY_SOURCE, "+"], [ FW_REGEX_VIEW.FIREWALL_POLICY_DESTINATION, "+"], [FW_REGEX_VIEW.FIREWALL_POLICY_IPSPOLICY], [FW_REGEX_VIEW.FIREWALL_POLICY_AVPOLICY], [FW_REGEX_VIEW.FIREWALL_POLICY_MAIL_FILTER_POLICY], [FW_REGEX_VIEW.FIREWALL_POLICY_RBL_FILTER_POLICY], [FW_REGEX_VIEW.FIREWALL_POLICY_URLPOLICY], [FW_REGEX_VIEW.FIREWALL_POLICY_HTTP_ACCESS_ENABLE] ); FW_REGEX_VIEW.FIREWALL_POLICY_NATGRID = new Array(["\r\n\r\n"], [FW_REGEX_VIEW.FIREWALL_POLICY_ID], [FW_REGEX_VIEW.FIREWALL_POLICY_PARAMS0_], [FW_REGEX_VIEW.FIREWALL_POLICY_PARAMS1], [FW_REGEX_VIEW.FIREWALL_POLICY_PARAMS2], [FW_REGEX_VIEW.FIREWALL_POLICY_PARAMS3], [FW_REGEX_VIEW.FIREWALL_POLICY_PARAMS4], [ FW_REGEX_VIEW.FIREWALL_POLICY_SERVICE, "+"], [ FW_REGEX_VIEW.FIREWALL_POLICY_SOURCE, "+"], [ FW_REGEX_VIEW.FIREWALL_POLICY_DESTINATION, "+"], [FW_REGEX_VIEW.FIREWALL_POLICY_NAT], [FW_REGEX_VIEW.FIREWALL_POLICY_EASY_IP] ); FW_REGEX_VIEW.FIREWALL_POLICY_GETSERVICE = new Array(['\r\n'], [FW_REGEX_VIEW.FIREWALL_POLICY_SERVICESET]); FW_REGEX_VIEW.FIREWALL_POLICY_GETSOURCE = new Array(['\r\n'], [FW_REGEX_VIEW.FIREWALL_POLICY_SOURCESET]); FW_REGEX_VIEW.FIREWALL_POLICY_GETSOURCEIP = new Array(['\r\n'], [FW_REGEX_VIEW.FIREWALL_POLICY_SOURCEIP]); FW_REGEX_VIEW.FIREWALL_POLICY_RESTADDRESSSET = new Array(['\r\n'], [/^\s+(\S+)\s+(?:Group|Object) address set\s*$/]); FW_REGEX_VIEW.FIREWALL_POLICY_RESTSERVICESET = new Array(['\r\n'], [FW_REGEX_VIEW.FIREWALL_POLICY_ALLSERVSET]); FW_REGEX_VIEW.FIREWALL_POLICY_GETDESTINATIONIP = new Array(['\r\n'], [FW_REGEX_VIEW.FIREWALL_POLICY_DESTINATIONIP]); FW_REGEX_VIEW.FIREWALL_POLICY_GETDESTINATION = new Array(['\r\n'], [FW_REGEX_VIEW.FIREWALL_POLICY_DESTINATIONSET]); FW_REGEX_VIEW.FIREWALL_POLICY_LOGINGRID = new Array(["\r\n\r\n"], [FW_REGEX_VIEW.FIREWALL_POLICY_ID], [FW_REGEX_VIEW.FIREWALL_POLICY_PARAMS], [ FW_REGEX_VIEW.FIREWALL_POLICY_SERVICE, "+"], [ FW_REGEX_VIEW.FIREWALL_POLICY_SOURCE, "+"]); FW_REGEX_VIEW.FIREWALL_POLICY_TRAFFICSTAT = new Array(['\r\n\r\n'], [/^\s*VPN: (\S+ \S+\->\S+)\s+Policy ID:(\d+)\s*$/], [/^\s*(.+) ([0-9\.\[\]:]+)-->([0-9\.\[\]:]+)\s*$/], [/^\s*<-- packets:(\d+) bytes:(\d+) --> packets:(\d+) bytes:(\d+)\s*$/], [/^\s*CreatTime: (\S+ \S+)\s+Duration:\s+(\S+)\s*$/], [/^\s*CloseReason:\s+(\S+)\s*$/]); FW_REGEX_VIEW.FIREWALL_POLICY_POLICYID = /^\d*$/; FW_REGEX_VIEW.FIREWALL_SERVICENAME = /^(?!ip$)[^\d].*$/ FW_REGEX_VIEW.FIREWALL_SERVICE_PORT = /^(?:(?:\d{1,5}-\d{1,5}|\d{1,5}),){0,63}(?:\d{1,5}-\d{1,5}|\d{1,5})$/; FW_REGEX_VIEW.FIREWALL_NATADDRESSPOOL_HEADARY = /(\d+)[ ]*(\d+)/; FW_REGEX_VIEW.FIREWALL_USERDEFINEDAPPLICATION_PORT = /^(?:[1-9]\d{0,4}-[1-9]\d*|[1-9]\d{0,4})$/; FW_REGEX_VIEW.FIREWALL_CARCLASSNAME = /^[^\d].*$/; FW_REGEX_VIEW.FIREWALL_ADDRESSNAME = /^(?!any$)[^\d].*$/; FW_REGEX_VIEW.FIREWALL_ADDRESSMAPPING = ''; FW_REGEX_VIEW.FIREWALL_ADDRESSMAPPING_PORT = /\d+([a-z|A-z])+/; FW_REGEX_VIEW.VPN_IPSEC_PAGEING = /\s*(\d+)\s+(\d+)/; FW_REGEX_VIEW.VPN_IKE_PROPOSAL_UNUSED = /ike proposal unused\s*:\s*(\d+)/; FW_REGEX_VIEW.VPN_IPSEC_POLICY_COUNT = /\r\n\w*[\[|\<](?:\S| )*[\]|\>]/; FW_REGEX_VIEW.VPN_IPSEC_POLICY_TPL_SEQUENCE = /Policy-Template: (\S+) sequence: (\d+)/; FW_REGEX_VIEW.VPN_IPSEC_NAME_VALID = /^[^-]*$/; FW_REGEX_VIEW.VPN_IPSEC_VALIDATE_HEX = /^[0-9a-fA-F]*$/; FW_REGEX_VIEW.VPN_IPSEC_VALIDATE_NOT_BLANK = /^\S*$/; FW_REGEX_VIEW.VPN_IPSEC_VALIDATE_NOT_BLANK2 = /^\S+$/; FW_REGEX_VIEW.VPN_IPSEC_VALIDATE_POLICY_FULLNAME = /^[^-]{1,15}(-(\d{1,4}|10000))?$/; FW_REGEX_VIEW.VPN_IPSEC_ADD_RULE_POLICY_NAME = /(.{1,15})-(\d+)[ ]+(\S{1,30})[ ]+(\d+)/; FW_REGEX_VIEW.VPN_IPSEC_ADD_ACL_POLICY_NAME = /(.{1,15})-(\d+)[ ]+(\S{1,30})[ ]{1,4}(\d*)/; FW_REGEX_VIEW.VPN_IPSEC_POLICY_FULLNAME = /^(.{1,15})-(\d+)/; FW_REGEX_VIEW.VPN_IPSEC_POLICY_FULLNAME_AND_TYPE = /(.{1,15}-\d+)-(\S+)/; FW_REGEX_VIEW.VPN_IPSEC_POLICY_APPLY_ACL = /Policy:[ ]*(\S+)-(isakmp|template|manual), ACL:[ ]*(\d{4})/; FW_REGEX_VIEW.VPN_IPSEC_POLICY_NAME_SEQUENCE_AND_TYPE = /(.{1,15})-(\d+)-(\S+)/; FW_REGEX_VIEW.VPN_IPSEC_DIS_IKE_PEER_POLICY = /^\s*[a|A]pplied[ ]*to[ ]*\d+[ ]*\S*:[ ]*(.*)/; FW_REGEX_VIEW.VPN_IPSEC_DIS_IKE_PEER_ADDRESS = /^\s*[p|P]eer[ ]*[i|I][p|P][ ]*address:[ ]*(\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3})\s*?$/; FW_REGEX_VIEW.VPN_IPSEC_POLICY_TEMPLATE_MAX_NUM = /current ipsec policy-template number: (\d+)/; FW_REGEX_VIEW.VPN_IPSEC_POLICY_MAX_NUM = /current ipsec policy number: (\d+)/; FW_REGEX_VIEW.VPN_IPSEC_POLICY_EXTEND_ACL = new Array( [/=+\r\nIPsec\s/], [/^Policy Group: \"(.*)\"/], [/^interface: {(.*)}/], [ /^((.*)-\d+)-(manual|isakmp|template),\s*ACL:\s(\d+).*(\s*rule (\d+) (permit|deny) (\S+)[ ]*(?:source\s|)(\s*\d+.\d+.\d+.\d+\s[0-9\.]+|)\s(?:source-port\s|)\s*(?:((?:(?:eq|lt|gt)\s*(?:\d+|\S*))|(?:range\s*[\S\d]+[ ]+[\S\d]+))|)\s*(?:destination\s|)(\s*\d+.\d+.\d+.\d+\s[0-9\.]+|)\s*(?:destination-port\s*|)\s*(?:((?:(?:eq|lt|gt)\s*(?:\d+|\S*))|(?:range\s*[\S\d]+[ ]+[\S\d]+))|)\s*(?:time-range|)\s*([\S\-]+|)\s*(?:\(\d*\stimes matched\)))/, '+']); FW_REGEX_VIEW.VPN_IPSEC_POLTPLNAME = /^\s*policy[ ]template[ ]name:\s*(\S+)/; FW_REGEX_VIEW.VPN_IPSEC_POLTPLNUM = /^\s*sequence[ ]number:\s*(\d+)/; FW_REGEX_VIEW.VPN_IPSEC_INTERFACE_APPLY = /\r\n ipsec policy (\".+\"|\S+)(?:\s(auto-neg))?/; FW_REGEX_VIEW.VPN_IPSEC_POLICY_AND_INTERFACE_NAME = /^(\S+)(?:[ ].*[ ]|)(GigabitEthernet\d\/\d\/\d.\d+|GigabitEthernet\d\/\d\/\d|Virtual-Template\d+|)/; FW_REGEX_VIEW.VPN_IPSEC_D = /^\d/; FW_REGEX_VIEW.VPN_IPSEC_SERVICE_SET = /^service-set (\S+)/; FW_REGEX_VIEW.VPN_IPSEC_INTERFACE_NAME = /^\s*Using[ ]*interface:[ ]*{(.*|)}/; FW_REGEX_VIEW.VPN_IPSEC_RULE_COUNT = /ACL\s+\d+,\s*(\d+)\s*rule/; FW_REGEX_VIEW.VPN_IPSEC_UNUSED_RULE = /^\s*The ACL (\d+) is unused.*$/; FW_REGEX_VIEW.VPN_IPSEC_NO_SUCH = /^\s*(No) such an/; FW_REGEX_VIEW.VPN_IPSEC_SEARCH_RELATEACL_BEGIN = "Policy\\s*:\\s*"; FW_REGEX_VIEW.VPN_IPSEC_SEARCH_RELATEACL_END = "-\\w*,\\s*ACL:\\s(\\d+)"; FW_REGEX_VIEW.VPN_IPSEC_SEARCH_SEQUENCENUM_BEGIN = "^\\s*sequence\\snumber:\\s("; FW_REGEX_VIEW.VPN_IPSEC_SEARCH_SEQUENCENUM_END = ")"; FW_REGEX_VIEW.VPN_IPSEC_TMP_REGEX_SEARCH_IKE_PROPOSAL_BEGIN = "^\\s+"; FW_REGEX_VIEW.VPN_IPSEC_TMP_REGEX_SEARCH_IKE_PROPOSAL_END = "\\s+\\S*\\s+(\\S+)\\s+(AES|192-AES|256-AES|DES_CBC|3DES_CBC|)\\s+(\\S+)\\s+(\\d+)"; FW_REGEX_VIEW.VPN_IPSEC_IKE_PHASE1V2INTEGRITYALGORITHM = /integrity-algorithm\s(\S*)/; FW_REGEX_VIEW.VPN_IPSEC_IKE_REMOTEADDRESSPOOL = /[i|I][p|P] [address ]*pool: (\d{1,2})/; FW_REGEX_VIEW.VPN_IPSEC_IKE_AUTHENTICADDRESS = /[a|A]uthentic [i|I][p|P] address: (\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3})(?:[ ](\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3})|)/; FW_REGEX_VIEW.VPN_IPSEC_IKE_IPADDRESSVALIDATE = /^(\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3})$/; FW_REGEX_VIEW.VPN_DIS_IPSEC_IPSEC_ACL = /^\s*security\s*data\s*flow\s*:\s*(\d+|)/; FW_REGEX_VIEW.VPN_DIS_IPSEC_PROPOSAL_APPLIED = /^\s*applied\s*to\s*pol\S*\s*:\s*(\S+|)/; FW_REGEX_VIEW.VPN_IPSEC_IPSEC_POLICY_DIS_THIS_CMD1 = /^\s*local-address[ ]*(\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3})/; FW_REGEX_VIEW.VPN_IPSEC_IPSEC_POLICY_DIS_THIS_CMD2 = /sa[ ]duration[ ]time-based\s(\d+|)/; FW_REGEX_VIEW.VPN_IPSEC_IPSEC_POLICY_DIS_THIS_CMD3 = /sa[ ]duration[ ]traffic-based\s(\d+|)/; FW_REGEX_VIEW.VPN_IPSEC_DIS_IKE_POLICY_CMD1 = /^\s*ike-peer[ ]+name:[ ]*(".{1,13}"|\S{1,15}|)/; FW_REGEX_VIEW.VPN_IPSEC_DIS_IKE_POLICY_CMD2 = /^\s*proposal[ ]+name:[ ]*(".{1,13}"|\S{1,15}|)/; FW_REGEX_VIEW.VPN_IPSEC_DIS_IKE_POLICY_CMD6 = /^\s*proposal[ ]+name:[ ]*(".{1,13}"|\S{1,15}|)/; FW_REGEX_VIEW.VPN_IPSEC_DIS_IKE_POLICY_CMD3 = /^\s*perfect[ ]+forward[ ]*secrecy:[ ]*(.*)/; FW_REGEX_VIEW.VPN_IPSEC_DIS_IKE_POLICY_CMD4 = /^\s*IPsec[ ]+sa[ ]*local[ ]*duration\(time[ ]*based\):[ ]*(\d+|)[ ]*seconds/; FW_REGEX_VIEW.VPN_IPSEC_DIS_IKE_POLICY_CMD5 = /^\s*IPsec[ ]+sa[ ]*local[ ]*duration\(traffic[ ]*based\):[ ]*(\d+|)[ ]*kilobytes/; FW_REGEX_VIEW.VPN_IPSEC_DIS_IKE_POLICY_CMD7 = /^\s*proposal[ ]+name:[ ]*(.+)/; FW_REGEX_VIEW.VPN_IPSEC_DIS_IPSEC_PROPOSAL_CMD1 = /^\s*encapsulation[ ]+mode:[ ]*(transport|tunnel)/; FW_REGEX_VIEW.VPN_IPSEC_DIS_IPSEC_PROPOSAL_CMD2 = /^\s*transform:\s(ah-esp|esp|ah)-new/; FW_REGEX_VIEW.VPN_IPSEC_DIS_IPSEC_PROPOSAL_CMD3 = /^\s*ESP[ ]protocol:[ ]*(?:not use authentication|authentication)[ ]*(md5|sha1|)(?:\S+|),[ ]+(?:not use encryption|encryption)[ ]*(\S+|)/; FW_REGEX_VIEW.VPN_IPSEC_DIS_IPSEC_PROPOSAL_CMD4 = /^\s*AH[ ]protocol:[ ]*authentication[ ]*(md5|sha1|)\S+/; FW_REGEX_VIEW.VPN_IPSEC_DIS_IPSEC_TEPLETE_REVERSE_ROUTE = /Reverse route injection function: (enable|disable)/; FW_REGEX_VIEW.VPN_IPSEC_DIS_IPSEC_TEPLETE_NEXT_HOP = /Reverse route nexthop: ([\d\.]*)/; FW_REGEX_VIEW.VPN_IPSEC_DIS_IPSEC_TEPLETE_PREFERENCE = /Reverse route preference: ([\d]*)/; FW_REGEX_VIEW.VPN_IPSEC_DIS_MANUAL_POLICY_CMD1 = /^\s+tunnel[ ]+local[ ]+address:[ ]+(\d{1,3}.\d{1,3}.\d{1,3}.\d{1,3})/; FW_REGEX_VIEW.VPN_IPSEC_DIS_MANUAL_POLICY_CMD2 = /^\s+tunnel[ ]+remote[ ]+address:[ ]+(\d{1,3}.\d{1,3}.\d{1,3}.\d{1,3})/; FW_REGEX_VIEW.VPN_IPSEC_DIS_MANUAL_POLICY_CMD3 = /^\s+proposal[ ]+name:[ ]*(\S+|)/; FW_REGEX_VIEW.VPN_IPSEC_DIS_MANUAL_POLICY_CMD4 = /^\s+AH[ ]+spi:[ ]*(\S+|)/; FW_REGEX_VIEW.VPN_IPSEC_DIS_MANUAL_POLICY_CMD5 = /^\s+AH[ ]+string-key:\s*(.*)\s*$/; FW_REGEX_VIEW.VPN_IPSEC_DIS_MANUAL_POLICY_CMD6 = /^\s+AH[ ]+authentication[ ]+hex[ ]+key:[ ]*(\S+|)/; FW_REGEX_VIEW.VPN_IPSEC_DIS_MANUAL_POLICY_CMD7 = /^\s+ESP[ ]+spi:[ ]*(\S+|)/; FW_REGEX_VIEW.VPN_IPSEC_DIS_MANUAL_POLICY_CMD8 = /^\s+ESP[ ]+string-key:\s*(.*)\s*$/; FW_REGEX_VIEW.VPN_IPSEC_DIS_MANUAL_POLICY_CMD9 = /^\s+ESP[ ]+encryption[ ]+hex[ ]+key:[ ]*(\S\S+|)/; FW_REGEX_VIEW.VPN_IPSEC_DIS_MANUAL_POLICY_CMD10 = /^\s+ESP[ ]+authentication[ ]+hex[ ]+key:[ ]*(\S+|)/; FW_REGEX_VIEW.VPN_IPSEC_DIS_MANUAL_POLICY_CMD11 = /^\s+AH[ ]+spi:[ ]*(\S+|)/; FW_REGEX_VIEW.VPN_IPSEC_DIS_MANUAL_POLICY_CMD12 = /^\s+AH[ ]+string-key:\s*(.*)\s*$/; FW_REGEX_VIEW.VPN_IPSEC_DIS_MANUAL_POLICY_CMD13 = /^\s+AH[ ]+authentication[ ]+hex[ ]+key:[ ]*(\S+|)/; FW_REGEX_VIEW.VPN_IPSEC_DIS_MANUAL_POLICY_CMD14 = /^\s+ESP[ ]+spi:[ ]*(\S+|)/; FW_REGEX_VIEW.VPN_IPSEC_DIS_MANUAL_POLICY_CMD15 = /^\s+ESP[ ]+string-key:\s*(.*)\s*$/; FW_REGEX_VIEW.VPN_IPSEC_DIS_MANUAL_POLICY_CMD16 = /^\s+ESP[ ]+encryption[ ]+hex[ ]+key:[ ]*(\S+|)/; FW_REGEX_VIEW.VPN_IPSEC_DIS_MANUAL_POLICY_CMD17 = /^\s+ESP[ ]+authentication[ ]+hex[ ]+key:[ ]*(\S+|)/; FW_REGEX_VIEW.VPN_IPSEC_MANUAL_NAMENOTQUOTATION = /^\"$/; FW_REGEX_VIEW.VPN_IPSEC_DIS_IKE_PEER_CMD1 = /^\s*[E|e]xchange[ ]*mode:[ ]*(\S+)/; FW_REGEX_VIEW.VPN_IPSEC_DIS_IKE_PEER_CMD2 = /^\s*[P|p]re-shared[ |-]key:[ ]*(.{1,128}|)/; FW_REGEX_VIEW.VPN_IPSEC_DIS_IKE_PEER_CMD3 = /^\s*[L|l]ocal[ ]*[I|i][D|d][ ]*type:\s*(name|IP|FQDN)/; FW_REGEX_VIEW.VPN_IPSEC_DIS_IKE_PEER_CMD4 = /^\s*[P|p]roposal:\s*(\d+)/; FW_REGEX_VIEW.VPN_IPSEC_DIS_IKE_PEER_CMD5 = /^\s*[P|p]eer[ ]*[I|i][P|p][ ]*address:[ ]*(\d{1,3}.\d{1,3}.\d{1,3}.\d{1,3}|)[ ]*(\d{1,3}.\d{1,3}.\d{1,3}.\d{1,3}|)/; FW_REGEX_VIEW.VPN_IPSEC_DIS_IKE_PEER_CMD6 = /^\s*[P|p]eer[ ]name:\s*(.+|)/; FW_REGEX_VIEW.VPN_IPSEC_DIS_IKE_PEER_CMD7 = /^\s*[N|n][A|a][T|t][ ]*traversal:[ ]*(\S+)/; FW_REGEX_VIEW.VPN_IPSEC_DIS_IKE_PEER_CMD8 = /^\s*[p|P]roposal:[ ]*(\d+)/; FW_REGEX_VIEW.VPN_IPSEC_DIS_IKE_PEER_CMD9 = /[P|p]eer domain[ ]+name:\s*(\S*)/; FW_REGEX_VIEW.VPN_IPSEC_DIS_IKE_PEER_CMD_VPN = /VPN[ ]\S+:[ ]?(.*)/; FW_REGEX_VIEW.VPN_IPSEC_DIS_IKE_LOCAL_NAME_CMD = /\s*ike[ ]local-name\s+([\S ]+)\s*/; FW_REGEX_VIEW.VPN_IPSEC_IKE_POLICYMODE_CMD = /^[\s]*mode:\s*(\S+)/; FW_REGEX_VIEW.VPN_IPSEC_DIS_IPSEC_STATISTICS_CMD1 = /\s*input\/output\s*security\s*packets:\s*(\d+\/\d+)/; FW_REGEX_VIEW.VPN_IPSEC_DIS_IPSEC_STATISTICS_CMD2 = /\s*input\/output security bytes:\s*(\d+\/\d+)/; FW_REGEX_VIEW.VPN_IPSEC_DIS_IPSEC_STATISTICS_CMD3 = /\s*input\/output\s*dropped\s*security\s*packets:\s*(\d+\/\d+)/; FW_REGEX_VIEW.VPN_IPSEC_DIS_IPSEC_STATISTICS_CMD4 = /\s*no\s*enough\s*memory:\s*(\d+)/; FW_REGEX_VIEW.VPN_IPSEC_DIS_IPSEC_STATISTICS_CMD5 = /\s*can't\s*find\s*SA:\s*(\d+)/; FW_REGEX_VIEW.VPN_IPSEC_DIS_IPSEC_STATISTICS_CMD6 = /\s*queue\s*is\s*full:\s*(\d+)/; FW_REGEX_VIEW.VPN_IPSEC_DIS_IPSEC_STATISTICS_CMD7 = /\s*authentication\s*is\s*failed:\s*(\d+)/; FW_REGEX_VIEW.VPN_IPSEC_DIS_IPSEC_STATISTICS_CMD8 = /\s*wrong\s*length:\s*(\d+)/; FW_REGEX_VIEW.VPN_IPSEC_DIS_IPSEC_STATISTICS_CMD9 = /\s*replay\s*packet:\s*(\d+)/; FW_REGEX_VIEW.VPN_IPSEC_DIS_IPSEC_STATISTICS_CMD10 = /\s*too\s*long\s*packet:\s*(\d+)/; FW_REGEX_VIEW.VPN_IPSEC_DIS_IPSEC_STATISTICS_CMD11 = /\s*wrong\s*SA:\s*(\d+)/; FW_REGEX_VIEW.AUTHPOLICY_IPRANGE=/^(?:[0-9]|[1-9]\d|[1]\d\d|[2][0-4]\d|[2][5][0-5])(?:\.(?:[0-9]|[1-9]\d|[1]\d\d|[2][0-4]\d|[2][5][0-5])){2}(?:\.(?:[0-9]|[1-9]\d|[1]\d\d|[2][0-4]\d|[2][5][0-5]))\-(?:[0-9]|[1-9]\d|[1]\d\d|[2][0-4]\d|[2][5][0-5])(?:\.(?:[0-9]|[1-9]\d|[1]\d\d|[2][0-4]\d|[2][5][0-5])){2}(?:\.(?:[0-9]|[1-9]\d|[1]\d\d|[2][0-4]\d|[2][5][0-5]))$/; FW_REGEX_VIEW.AUTHPOLICY_IPRANGE2 = /^(?:[0-9]|[1-9]\d|[1]\d\d|[2][0-4]\d|[2][5][0-5])(?:\.(?:[0-9]|[1-9]\d|[1]\d\d|[2][0-4]\d|[2][5][0-5])){2}(?:\.(?:[0-9]|[1-9]\d|[1]\d\d|[2][0-4]\d|[2][5][0-5]))$/; FW_REGEX_VIEW.AUTHPOLICY_POLICYNAME=/^([^\"]*[\"]+[^\"]+)|([^\"]+[\"]+[^\"]*)$/; FW_REGEX_VIEW.VPN_IPSEC_DIS_IPSEC_STATISTICS_ENCTY_FAIL = /encry\s*fail:\s*(\d+)/; FW_REGEX_VIEW.VPN_IPSEC_DIS_IPSEC_STATISTICS_DECTY_FAIL = /decry\s*fail:\s*(\d+)/; FW_REGEX_VIEW.VPN_IPSEC_DIS_IPSEC_STATISTICS_CHECK_ACL = /check\s*acl\s*car:\s*(\d+)/; FW_REGEX_VIEW.VPN_IPSEC_DIS_IPSEC_STATISTICS_SPEED_LIMIT = /speed\s*limit\s*car:\s*(\d+)/; FW_REGEX_VIEW.VPN_IPSEC_DIS_IPSEC_STATISTICS_PRE_CHECK = /pre-check\s*fail:\s*(\d+)/; FW_REGEX_VIEW.VPN_IPSEC_DIS_IPSEC_STATISTICS_SUCCEED_CHECK = /succeed-check\s*fail:\s*(\d+)/; FW_REGEX_VIEW.VPN_IPSEC_DIS_IPSEC_STATISTICS_OTHER = /other\s*reasons:\s*(\d+)/; FW_REGEX_VIEW.VPN_IPSEC_DIS_IPSEC_SA_BRIEF = /^\s*(\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3})\s+(\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3})\s+(\d+)\s+(\S+)\s+(\S+)/; FW_REGEX_VIEW.VPN_IPSEC_DIS_IKE_SA = /(\d+)\s+(\S+)\s+(\S+)\s+(\S+)\s+(\S+)/; FW_REGEX_VIEW.VPN_IPSEC_DIS_ACL_CMD = /^\s*rule (\d+) (permit|deny) (service-set\s\S+|\S+)[ ]*(?:source\s|)(address-set\s\S+|\s*\d+.\d+.\d+.\d+\s[0-9\.]+|)\s(?:source-port\s|)\s*(eq\s*1701|)\s*(?:destination\s|)(address-set\s\S+|\s*\d+.\d+.\d+.\d+\s[0-9\.]+|)\s*(?:destination-port\s*|)\s*(eq\s*1701|)\s*(?:precedence|)(\s[a-z\-]+|)\s*(?:tos|)(\s[a-z0-9\-]+|)\s*(?:logging|)\s*(?:time-range|)(\s*[\S\-]+|)\s*(?:\(\d*\stimes matched\))/; FW_REGEX_VIEW.VPN_IPSEC_DIS_IKE_PROPOSAL_CMD = /^\s*(\d+)/; FW_REGEX_VIEW.VPN_IPSEC_DIS_IKE_PEER_BRIEF = /^\s*(.{1,15})\s*(v1|v2|v1v2)\s*(?:main|aggressive|N\/A)/; FW_REGEX_VIEW.VPN_IPSEC_DIS_IPSEC_POLICY_BRIEF_CMD = /^\s*(\S+-\d+)[ ]+(\S+)[ ]+(\d+|)[ ]+(?:\S+|)\s+(?:\d{1,3}.\d{1,3}.\d{1,3}.\d{1,3}|)[ ]*(?:\d{1,3}.\d{1,3}.\d{1,3}.\d{1,3}|)/; FW_REGEX_VIEW.VPN_IPSEC_DIS_IPSEC_POLICY_BRIEF_CMD1 = /^\s*(\S+)-(\d+)[ ]+isakmp[ ]+(?:\d+|)[ ]+(\S+|)[ ]*(?:\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}|)/; FW_REGEX_VIEW.VPN_IPSEC_DIS_IPSEC_POLICY_BRIEF_CMD2 = /^\s*(\S+)-\d+\s*(?:manual|isakmp|template|)/; FW_REGEX_VIEW.VPN_IPSEC_DIS_IPSEC_POLICY_BRIEF_CMD3 = /^\s*(.{1,15}-\d+)[ ]+(\?i)/; FW_REGEX_VIEW.VPN_IPSEC_DIS_IPSEC_POLICY_BRIEF_CMD4 = /^\s*(.{1,15}-\d+)[ ]+(\?t)/; FW_REGEX_VIEW.VPN_IPSEC_DIS_IPSEC_POLICY_BRIEF_CMD5 = /^\s*(.{1,15}-\d+)[ ]+(\?m)/; FW_REGEX_VIEW.VPN_IPSEC_DIS_IPSEC_POLICY_BRIEF_CMD6 = /^\s*(.{1,15}-\d+)[ ]+(\?m)[ ]+(?:\d+[ ]+|)[ ]*(?:\S+\r\n|)[ ]*(|\d{1,3}.\d{1,3}.\d{1,3}.\d{1,3})[ ]*(|\d{1,3}.\d{1,3}.\d{1,3}.\d{1,3})$/; FW_REGEX_VIEW.VPN_IPSEC_DIS_IPSEC_POLICY_BRIEF_CMD7 = /^\s*(\S+-\d+)\s*(\?i|\?m|\?t)/; FW_REGEX_VIEW.VPN_IPSEC_DIS_IPSEC_POLICY_NAME_EXTEND_ACL_CMD = /^\s*:\s*(\S+-\d+)-(manual|isakmp|template),\s*ACL:\s(\d+)/; FW_REGEX_VIEW.VPN_IPSEC_DIS_INTERFACE_CMD = /interface\s+(GigabitEthernet\d\/\d\/\d\.\d+|GigabitEthernet\d\/\d\/\d|Virtual-Template\d+)/; FW_REGEX_VIEW.VPN_IPSEC_DIS_INTERFACE_UNAPPLY_CMD = /^ (\S+)/; FW_REGEX_VIEW.VPN_IPSEC_NAMENOTBLANK = /\S+/; FW_REGEX_VIEW.VPN_IPSEC_PROPOSALNUMBER = /current ipsec proposal number:[ ](\d+)/; FW_REGEX_VIEW.VPN_IPSEC_ISTEMPLATE = /^\s*mode:[ ]*(template)/; FW_REGEX_VIEW.VPN_IPSEC_PORTVALIDATE = /eq|lt|gt|range/; FW_REGEX_VIEW.VPN_IPSEC_PORTVALIDATE_MARCHPORT = /^[ ]+([^ ]+)[^\(]+\((?:\S*[ ]|)(\d+)\)/; FW_REGEX_VIEW.VPN_IPSEC_PORTVALIDATE_NUMBER = /^(?:0|(?:[1-9]\d*))$/; FW_REGEX_VIEW.VPN_IPSEC_PORTVALIDATE_NUMBER_RANGE = /^(?:0|[1-9]\d*)-[1-9]\d*$/; FW_REGEX_VIEW.VPN_IPSEC_GETZONE = /^[ ]*vpn-instance[ ]*\S*[ ]*(\S*)$/; FW_REGEX_VIEW.VPN_IPSEC_GETZONEFORCOMB = /^[ ]*sa[ ]*binding[ ]*vpn-instance[ ]*(\S*)[ ]*zone[ ]*(\S*)/; FW_REGEX_VIEW.VPN_IPSEC_GETIKEPEERNAME = /^[ ]*ike-peer[ ]*(\S*)/; FW_REGEX_VIEW.VPN_IKEPEER_DISPKIDOMAIN = new Array(['\r\n'], [/pki domain (.+)\b/]); FW_REGEX_VIEW.VPN_IPSEC_GETZONEFORIKEPEER = /sa[ ]*binding[ ]*vpn-instance[ ]*(\S*)[ ]*(?:zone[ ]*(\S*)|)/; FW_REGEX_VIEW.VPN_IPSEC_DIS_IPSEC_STATISTICS_MEMORYANDPACKET = /\s*no\s*enough\s*memory:\s*(\d*),\s*too\s*long:\s*(\d*)/; FW_REGEX_VIEW.VPN_IPSEC_DIS_IPSEC_STATISTICS_CANTFINDANDWRONGSA = /\s*can't\s*find\s*SA:\s*(\d*),\s*wrong\s*SA:\s*(\d*)/; FW_REGEX_VIEW.VPN_IPSEC_DIS_IPSEC_STATISTICS_AUTHFAILUREANDREPLAYPACKET = /\s*authentication:\s*(\d*),\s*replay:\s*(\d*)/; FW_REGEX_VIEW.VPN_IPSEC_DIS_IPSEC_STATISTICS_RECHECK = /\s*front\s*recheck:\s*(\d*),\s*after\s*recheck:\s*(\d*)/; FW_REGEX_VIEW.VPN_IPSEC_DIS_IPSEC_STATISTICS_EXCEEDLIMIT = /\s*exceed\s*byte\s*limit:\s*(\d*),\s*exceed\s*packet\s*limit:\s*(\d*)/; FW_REGEX_VIEW.VPN_IPSEC_DIS_IPSEC_STATISTICS_CHANGECPU = /\s*change\s*cpu\s*enc:\s*(\d*),\s*dec\s*change\s*cpu:\s*(\d*)/; FW_REGEX_VIEW.VPN_IPSEC_DIS_IPSEC_STATISTICS_CHANGEDATACHANANDFIBSEARCH = /\s*change\s*datachan:\s*(\d*),\s*fib\s*search:\s*(\d*)/; FW_REGEX_VIEW.VPN_IPSEC_DIS_IPSEC_STATISTICS_SENDINFOANDL2TP = /\s*send\s*port:\s*(\d*),\s*output\s*l3:\s*(\d*),\s*l2tp\s*input:\s*(\d*)/; FW_REGEX_VIEW.VPN_IPSEC_DIS_IPSEC_STATISTICS_SAESAIDERR = /\s*rcv\s*enc\(dec\)\s*form\s*sae\s*said\s*err:\s*(\d*,\s*\d*)/; FW_REGEX_VIEW.IPSEC_ACLRULE_PORT = /\d+\D+/; FW_REGEX_VIEW.VPN_IPSEC_GETVPNOFACL = /binding with vpn-instance (\S+)/; FW_REGEX_VIEW.VPN_IPSEC_GET_ACL_RULE_NUM = /Advanced[ ]ACL[ ]\d+,[ ](\d+)[ ]rules/; FW_REGEX_VIEW.VPN_IPSEC_REMASKFORMAT = /^0*1*$/; FW_REGEX_VIEW.VPN_IPSEC_IKEDPDCONFIG = /\s*ike[ ]dpd\s*(interval|)\s*(\d+)(?:(?:\s*(\d+))|)/; FW_REGEX_VIEW.VPN_L2TP_ENABLE = /^\s*l2tp (enable)$/; FW_REGEX_VIEW.VPN_L2TP_NOTALLOWSPACE = /^\S+$/; FW_REGEX_VIEW.VPN_L2TP_MATCHVT = /Virtual-Template(\d{1,4})/; FW_REGEX_VIEW.VPN_L2TP_MATCHALLCHARACTER = /\S/; FW_REGEX_VIEW.VPN_L2TP_POLICYMASK = /^(?:(?:[0-9]|[1-9][0-9]|[1][2][0-68-9]|[1][0-13-9][0-9]|[2][0-2][0-3]))(\.(?:[0-9]|[1-9][0-9]|[1][0-9][0-9]|[2][0-4][0-9]|[2][5][0-5])){3}\/(?:(?:(?:[0-9]|[1-9][0-9]|[1][0-9][0-9]|[2][0-4][0-9]|[2][5][0-5])\.){3}(?:[0-9]|[1-9][0-9]|[1][0-9][0-9]|[2][0-4][0-9]|[2][5][0-5])|(?:[0-9]|[1-2][0-9]|[3][0-2]))$/; FW_REGEX_VIEW.VPN_L2TP_USERNAMEMATCHFORMAT = /^[a-zA-Z0-9`~!#$%^&()_+=,.\[\{\]\};']{1,64}$/; FW_REGEX_VIEW.VPN_L2TP_USERNAME_LAC_MATCHFORMAT = /^[a-zA-Z0-9`~!#$%^&()_+=,.\[\{\]\};'"@]{1,63}$/; FW_REGEX_VIEW.VPN_L2TP_IPRANGE = /^[0-9]{1,2}$/; FW_REGEX_VIEW.VPN_L2TP_IPFORMAT = /^\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}$/; FW_REGEX_VIEW.VPN_L2TP_IPPOOLNUMRANGE = /^\d{1,2}$/; FW_REGEX_TEMPLATE.NEW_SSH_USER = ['Succeeded in adding a new SSH user|The SSH user', '成功添加一个用户|用户']; FW_REGEX_TEMPLATE.DEL_SSH_USER = ['Info:', '不存在|成功删除']; FW_REGEX_TEMPLATE.USER_LOCAL_USERNAME_LIST = [ ['\r\n\r\n'], [/^ ((".+"@".+")|(\S+@".+")|(".+"@\S+)|(\S+@\S+)|(".+")|(\S+))/], [/^[ ]+(Active|Block)[ ]*((\S{1,100}))[ ]+(Dft|30|1[0-9]|2[0-9]|\d)[ ]+(No|20[0-6]0[0-8]|1\d{4}|\d{1,4})[ ]+(20[0-6]0[0-8]|1\d{4}|\d{1,4})[ ]+(?:\d{1,3}.\d{1,3}.\d{1,3}.\d{1,3}|---|)[ ]+(\S+)[\s]*$/] ]; FW_REGEX_TEMPLATE.USER_LOCAL_VPN_LIST = new Array(['\n'], [/^[\s]*((\S{1,63}@(\S{1,63}))|(\S{1,64}))[ ]+(\w{1,19})[\s]*$/]); FW_REGEX_TEMPLATE.USER_LOCAL_SHOWSSHUSERINFO ={ sshAuthType : [/^\s*Authentication-type[ ]+:[ ]+(null|all|rsa|password-rsa|password|-)/], sshKeyName : [/^\s*User-public-key-name[ ]+:[ ]+(".+"|\S+|-)/] }; FW_REGEX_TEMPLATE.USER_LOCAL_SERVICETYPE_LIST = new Array( [' -------------------------------------------------------------------\r\n -------------------------------------------------------------------\r\n'], [/^\s*User access index[ ]+:[ ]+(\d{1,5})$/], [/^\s*User IP address[ ]+:[ ]+(\d{1,3}.\d{1,3}.\d{1,3}.\d{1,3})$/], [/^\s*User access type[ ]+:[ ]+([a-zA-Z]{1,10}|x25-pad)$/]); FW_REGEX_TEMPLATE.USER_LOCAL_DISPLAYGROUPS = new Array( ["\r\n"], [/^\s*((".+"@".+")|(\S+@".+")|(".+"@\S+)|(\S+@\S+)|(".+")|(\S+))[ ]+(?:Active|Block)[ ]+(?:\d{1,20})[ ]+(?:\d{1,5})[ ]+(?:\d{1,5})[\s]*$/] ); FW_REGEX_TEMPLATE.USER_LOCAL_DISPLAYVPNS = new Array(["\r\n"], [/^\s*VPN-Instance Name and ID[ ]+:[ ]* ([\S]{1,31}),[^,]+$/]); FW_REGEX_TEMPLATE.USER_LOCAL_DISPLAYGROUPS22 = new Array( ['\r\n'], [/^\s*(\S{1,64})[ ]+(?:Active|Block)[ ]+(?:\d{1,20})[ ]+(?:\d{1,5})[ ]+(?:\d{1,5})[\s]*$/]); FW_REGEX_TEMPLATE.USER_LOCAL_DISPLAYRSA = new Array(["\r\n"], [/^[\s]*(?:\d{1,4})[ ]+(".+"|\S+)$/]); FW_REGEX_TEMPLATE.USER_LOCAL_SEARCH_BY_USERNAME = { username : [/^[\s]*Username[ ]+:[ ]+((".+"@".+")|(\S+@".+")|(".+"@\S+)|(\S+@\S+)|(".+")|(\S+))/], password : [/^[\s]*Password[ ]+:[ ]+((.*\S))/], state : [/^[\s]*State[ ]+:[ ]+(Active|Block)/], serviceType : [/^[\s]*Service-type[ ]+:[ ]+(([ ]*\S{1,100}){1,100})/], onlineNumber : [/^[\s]*Online-number[ ]+:[ ]+(\d{1,10})/], userLevel : [/^[\s]*User-level[ ]+:[ ]+(\d{0,3})/], ftpDir : [/^[\s]*FTP-directory[ ]+:[ ]+(\S+)/], l2tpIP : [/^[\s]*L2tp-ip[ ]+:[ ]+(\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}|-)/], vpnInstance : '', validPeriod : [/^[\s]*User[ ]+valid-period[ ]+:[ ]+(\S+-\S+)/], aclNum : [/^[\s]*ACL-number[ ]+:[ ]+(\d{4})/] }; FW_REGEX_TEMPLATE.USER_LOCAL_SEARCH_BY_USERNAME_FOR_PASSWORD = { 'passwordState' : [/\S*local-user .*\S password (\S+) .*\S/], 'passwordExpireDays' :[/\s*local-user\s*\S* password valid-days (\S+)/] }; FW_REGEX_TEMPLATE.USER_LOCAL_SEARCH_BY_USERNAME_VPN = new Array(["\r\n"], [/^[\s]*local-user[ ]+\S{1,64}[ ]+vpn-instance[ ]+(\w{1,19})$/]); FW_REGEX_TEMPLATE.USER_LOCAL_SEARCH_BY_USERNAME_VPN1 = new Array(["\r\n"], [/^[\s]*local-user[ ]+\S{1,64}[ ]+vpn-instance[ ]+(\w{1,19})$/]); FW_REGEX_TEMPLATE.USER_GROUP_SEARCH_BY_USERNAME = { 'userName,groupName' : [/^[\s]*Username[ ]+:[ ]+(\S{1,64}@(\S{1,64})|(\S{1,64}))/], state : [/^[\s]*State[ ]+:[ ]+(Active|Block)/], assignFixedIP : [/^[\s]*L2tp-ip[ ]+:[ ]+(\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}|-)/] }; FW_REGEX_TEMPLATE.USER_GROUP_PAGE = [ ["#\r\ndomain "], [/^[\s]*(".+"|\S{1,64})[ ]*(invalid|valid)[\s]*/], [/^[ ]+username[ ]+(".+"|\S{1,64})[ ]+(Active|Block)[ ]+(\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}|---)[ ]+(\w{1,19})/, '+']]; FW_REGEX_TEMPLATE.USER_GROUP_GETSINGLECOUNT = new Array(["\n"], [/^[\s]* Total (\d{1,4}),(\d{1,4}) printed[\s]*$/]); FW_REGEX_TEMPLATE.CWMP = [['\r\n'], { cwmp_enable : [/cwmp (enable)/], cwmp_acsurl : [/acs url (\S+)/], 'cpe_user,cpe_pwd' : [/cwmp cpe username (\S+) password (\S+)/], 'acs_user,acs_pwd' : [/cwmp acs username (\S*)\s*(?:password\s(\S+)|)/], cwmp_informEnable : [/cwmp inform periodic (enable)/], cwmp_inform : [/cwmp inform periodic interval (\S+)/] }]; FW_REGEX_TEMPLATE.CWMPVERSION = [['\r\n'],{ man : [/(.*)/], oui : [/(.*)/], pro : [/(.*)/], serial : [/(.*)/] }] FW_REGEX_TEMPLATE.DISINTERF = new Array( ['\r\n'], [/^(\S+) current state/]); FW_REGEX_TEMPLATE.USER_LOCAL_SEARCH_BY_GROUP = new Array( ['\n'], [/^[\s]*((\S{1,64}@(\S{1,20}))|(\S{1,64}))[ ]+(Active|Block)[ ]+(([ ]*\S{1,100}){1,100})[ ]+(Dft|30|1[0-9]|2[0-9]|\d)[ ]+(No|20[0-6]0[0-8]|1\d{4}|\d{1,4})[ ]+(20[0-6]0[0-8]|1\d{4}|\d{1,4})[ ]+(?:\d{1,3}.\d{1,3}.\d{1,3}.\d{1,3}|---)[\s]*$/]); FW_REGEX_TEMPLATE.USER_LOCAL_SEARCH_BY_GROUPPAGE = new Array( ['\r\n\r\n'], [/^ ((".+"@".+")|(\S+@".+")|(".+"@\S+)|(\S+@\S+)|(".+")|(\S+))/], [/^[ ]+(Active|Block)[ ]*((\S{1,100}))[ ]+(Dft|30|1[0-9]|2[0-9]|\d)[ ]+(No|20[0-6]0[0-8]|1\d{4}|\d{1,4})[ ]+(20[0-6]0[0-8]|1\d{4}|\d{1,4})[ ]+(?:\d{1,3}.\d{1,3}.\d{1,3}.\d{1,3}|---|)[ ]+(\w{1,19})[\s]*$/]); FW_REGEX_TEMPLATE.USER_LOCAL_SEARCH_BY_GROUP1 = new Array( ['\n'], [/^[\s]*((\S{1,63}@(\S{1,63}))|(\S{1,64}))[ ]+(Active|Block)[ ]*((\S{1,100}))[ ]+(?:Dft|30|1[0-9]|2[0-9]|\d)[ ]+(?:No|20[0-6]0[0-8]|1\d{4}|\d{1,4})[ ]+(20[0-6]0[0-8]|1\d{4}|\d{1,4})[ ]+(\d{1,3}.\d{1,3}.\d{1,3}.\d{1,3}|---|)[\s]*$/]); FW_REGEX_TEMPLATE.USER_LOCAL_SEARCH_BY_SERVICETYPE = new Array( ['\n'], [/^\s*(\S{1,64})[ ]+(Active|Block)[ ]+(\w{1,100})[ ]+(?:\S{1,10})[ ]+(?:\S{1,10})[ ]+(\w{1,5})[ ]+(?:\d{1,3}.\d{1,3}.\d{1,3}.\d{1,3}|---)[\s]*$/]); FW_REGEX_TEMPLATE.USER_LOCAL_NAME_REG = /^[a-zA-Z0-9`~!$%^()_+,\./\[\{\]\};\-]{1,64}$/; FW_REGEX_TEMPLATE.USER_LOCAL_NAME_SEARCH_REG=/^[a-zA-Z0-9`~!$%^()_+,\./\[\{\]\};\-@]{1,64}$/; FW_REGEX_TEMPLATE.USER_LOCAL_PAGE_MATCH = /[ ]+(\d{1,})[ ]+(\d{1,})/; FW_REGEX_TEMPLATE.USER_LOCAL_PAGE_MATCH1 = /[ ]+\d{1,}[ ]+(\d{1,})/; FW_REGEX_TEMPLATE.USER_RSA_PUBLIC_KEY_LIST = new Array(['\r\n'], [/^\s*(\d{1,100})[ ]+((".+"|\S+))[\s]*$/]); FW_REGEX_TEMPLATE.USER_RSA_PEER_REPLACE = /\%.*\[(yes|y)\/(no|n)\]:/g; FW_REGEX_TEMPLATE.USER_RSA_LOCAL_REPLACE = /\%.*\r\n\%.*\[(yes|y)\/(no|n)\]:/g; FW_REGEX_TEMPLATE.USER_RSA_PUBLIC_KEY_LIST12 = new Array(['\r\n'], [/^\s*Key name: (\S{1,30})[\s]*$/]); FW_REGEX_TEMPLATE.USER_RSA_LOCALKEYPAIR_CREATED = new Array( ['\r\n'], [/^Time of Key pair created: (\d{1,2}:\d{1,2}:\d{1,2} \d{4}\/\d{1,2}\/\d{1,2})/]); FW_REGEX_TEMPLATE.USER_RSA_GETKEYCODE = new Array([], [/^([0-9A-F]{4,8})/], [/^ ([0-9A-F]{4,8})/], [/^ (([0-9A-F]{1,8}\s*){8})/], [/^ (([0-9A-F]{1,8}\s*){8})/], [/^ (([0-9A-F]{1,8}\s*){8})/], [/^ (([0-9A-F]{1,8}\s*){8})/], [/^ (([0-9A-F]{1,8}\s*){8})/], [/^ (([0-9A-F]{1,8}\s*){8})/], [/^ (([0-9A-F]{1,8}\s*){8})/], [/^ (([0-9A-F]{1,8}\s*){8})/], [/^ ([0-9A-F]{4,8})/], [/^ ([0-9A-F]{2,8})/]); FW_REGEX_TEMPLATE.USER_RSA_NAME_REG = /^[a-zA-Z0-9`~\" !@#$%^&()-_+=<>,.\[\{\]\}/:;'|]{1,64}$/; //Modified by jiangzehao on 2011-11-03 for V3R1基线 FW_REGEX_TEMPLATE.USER_RSA_EDIT_REG = /^[A-Fa-f0-9\s]{1,2048}$/; FW_REGEX_TEMPLATE.USER_RSA_PAGE_MATCH = /\S{1,70}/g; FW_REGEX_TEMPLATE.USER_GROUP_GROUPLIST1 = new Array( ['\n'], [/^[\s]*((\S{1,64}@(\S{1,20}))|(\S{1,64}))[ ]+(Active|Block)[ ]+(([ ]*\S{1,100}){1,100})[ ]+(?:Dft|30|1[0-9]|2[0-9]|\d)[ ]+(?:No|20[0-6]0[0-8]|1\d{4}|\d{1,4})[ ]+(?:20[0-6]0[0-8]|1\d{4}|\d{1,4})[ ]+(\d{1,3}.\d{1,3}.\d{1,3}.\d{1,3}|---)[\s]*$/]); FW_REGEX_TEMPLATE.USER_GROUP_ONEGROUP = { domainstate : [/^[\s]*Domain-state[ ]+:[ ]+(\S{1,32}|-)/], authenticationschemename : [/^[\s]*Authentication-scheme-name[ ]+:[ ]+(\S{1,32}|-)/], accountingschemename : [/^[\s]*Accounting-scheme-name[ ]+:[ ]+(\S{1,32}|-)/], authorizationschemename : [/^[\s]*Authorization-scheme-name[ ]+:[ ]+(\S{1,32}|-)/], webipaddress : [/^[\s]*Web-IP-address[ ]+:[ ]+(\d{1,3}.\d{1,3}.\d{1,3}.\d{1,3}|-)/], primarydnsipaddress : [/^[\s]*Primary-DNS-IP-address[ ]+:[ ]+(\d{1,3}.\d{1,3}.\d{1,3}.\d{1,3}|-)/], seconddnsipaddress : [/^[\s]*Second-DNS-IP-address[ ]+:[ ]+(\d{1,3}.\d{1,3}.\d{1,3}.\d{1,3}|-)/], primarynbnsipaddress : [/^[\s]*Primary-NBNS-IP-address[ ]+:[ ]+(\d{1,3}.\d{1,3}.\d{1,3}.\d{1,3}|-)/], secondnbnsipaddress : [/^[\s]*Second-NBNS-IP-address[ ]+:[ ]+(\d{1,3}.\d{1,3}.\d{1,3}.\d{1,3}|-)/], idledataattribute : [/^[\s]*Idle-data-attribute[ ]+\(time,flow\)[ ]+:[ ]+(\d{1,5},[ ]+\d{1,10})/], userpriority : [/^[\s]*User-priority[ ]+:[ ]+([0-7]|-)/], useraccesslimit : [/^[\s]*User-access-limit[ ]+:[ ]+(\d{1,5}|-)/], radiusservertemplate : [/^[\s]*RADIUS-server-template[ ]+:[ ]+(\S{1,32}|-)/], hwtacacsServerTemplate : [/^[\s]*HWTACACS-server-template[ ]+:[ ]+(\S{1,32}|-)/] }; FW_REGEX_TEMPLATE.USER_GROUP_AUTHENTICATION_LIST = new Array(['\r\n'], [/^\s+(\S{1,32})(?:(?:[ ]+(local|none|radius|hwtacacs|vpndb)+)+)/]); FW_REGEX_TEMPLATE.USER_GROUP_AUTHORIZATION_LIST = new Array(['\r\n'], [/^\s+(\S{1,32})(?:(?:[ ]+(Local|If\-authenticated|None|HWTACACS|RADIUS|VPND)+)+)/]); FW_REGEX_TEMPLATE.USER_GROUP_ACCOUNTING_LIST = new Array(['\r\n'], [/^\s+(\S{1,32})[ ]+(?:No|RADIUS|HWTACACS)[ ]+accounting/]); FW_REGEX_TEMPLATE.USER_GROUP_RADIUS_LIST = new Array( [' -------------------------------------------------------------------\r\n -------------------------------------------------------------------\r\n'], [/^[ ]+Server-template-name[ ]+:[ ]+(\S{1,32})$/]); FW_REGEX_TEMPLATE.USER_GROUP_CREATEGROUP_IPPOOL_LIST = new Array( ['\r\n'], [/^[\s]*(\d{1,2})[ ]+(\d{1,3}.\d{1,3}.\d{1,3}.\d{1,3})[ ]+(\d{1,3}.\d{1,3}.\d{1,3}.\d{1,3})[ ]+(?:\d{1,3})[ ]+(?:\d{1,2})[\s]*$/]); FW_REGEX_TEMPLATE.USER_GROUP_UPDATEGROUP_IPPOOL_LIST = new Array( ['\r\n'], [/^[\s]*(\d{1,2})[ ]+(\d{1,3}.\d{1,3}.\d{1,3}.\d{1,3})[ ]+(\d{1,3}.\d{1,3}.\d{1,3}.\d{1,3}|)[ ]+(?:\d{1,6})[ ]+(?:\d{1,2})[\s]*$/]); FW_REGEX_TEMPLATE.USER_GROUP_NAME_REG = /^[a-zA-Z0-9`~!#$%^&()_+=\[\{\]\},.;'-]{1,64}$/; /*modified by jiangzehao for AQ4D75558 2011-11-29*/ FW_REGEX_TEMPLATE.USER_GROUP_IPPOOLSTARTIPADDRESS_REG = /^\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}$/; FW_REGEX_TEMPLATE.USER_GROUP_IPPOOLENDIPADDRESS_REG = /^\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}$/; FW_REGEX_TEMPLATE.USER_REMOTE_RADIUSLIST = new Array( [' -------------------------------------------------------------------\r\n -------------------------------------------------------------------\r\n'], [/^[ ]+Server-template-name[ ]+:[ ]+(\S{1,32})$/], [/^[ ]+Primary-authentication-server[ ]+:[ ]+(\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}:\d{1,5})/], [/^[ ]+Primary-accounting-server[ ]+:[ ]+(\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}:\d{1,5})/]); FW_REGEX_TEMPLATE.USER_REMOTE_RADIUSLISTONE = new Array( [], [/^[ ]+Server-template-name[ ]+:[ ]+(\S{1,32})$/], [/^[ ]+Protocol-version[ ]+:[ ]+(\S{1,32})$/], [/^[ ]+Traffic-unit[ ]+:[ ]+(B|KB|MB|GB)$/], [/^[ ]+Shared-secret-key[ ]+:[ ]+(\S{1,})$/], [/^[ ]+Timeout-interval\(in second\)[ ]+:[ ]+([3-9]|10)$/], [/^[ ]+Primary-authentication-server[ ]+:[ ]+(\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}:\d{1,5})/], [/^[ ]+Primary-accounting-server[ ]+:[ ]+(\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}:\d{1,5})/], [/^[ ]+Secondary-authentication-server[ ]+:[ ]+(\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}:\d{1,5})/], [/^[ ]+Secondary-accounting-server[ ]+:[ ]+(\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}:\d{1,5})/], [/^[ ]+Retransmission[ ]+:[ ]+([1-5])$/], [/^[ ]+Domain-included[ ]+:[ ]+(YES|NO)$/]); FW_REGEX_TEMPLATE.USER_REMOTE_REG1 = /---------/g; FW_REGEX_TEMPLATE.USER_REMOTE_RADIUSLISTONEPLUS = new Array(['#'], [/^ radius-server accounting-stop-packet resend enable (\d{1,4})$/], [/^ radius-server nas-port-format (new|old)$/], [/^ radius-server nas-port-id-format (new|old)$/]); FW_REGEX_TEMPLATE.USER_REMOTE_RADIUSIFONUSE = new Array([], [/(%The server template is used in some domain)/]); FW_REGEX_TEMPLATE.USER_REMOTE_NAME_REG = /^[^\\`~!@#$%^&*()+=|\/\[\{\]\};:'",<>\s]{1,32}$/; FW_REGEX_TEMPLATE.USER_REMOTE_NAME_REG_modify=/^([A-Za-z0-9\.\_]([A-Za-z0-9\-\.\_])*)|([\-]([A-Za-z0-9\-\.\_])+)$/; FW_REGEX_TEMPLATE.USER_REMOTE_SHAREDKEY_REG = /^([^"]\S{0,63})|("{1,63}[^"]\S{0,62})$/; FW_REGEX_TEMPLATE.USER_HWTACACS_SHAREDKEY_REG=/^([^"]\S{0,15})|("{1,15}[^"]\S{0,14})$/; FW_REGEX_TEMPLATE.USER_AUTHENTICATION_LIST = new Array(["\r\n"], [/^\s+(\S{1,32})\s+((?:\S{1,15} +)+)$/]); FW_REGEX_TEMPLATE.USER_AUTHENTICATION_NAME_REG = /^[a-zA-Z0-9`~@!#$%^&()_+=\[\{\]\},.;']{1,32}$/; FW_REGEX_TEMPLATE.USER_AUTHORIZATION_LIST = new Array(["\r\n"], [/^\s+(\S{1,32})\s+((?:(?:If-authenticated|\S{1,8}) +)+)$/]); FW_REGEX_TEMPLATE.USER_AUTHORIZATION_NAME_REG = /^[a-zA-Z0-9`~@!#$%^&()_+=\[\{\]\},.;']{1,32}$/; FW_REGEX_TEMPLATE.USER_ACCOUNTING_LIST = new Array(["\r\n"], [/^[\s]*(\S{1,32})[ ]+([No|RADIUS|HWTACACS]{1,10}) accounting[\s]*$/]); FW_REGEX_TEMPLATE.USER_ACCOUNTING_ONEACCOUNTING = { accountingname : [/^[\s]*Accounting-scheme-name[ ]+:[ ]+(\S{1,32})/], accountingtype : [/^[\s]*Accounting-method[ ]+:[ ]+(\S{1,32})[ ]+accounting/], accountinginterval : [/^[\s]*Realtime-accounting-interval\(min\)[ ]+:[ ]+(\S{1,32})/], accountingstart : [/^[\s]*Start-accounting-fail-policy[ ]+:[ ]+(Online|Cut user)/], accountinginterim : [/^[\s]*Realtime-accounting-fail-policy[ ]+:[ ]+(Online|Cut user)/], accountingmaxtimes : [/^[\s]*Realtime-accounting-failure-retries[ ]+:[ ]+(\d{1,2})/] }; FW_REGEX_TEMPLATE.USER_ACCOUNTING_NAME_REG = /^[a-zA-Z0-9`~@!#$%^&()_+=\[\{\]\},.;']{1,32}$/; FW_REGEX_TEMPLATE.USER_REMOTE_SOURCEADDRESS_LOOPBACK = new Array(['\r\n'],[/^interface (LoopBack[\d{1,4}])/]); FW_REGEX_VIEW.ATTACKDEFENSE_DEFEND_CONNECTION_ID_1 = /^ firewall defend tcp-illegal-session (enable)$/; FW_REGEX_VIEW.ATTACKDEFENSE_DEFEND_CONNECTION_ID_2 = /^ firewall defend tcp-illegal-session blacklist-timeout (\d{1,4})$/; FW_REGEX_VIEW.ATTACKDEFENSE_DEFEND_CONNECTION_ID_3 = /^ firewall defend tcp-illegal-session packet (\d{1,3}) interval (\d{1,3})/; FW_REGEX_VIEW.ATTACKDEFENSE_DEFEND_CONNECTION_ID_4 = /^ firewall defend tcp-illegal-session number (\d{1,3}) interval (\d{1,3})/; FW_REGEX_VIEW.ATTACKDEFENSE_DEFEND_CONTROL_VALIDATOR = /max-length[ ]+(\d{1,})/; FW_REGEX_VIEW.ATTACKDEFENSE_DEFEND_DDOS_GET_TIME = /\(\d+ times matched\)/g; FW_REGEX_VIEW.ATTACKDEFENSE_DEFEND_DDOS_GET_ACL = /^\s*firewall defend ddos (\d+) outbound$/; FW_REGEX_VIEW.ATTACKDEFENSE_DEFEND_DDOS_GET_NONE_TO_USE_ACL = /^\s*The ACL (\d+) is unused.*$/; FW_REGEX_VIEW.ATTACKDEFENSE_DEFEND_DNS_ID_1 = /^\s*firewall defend dns-flood (enable)$/; FW_REGEX_VIEW.ATTACKDEFENSE_DEFEND_DNS_ID_2 = /^\s*firewall defend dns-flood source-max-rate (\d+) interval (\d+)/; FW_REGEX_VIEW.ATTACKDEFENSE_DEFEND_HTTP_ID_1 = /^\s*firewall defend get-flood (enable)$/; FW_REGEX_VIEW.ATTACKDEFENSE_DEFEND_HTTP_ID_2 = /^\s*firewall defend get-flood uriblock (\d{1,}) interval (\d{1,})$/; FW_REGEX_VIEW.ATTACKDEFENSE_DEFEND_HTTP_ID_3 = /^\s*firewall defend get-flood blacklist-timeout (\d{1,})$/; FW_REGEX_VIEW.ATTACKDEFENSE_WHITELIST_TOTALOFEND = [/Total of End:(\d+)/, '*']; FW_REGEX_VIEW.ATTACKDEFENSE_WHITELIST_SYNFLOOD = [/Syn-flood:(\d+)/, '*']; FW_REGEX_VIEW.ATTACKDEFENSE_WHITELIST_HTTPFLOOD = [/Http-flood:(\d+)/, '*']; FW_REGEX_VIEW.ATTACKDEFENSE_WHITELIST_SIPFLOOD = [/Sip-flood:(\d+)/, '*']; FW_REGEX_VIEW.ATTACKDEFENSE_WHITELIST_UNKNOWN = [/Unknown:(\d+)/, '*']; FW_REGEX_VIEW.ATTACKDEFENSE_BLACKLIST_TOTALNUMBER = /[ ]+(\d{1,})[ ]+(\d{1,})/; FW_REGEX_VIEW.ATTACKDEFENSE_BLACKLIST_IP = /(\d{1,3})\.(\d{1,3})\.(\d{1,3})\.(\d{1,3})/; FW_REGEX_VIEW.ATTACKDEFENSE_BLACKLIST_TOTAL = [/Total:(\d+)/, '*']; FW_REGEX_VIEW.ATTACKDEFENSE_BLACKLIST_MANUAL = [/Manual:(\d+)/, '*']; FW_REGEX_VIEW.ATTACKDEFENSE_BLACKLIST_IPSWEEP = [/IP Sweep:(\d+)/, '*']; FW_REGEX_VIEW.ATTACKDEFENSE_BLACKLIST_PORTSCAN = [/Port Scan:(\d+)/, '*']; FW_REGEX_VIEW.ATTACKDEFENSE_BLACKLIST_IDS = [/IDS:(\d+)/, '*']; FW_REGEX_VIEW.ATTACKDEFENSE_BLACKLIST_LOGINFAILED = [/Login Failed:(\d+)/, '*']; FW_REGEX_VIEW.ATTACKDEFENSE_BLACKLIST_PREAUTHED = [/PreAuthed:(\d+)/, '*']; FW_REGEX_VIEW.ATTACKDEFENSE_BLACKLIST_GETFLOOD = [/Get Flood:(\d+)/, '*']; FW_REGEX_VIEW.ATTACKDEFENSE_BLACKLIST_CONNECTIONFLOOD = [ /TIS\(tcp-illegal-session\):(\d+)/, '*']; FW_REGEX_VIEW.ATTACKDEFENSE_BLACKLIST_UNKNOWN = [/Unknown:(\d+)/, '*']; FW_REGEX_VIEW.ATTACKDEFENSE_BLACKLIST_BLACKLIST = / Blacklist is (\S{1,})/; FW_REGEX_VIEW.ATTACKDEFENSE_BLACKLIST_ACL_NUMBER=/firewall[ ]blacklist[ ]enable[ ]acl-number[ ](\d+)/; FW_REGEX_VIEW.ATTACKDEFENSE_BLACKLIST_ICMP = /\s*undo firewall blacklist filter-type (icmp)/; FW_REGEX_VIEW.ATTACKDEFENSE_BLACKLIST_TCP = /\s*undo firewall blacklist filter-type (tcp)/; FW_REGEX_VIEW.ATTACKDEFENSE_BLACKLIST_UDP = /\s*undo firewall blacklist filter-type (udp)/; FW_REGEX_VIEW.ATTACKDEFENSE_BLACKLIST_OTHERS = /\s*undo firewall blacklist filter-type (others)/; FW_REGEX_VIEW.LOGTRAP_CONFIG_STATISTICTIME = /^[ ]*Stream statistic logtime is (\d+) s/; FW_REGEX_VIEW.LOGBUFFER_SIZE = /^[ ]*info-center logbuffer size (\d{1,4})/; FW_REGEX_VIEW.LOGTRAP_CONFIG_DEFENDTIME = /^[ ]*Attack Defend Logtime is (\d+) Seconds./; FW_REGEX_VIEW.LOGTRAP_SESSIONLOGCONFIG_DATA = /\(\d+ times matched\)/g; FW_REGEX_VIEW.LOGTRAP_SESSIONLOGCONFIG_IP_INTERFACE = /^[ ]*firewall session log-type binary host (\d*.\d*.\d*.\d*) (\d+)(?:(?:[ ]*source (\d*.\d*.\d*.\d*) (\d+))|)/; FW_REGEX_VIEW.LOGTRAP_LOGDISPLAY_DATA_ONE = /:\r\n(\t )*/g; FW_REGEX_VIEW.LOGTRAP_SESSIONLOGCONFIG_ADDRESS = /^(\d{1,3}.\d{1,3}.\d{1,3}.\d{1,3}|)[ ]*(\d{1,3}.\d{1,3}.\d{1,3}.\d{1,3}|)$/; FW_REGEX_VIEW.IPLINK_TWO_ADDMARK = { 'interfaceNameVrid,vrid' : [/\s*(\S{1,64}) \| Virtual Router (\d{1,4})/], VrrpGroup : [/^\s*VRRP Group : (\w{1,64})\s*$/], virtualIp : [/^\s*Virtual IP : (\d+\.\d+\.\d+\.\d+)$/], PriorityRun : [/^\s*PriorityRun : (\d{1,4})$/], PriorityConfig : [/^\s*PriorityConfig : (\d{1,4})$/], MasterPriority : [/^\s*MasterPriority : (\d{1,4})$/], 'Preempt,DelayTime' : [/^\s*Preempt : (\w{1,64}) Delay Time : (\d{1,4})$/], Timer : [/\s*Timer : (\d{1,4})\s*$/], 'AuthType,password' : [/^\s*Auth Type : (\w{1,12})\s\w{1,12} Auth key : (\S*)$/], trackInterface : [/\s*Track IF : (\S{1,64})/], CheckTTLs : [/^\s*Check TTL : (\w{1,20})$/], iplinkId : [/^\s*Ip-Link (\d{1,3})\S*/, '+'] }; FW_REGEX_VIEW.IPLINK_TWO_SIMPLE = new Array(['\r\n'], [/(GigabitEthernet[\S]*|Eth-Trunk[\S]*|Ethernet[\S]*|Vlanif[\S]*)/]); FW_REGEX_VIEW.IPLINK_TWO_PANEL_NOTJOIN = new Array( ['\r\n'], [/^(\d+)\s+\w+\s+\d+\s+\w+\s+(\w*)\s+(\d{1,3}.\d{1,3}.\d{1,3}.\d{1,3})\s*(\S*)/]); FW_REGEX_VIEW.IPLINK_TWO_PANEL_LOADALL = new Array( ['\r\n'], [/^(\d+)\s+\w+\s+\d+\s+\w+\s+(\w*)\s+(\d{1,3}.\d{1,3}.\d{1,3}.\d{1,3})\s*(\S*)/]); FW_REGEX_VIEW.IPLINK_TWO_OLD_MASTER = /urrent state of interfaces tracked by master:/; FW_REGEX_VIEW.IPLINK_TWO_OLD_SLAVE = /urrent state of interfaces tracked by slave:/; FW_REGEX_VIEW.GUANGDASERVICE1 = /(\S+)[ ]+(\S+|)/; FW_REGEX_VIEW.GUANGDASERVICE2 = /(\S+) \S+ \d+ (\d+) (\S+)[ ]*(\d+|)-(\d+|)[ ]*(\d+|)-(\d+|)/ FW_REGEX_VIEW.GUANGDASERVICE3 = / (\S+) \S+[ ]+members:([\S ]+|)/; FW_REGEX_VIEW.GUANGDASERVICE4 = /description ([\S ]+)/; FW_REGEX_VIEW.GUANGDASERVICE5 = /^ (\S+)[ ]+\S+/; FW_REGEX_VIEW.GUANGDASERVICE5_ = /(\S+)[ ]+\S+/; FW_REGEX_VIEW.GUANGDASERVICE51 = /\r\n description ([\S ]+)/; FW_REGEX_VIEW.GUANGDASERVICE6 = / /g; FW_REGEX_VIEW.GUANGDASERVICE7 = /service (\d+) service-set (\S+)/; FW_REGEX_VIEW.GUANGDASERVICE8 = / (\S+) public (\d+) (\S+) (\d+|)-(\d+|)[ ]*(\d+|)-(\d+|)/; FW_REGEX_VIEW.GUANGDASERVICE9 = /(\S+) public/; FW_REGEX_VIEW.GUANGDASERVICE10 = /(\d+)[ ]+(\S+)[ ]+(\d+)/; FW_REGEX_VIEW.GUANGDASERVICE11 = / service (\d+) (\S+)/; FW_REGEX_VIEW.GUANGDASERVICE12 = / service \d+ (?:tcp|udp) source-port ((?:(?:\d{1,5}-\d{1,5}|\d{1,5}) ){0,63}(?:\d{1,5}-\d{1,5}|\d{1,5})) destination-port ((?:(?:\d{1,5}-\d{1,5}|\d{1,5}) ){0,63}(?:\d{1,5}-\d{1,5}|\d{1,5}))/; FW_REGEX_VIEW.GUANGDASERVICE13 = / service \d+ icmp (\d+)-(\d+)/; FW_REGEX_VIEW.GUANGDASERVICE14 = /description (.*)/; FW_REGEX_VIEW.GUANGDASERVICE151 = /^(\d+)[ ]+(\S+)[ ]+(\d+)/; FW_REGEX_VIEW.GUANGDASERVICE16 = /service-set (\S+)/; FW_REGEX_VIEW.GUANGDASERVICE17 = /^\d+$/; FW_REGEX_VIEW.GUANGDASERVICE18 = /time-range (\S+)\(/; FW_REGEX_VIEW.GUANGDASERVICE19 = /^(\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}[ ](?:\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}|[0]))$/ FW_REGEX_TEMPLATE.FIREWALL_ADDRESS_ITEMREG = / address \d{1,4} address-set \S*/g; FW_REGEX_TEMPLATE.FIREWALL_ADDRESS_MASKREG = / address \d{1,4} \d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3} (?:(?:mask (?:\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}|[3][0-2]|[1-2][0-9]|[1-9]))|0|\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3})(?:.*)/g; FW_REGEX_TEMPLATE.FIREWALL_ADDRESS_RANGEREG = / address \d{1,4} range \S+ \S+(.*)/g; FW_REGEX_TEMPLATE.FIREWALL_ADDRESS_MASKONE = /\s*address \d{1,4} \d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3} (?:(?:mask (?:\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}|[3][0-2]|[1-2][0-9]|[1-9]))|\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}|0)(?: description (.*)|\s*)/; FW_REGEX_TEMPLATE.FIREWALL_ADDRESS_RANGEONE = / address \d{1,4} range \S+ \S+(.*)/; FW_REGEX_TEMPLATE.FIREWALL_ADDRESS_MASKONE1 = /^\s*address \d{1,4} \d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3} (?:(?:mask (?:\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}|[3][0-2]|[1-2][0-9]|[1-9]))|\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}|0)(?: description (.*)|(\s*))/; FW_REGEX_TEMPLATE.FIREWALL_ADDRESS_RANGEONE1 = /^\s*address \d{1,4} range \S+ \S+(?: description (.*)|(\s*))/; FW_REGEX_TEMPLATE.FIREWALL_ADDRESS_ADDRSETARRAY = new Array(['\r\n'], [/\s+(\S+)\s+(\S+) address set$/]); FW_REGEX_TEMPLATE.FIREWALL_ADDRESS_ADDRSET = /\s+(\S+)\s+\S+ address set$/; FW_REGEX_TEMPLATE.SWEB_COMP_IP = /((2[0-4]\d|25[0-5]|[01]?\d\d?)\.){3}(2[0-4]\d|25[0-5]|[01]?\d\d?)/; FW_REGEX_TEMPLATE.SWEB_CM_GD = /\r\nAddress-set: (\S+)/g; FW_REGEX_TEMPLATE.SWEB_CM_GE = /Address-set: (\S+)/; FW_REGEX_TEMPLATE.SWEB_GET_DESC = /Description: (.*)/; FW_REGEX_TEMPLATE.FIREWALL_ADDRESS_ITEM = /Item number\(s\): (\S+)/; FW_REGEX_TEMPLATE.FIREWALL_ADDRESS_M_E_M = /address (\d{1,4}) .*/g; FW_REGEX_TEMPLATE.FIREWALL_ADDRESS_DISSET = /\r\nAddress-set: (\S+)/; FW_REGEX_TEMPLATE.ATTACKDEFENSE_DEFEND_COMN_REG = / vpn-instance \S*/g; RE_CODE = /\'/g; FW_REGEX_TEMPLATE.IP_WARNING = ["ddress", "地址"]; FW_REGEX_TEMPLATE.SYSTEM_INTERFACE_IP_INFO = ['All IPv4 related configurations on this interface are removed', 'All IPv4 related configurations on this interface are removed',false]; FW_REGEX_TEMPLATE.SYSTEM_VLAN_UNDOBINDING_INFO = ['all interfaces in the L2 have been removed', '已将该VPN实例的安全域中的二层接口删除']; var UTM_REGEX_VIEW = function() { } UTM_REGEX_VIEW.IPS_POLICY_TEMPLATE_FILTER_LIST = new Array(['\r\n\r\n'], [/Signature set\s*:\s*(\"[ \S]*\"|\S*)/], [/Direction\s*:\s*(\S*)/], [/Severity\s*:\s([ \S]*)/], [/Reliability\s*:\s([ \S]*)$/], [/Protocol\s*:\s*(\S*)/], [/[ ]*Category\s*:\s*(disable|\(*?\w*\):)\s*(\S*)/], [/State\s*:\s*(\S*)/], [/Action\s*:\s*((alert|block),?(interworking|),?(quarantine|),?(packet-capture|))/]); FW_REGEX_TEMPLATE.CHANGESCANLEVELTPL_SUCCESSFLAG = ['result in|has not been', '会导致|没有改', false]; UTM_REGEX_VIEW.AV_VIRUSLIST = /[ ]+(\d{1,})[ ]+(\d{1,})[ ]*/; UTM_REGEX_VIEW.AV_QUOTEREG = /^\"{1,} {1,}$|^\"{1,}$/ UTM_REGEX_VIEW.AV_BLANKREG = /\S +\S/; UTM_REGEX_VIEW.AV_MASKREG = /^\".*\"$/; UTM_REGEX_VIEW.AV_MASKREG_TWO = /^\"[^"]{1,}\"$/; UTM_REGEX_VIEW.AV_PREBLANKREG = /^\ {1,}\S{0,}\ {0,}$/; UTM_REGEX_VIEW.AV_FILELIMIT = / MBytes/g; UTM_REGEX_VIEW.AV_SUFFIXPRE = /(;)$/; UTM_REGEX_VIEW.AV_PRESUFFIX = /^(;)/; UTM_REGEX_VIEW.AV_SUFFIXPOST = /;/g; UTM_REGEX_VIEW.AV_SUFFIXFORMAT = /^[^\ \;]{1,6}$/; UTM_REGEX_VIEW.AV_SUFFIXSEMICOLON = /\ ;\ /g; UTM_REGEX_VIEW.AV_SUFFIXUNIFICATION = /^(\.|\*\.)/ig; UTM_REGEX_VIEW.AV_GLOBAL = /\W/g; UTM_REGEX_VIEW.AV_GLOBALENABLED = /Anti-Virus global switch\s*:\s*(\S{1,})/; UTM_REGEX_VIEW.AV_GLOBALESCANLEVEL = /Scan level\s*:\s*(\S{1,})/; UTM_REGEX_VIEW.AV_GLOBALEMAXLAYER = /Max decompressable layer\s*:\s*(\S{1,})/; UTM_REGEX_VIEW.AV_FIREWALLLINKAGE = /Firewall Linkage Enable[ ]*:[ ]*(Enable|Disable)/; UTM_REGEX_VIEW.AV_FIREWALLLINKAGETIMEOUT = /Firewall Linkage Timeout[ ]*:[ ]*(\d+) Minutes/; UTM_REGEX_VIEW.AV_POLICYPARAMETERLIST = new Array( ['Anti-Virus Policy Configuration Info\r\n----'], [/Policy name\s*:\s*(.*\S)/], [/Description\s*:\s*([ \S]*\S)/], [/Use reference\s*:\s*(\d*)/], [/Password-protected-file action\s*:\s*(Permit|Deny)/], [/Deep-compressed-file action\s*:\s*(Permit|Deny)/], [/Large-file action\s*:\s*(Permit|Deny)/], [/HTTP switch\s*:\s*(Disabled|Enabled)/], [/Action\s*:\s*(Alert|Block)/], [/HTTP Accelerate-Transfer\s*:\s*(Disabled|Enabled)/], [/Action when over-load\s*:\s*(Bypass|Block)/], [/Max file size to scan\s*:\s*(\d*)/], [/Web push notification\s*:\s*([ \S]*\S)/], [/SMTP switch\s*:\s*(Disabled|Enabled)/], [/Action\s*:\s*(Alert|Declare|Attachment-detach)/], [/Action when over-load\s*:\s*(Bypass|Block)/], [/Max file size to scan\s*:\s*(\d*)/], [/Attachment detach notification\(English\)\s*:\s*([ \S]*\S|)/], [/Attachment detach notification\(Chinese\)\s*:\s*([ \S]*\S|)/], [/Declare notification\(English\)\s*:\s*([ \S]*\S|)/], [/Declare notification\(Chinese\)\s*:\s*([ \S]*\S|)/], [/POP3 switch\s*:\s*(Disabled|Enabled)/], [/Action\s*:\s*(Alert|Declare|Attachment-detach)/], [/Action when over-load\s*:\s*(Bypass|Block)/], [/Max file size to scan\s*:\s*(\d*)/], [/Attachment detach notification\(English\)\s*:\s*([ \S]*\S|)/], [/Attachment detach notification\(Chinese\)\s*:\s*([ \S]*\S|)/], [/Declare notification\(English\)\s*:\s*([ \S]*\S|)/], [/Declare notification\(Chinese\)\s*:\s*([ \S]*\S|)/], [/FTP switch\s*:\s*(Disabled|Enabled)/], [/Action\s*:\s*(Alert|Block)/], [/Action when over-load\s*:\s*(Bypass|Block)/], [/Max file size to scan\s*:\s*(\d*)/] ); UTM_REGEX_VIEW.AV_VIRUSLISTPARSE = /(\S* {0,1}\S* {0,1}\S*) +(\S* {0,1}\S* {0,1}\S*) +(\S* {0,1}\S* {0,1}\S*)/; UTM_REGEX_VIEW.AV_HTTPEXTENSION = /HTTP file extension\s*:\s*(.*)/; UTM_REGEX_VIEW.AV_FTPEXTENSION = /FTP file extension\s*:\s*(.*)/; UTM_REGEX_VIEW.AV_SMTPEXTENSION = /SMTP file extension\s*:\s*(.*)/; UTM_REGEX_VIEW.AV_POP3EXTENSION = /POP3 file extension\s*:\s*(.*)/; UTM_REGEX_VIEW.AV_DEFAULTEXTENSIONPARSE = /(\S{1,};\S{1,})/; UTM_REGEX_VIEW.AV_GLOBALNBSP = / /g; UTM_REGEX_VIEW.AV_GLOBALSPACE = / /g; UTM_REGEX_VIEW.AV_VITURSATISTIC_GRID = new Array(['\r\n'], [/([\S ]*)[ ]+(\d+)/]); UTM_REGEX_VIEW.AV_VITURSATISTIC_ENABLE = /(undo|)\s*av\s*virus-database\s*statistic\s*enable/; UTM_REGEX_VIEW.AV_POLICYPARAMETERLIST_V2200 =new Array( ['AV Policy'], [/\s*\"(.*)\"/], [/Description\s*:\s*(.*)/], [/Referenced\s*:\s*(.*)/], [/Password-protected-file action\s*:\s*(.*)/], [/Deep-compressed-file action\s*:\s*(.*)/], [/Malformed-file action\s*:\s*(.*)/], [/Large-file action\s*:\s*(.*)/], [/HTTP switch\s*:\s*(.*)/], [/Action\s*:\s*(.*)/], [/Transfer mode\s*:\s*(.*)/], [/Resume-transfer\s*:\s*(.*)/], [/Accelerate-transfer\s*:\s*(.*)/], [/Max file size to scan\s*:\s*(.*)/], [/Scan mode\s*:\s*(.*)/], [/Web push notification\s*:\s*(.*)/], [/FTP switch\s*:\s*(.*)/], [/Action\s*:\s*(.*)/], [/Transfer mode\s*:\s*(.*)/], [/Resume-transfer\s*:\s*(.*)/], [/Accelerate-transfer\s*:\s*(.*)/], [/Max file size to scan\s*:\s*(.*)/], [/Scan mode\s*:\s*(.*)/], [/Push notification\s*:\s*(.*)/], [/SMTP switch\s*:\s*(.*)/], [/Action\s*:\s*(.*)/], [/Max file size to scan\s*:\s*(.*)/], [/Scan mode\s*:\s*(.*)/], [/Declare notification\(English\)\s*:\s*(.*)/], [/Declare notification\(Chinese\)\s*:\s*(.*)/], [/Attachment detach notification\(English\)\s*:\s*(.*)/], [/Attachment detach notification\(Chinese\)\s*:\s*(.*)/], [/POP3 switch\s*:\s*(.*)/], [/Action\s*:\s*(.*)/], [/Max file size to scan\s*:\s*(.*)/], [/Scan mode\s*:\s*(.*)/], [/Declare notification\(English\)\s*:\s*(.*)/], [/Declare notification\(Chinese\)\s*:\s*(.*)/], [/Attachment detach notification\(English\)\s*:\s*(.*)/], [/Attachment detach notification\(Chinese\)\s*:\s*(.*)/] ); UTM_REGEX_VIEW.AV_VURL_FUNCTION = /VURL Function\s*:\s*(\S{1,})/; UTM_REGEX_VIEW.AV_VURL_SERVERIP = /VURL Server IP\s*:\s*(\S{1,})/; UTM_REGEX_VIEW.AV_VURL_SERVERPORT = /VURL Server Port\s*:\s*(\S{1,})/; UTM_REGEX_VIEW.RBLFILTER_EDIT_DISTHIS = { desc : [/Description[ ]+: (.*)/], query : [/Query[ ]+:[ ](.*)/] }; UTM_REGEX_VIEW.DISRBLPOLICY = new Array(['\r\n'],[/(any|\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3})[ ]+(.*)/]); UTM_REGEX_VIEW.RBLFILTER_DISPLAYPOLICY_REPLYUNKNOW = /Unknow-code Action\s*\:\s*(.*)/; UTM_REGEX_VIEW.RBLFILTER_DISPLAYPOLICY_REPLYFAILURE = /Failure Action\s*\:\s*(.*)/; UTM_REGEX_VIEW.RBLFILTER_DISPLAYPOLICY1 = new Array( ['Rbl-Filter Configuration Info'], [/Policy Name\s*:\s*(.*)/], [/Description\s*:\s*(.*)/], [/Unknow-code Action\s*\:\s*(.*)/], [/Failure Action\s*\:\s*(.*)/] ); UTM_REGEX_VIEW.RBLFILTER_DISPLAYPOLICY = new Array( ['\r\n\r\n'], [/Profile +"(.{1,31})"/], [/Switch +: (\S+)/], [/Action +: (\S+)/], [/Description\s*:\s*(.*)/], [/Query : (\S+)/] ); UTM_REGEX_VIEW.RBLFILTER_DISPLAYPREDEFINE = new Array( ['====\r\n'], [/Switch[ ]+: (\S{1,7})/], [/Action[ ]+: (\S{1,7})/], [/Description[ ]+: (.*)/] ); UTM_REGEX_VIEW.RBLFILTER_DISPLAYPOLICY3 = new Array( ['\r\n'], [/(\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3})\s*(.*)/] ); UTM_REGEX_VIEW.RBLFILTER_DISPLAYCONFGBLK = new Array( ['\r\n'], [/^(\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3})\s*(.*)/] ); UTM_REGEX_VIEW.RBLFILTER_DISPLAYCONFGWHT = new Array( ['\r\n'], [/Whitelist\s*(\d)\s*(\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3})\/(\d{1,2})/] ); UTM_REGEX_VIEW.MAILFILTER_DISPLAYSENDERBLACKLIST = new Array( ['\r\n'], [/(\d+)\s*(\S{4,128})/] ); UTM_REGEX_VIEW.MAILFILTER_DISPLAYSENDERBLACKLISTID = new Array( ['ID Content'], [/(\d+)\s*(\S{4,128})/] ); UTM_REGEX_VIEW.MAILFILTER_DISPLAYSENDERWHITELIST = new Array( ['\r\n'], [/Whitelist\s*(\d)\s*(.*)/] ); UTM_REGEX_VIEW.MAILFILTER_DISPLAYCONTENTFILTER = new Array( ['\r\n'], [/\s*(\d+)[ ]+(.*)/] ); UTM_REGEX_VIEW.MAILFILTER_DISPLAYPOLICY = new Array( ['Mail-Filter Policy Info'], [/Policy Name\s*:\s*(.*)/], [/Description\s*:\s*(.*)/] ); UTM_REGEX_VIEW.MAILFILTER_EDIT_DISTHIS = { description : [/^\s*description[ ]+(.*)/], declare : [/^\s*declare[ ]+(.*)/], sizeFilter_mailsize : [/^\s*size-filter[ ]+mailsize[ ]+(\d+)/], sizeFilter_receiver : [/^\s*size-filter[ ]+receiver[ ]+(\d+)/], senderFilter_action : [/^\s*sender-filter[ ]+action[ ]+(delete)/], senderFilter_notification_delete : [/^\s*sender-filter[ ]+notification[ ]+delete(.*)/], senderFilter_notification_stamp : [/^\s*sender-filter[ ]+notification[ ]+stamp(.*)/], contentFilter_subAndBody_action : [/^\s*content-filter[ ]+action[ ]+subject-body[ ]+(delete)/], contentFilter_detach : [/^\s*(undo)[ ]+content-filter[ ]+action[ ]+attachment[ ]+detach/], contentFilter_abmormality : [/^\s*abnormality[ ]+action[ ]+(pass)/], contentFilter_notification_stamp : [/^\s*content-filter[ ]+notification[ ]+stamp[ ]+(.*)/], contentFilter_notification_delete : [/^\s*content-filter[ ]+notification[ ]+delete[ ]+(.*)/], contentFilter_notification_detach : [/^\s*content-filter[ ]+notification[ ]+detach[ ]+(.*)/], 'auditFilter_serverName,auditFilter_serverPort' : [/^\s*audit[ ]+server[ ]+server-name[ ]+(\S+)[ ]+(\d+|)/], 'auditFilter_serverIp,auditFilter_serverIpPort' : [/^\s*audit[ ]+server[ ]+ip[ ]+(\d+\.\d+\.\d+\.\d+)[ ]+(\d+|)/], auditFilter_senderAddr : [/^\s*audit[ ]+sender[ ]+(\S+)/], auditFilter_receiverAddr : [/^\s*audit[ ]+receiver[ ]+(\S+)/], 'auditFilter_authenticationUser,password' : [/^\s*audit[ ]+server[ ]+authentication-mode[ ]+auth-login[ ]+user[ ]+(".+"@".+"|\S+@".+"|".+"@\S+|\S+@\S+|".+"|\S+)[ ]+password[ ]+(\S{1,64})/], auditFilter_auditType_normal : [/^\s*audit[ ]+type[ ]+(normal)/], auditFilter_auditType_senderFilter : [/^\s*audit[ ]+type[ ]+(sender-filter)/], auditFilter_auditType_contentFilter : [/^\s*audit[ ]+type[ ]+(content-filter)/] }; UTM_REGEX_VIEW.MAILFILTER_DISRBLGLOCFG = /RBL filter : (Enable)/; UTM_REGEX_VIEW.MAILFILTER_ENABLEREGEX = /RBL enabled profile :(?: profile|) (\S+){1,32}/; UTM_REGEX_VIEW.MAILFILTER_DISRBLGLOCFGSERVER = /RBL server IP address: (\d{1,3}.\d{1,3}.\d{1,3}.\d{1,3}),?\s*(\d{1,3}.\d{1,3}.\d{1,3}.\d{1,3}|)/ UTM_REGEX_VIEW.BLACKLISTENABLE = /RBL blacklist\s+: (\S{1,7})/; UTM_REGEX_VIEW.WHITELISTENABLE = /RBL whitelist\s+: (\S{1,7})/; UTM_REGEX_VIEW.MAILFILTER_IPMASK = /(\d{1,3}.\d{1,3}.\d{1,3}.\d{1,3})\/(\d{1,2})/; UTM_REGEX_VIEW.MAILFILTER_DISSERVERNAME = /^\s*RBL Server Name\s*: (\S+)/; UTM_REGEX_VIEW.MAILFILTER_DISRBLGLOCFGQUERYSERVER = /RBL Query String\s*\:\s*(.*)/; UTM_REGEX_VIEW.MAILFILTER_DISMAILGLOCFG = /Mail-Filter\s*switch\s*:\s*(\w*)/; UTM_REGEX_VIEW.MAILFILTER_DISPLAYAUDIT_SERVER_OR_IP = /\s*(.*\/Port.*)/; UTM_REGEX_VIEW.MAILFILTER_DISPLAYAUDIT_SENDER = /Sender Mail-Address\s*\:\s*(.*)/ ; UTM_REGEX_VIEW.MAILFILTER_DISPLAYAUDIT_RECEIVER = /Receiver Mail-Address\s*\:\s*(.*)/ ; UTM_REGEX_VIEW.MAILFILTER_DISPLAYAUDIT_AUTHENTICATION_MODE = /Authentication-mode\s*\:\s*(.*)/; UTM_REGEX_VIEW.MAILFILTER_DISPLAYAUDIT_USERNAME = /Authorization User\s*\:\s*(.*)/; UTM_REGEX_VIEW.MAILFILTER_DISPLAYAUDIT_PASSWORD = /Authorization Password\s*\:\s*(.*)/; UTM_REGEX_VIEW.MAILFILTER_DISPLAYAUDIT_AUDIT_TYPE_NORMAL = /(Normal)/; UTM_REGEX_VIEW.MAILFILTER_DISPLAYAUDIT_AUDIT_TYPE_SENDER = /(Sender-Filter)/; UTM_REGEX_VIEW.MAILFILTER_DISPLAYAUDIT_AUDIT_TYPE_CONTENT = /(Content-Filter)/; UTM_REGEX_VIEW.MAILFILTER_DISPLAYSIZEFILTER_Mailsize = /Mailsize Permit Max Threshold\s*\:\s*(\d*)/; UTM_REGEX_VIEW.MAILFILTER_DISPLAYSIZEFILTER_Receiver = /Receiver Permit Max Threshold\s*\:\s*(\d*)/; UTM_REGEX_VIEW.MAILFILTER_DISPLAYSWITCH_AUDIT = /^\s*audit\s*\:\s*(\w*)/; UTM_REGEX_VIEW.MAILFILTER_DISPLAYSWITCH_DECLARE = /^\s*declare\s*\:\s*(\w*)/; UTM_REGEX_VIEW.MAILFILTER_DISPLAYSWITCH_SMTP = /^\s*detect[ ]+SMTP[ ]+\:\s*(\w*)/; UTM_REGEX_VIEW.MAILFILTER_DISPLAYSWITCH_POP3 = /^\s*detect[ ]+POP3\s*\:\s*(\w*)/; UTM_REGEX_VIEW.MAILFILTER_DISRBLYDECLARE = /---------------------------------------------------------\s*(.*)\s*=========================================================/; UTM_REGEX_VIEW.MAILFILTER_DISPLAYSENDER_RADIOGROUP = /Blacklist\s*Action\s*\:\s*(\w*)/; UTM_REGEX_VIEW.MAILFILTER_DISPLAYSENDER_STAMPNOTIFICATION = /Stamp\s*Notification\s*\:\s*(\w*)/; UTM_REGEX_VIEW.MAILFILTER_DISPLAYSENDER_DELETENOTIFICATION = /Delete Notification\s*\:\s*(.*)/; UTM_REGEX_VIEW.MAILFILTER_SENDERFILTER_MAILADDRESS = /^\w{1,}([-+.]\w+)*@\w+([-.]\w+)*$/; UTM_REGEX_VIEW.MAILFILTER_DISPLAYCONTENT_RADIOGROUP = /Subject-Body Action\s*\:\s*(\w*)/; UTM_REGEX_VIEW.MAILFILTER_DISPLAYCONTENT_STAMPNOTIFICATION = /Stamp Notification\s*\:\s*(.*)/; UTM_REGEX_VIEW.MAILFILTER_DISPLAYCONTENT_DELETENOTIFICATION = /Delete Notification\s*\:\s*(.*)/; UTM_REGEX_VIEW.MAILFILTER_DISPLAYCONTENT_ATTACHMENT = /Attachment Action\s*\:\s*(\w*)/; UTM_REGEX_VIEW.MAILFILTER_DISPLAYCONTENT_ATTACHMENTNOTIFICATION = /Detach Notification\s*\:\s*(.*)/; UTM_REGEX_VIEW.LU_DOMAINNAME = /^(?!^(?:[1-9]|[1-9][0-9]|[1][0-9][0-9]|[2][0-1][0-9]|[2][2][0-3])(?:\.(?:[0-9]|[1-9][0-9]|[1][0-9][0-9]|[2][0-5][0-5])){3}$)\S{1,63}$|^\"[\S ]{1,63}\"$/; UTM_REGEX_VIEW.LU_IP = /^(?:[1-9]|[1-9][0-9]|[1][0-9][0-9]|[2][0-1][0-9]|[2][2][0-3])(?:\.(?:[0-9]|[1-9][0-9]|[1][0-9][0-9]|[2][0-5][0-5])){3}$/; UTM_REGEX_VIEW.LU_UPDATETIME = /(\w+)\s+(\d{1,2}:\d{1,2})/; UTM_REGEX_VIEW.LU_TIMERANGE = /([0-1]\d|2[0-3]):[0-5]\d/; UTM_REGEX_VIEW.TRY_DNS_SERVER=/Trying DNS server.*/g; UTM_REGEX_VIEW.LU_QUERYLAC = { 'lu_lac' : [/The license authorization code.*:\s*([\w\-]*)/i] }; UTM_REGEX_VIEW.LU_SECURITY_SERVER = { 'server_domain' : [/\s*Security server\s*: (.*)/] } UTM_REGEX_VIEW.LU_ACTIVATEDCODE = { 'lu_activatedcode' : [/The activated serial code is.*:\s*(.+)\s*$/i] }; UTM_REGEX_VIEW.LU_ACTIVATEDCODE_VRP5 = { 'lu_activatedcode' : [/The activated serial code.*:\s*(?:(?:null)|(.*))/i] }; UTM_REGEX_VIEW.LU_UPDATESTATUS = { status : [/ *(?:Current update status\s*:|当前升级状态\s*:)\s*(.*)/i] }; FW_REGEX_TEMPLATE.UPDATE_TYPE = /(av|ips)/; FW_REGEX_TEMPLATE.UPDATE_MSG = { updateTime : [/(?:Update Time|升级时间)\s*: (.*)/], updateResult : [/(?:Update Result|升级结果)\s*: (.*)/], updateDetails : [/(?:Update Details|升级细节)\s*: (.*)/] } UTM_REGEX_VIEW.LU_AVVERSION_V1R5 = { 'avversion' : [/ Version number\s*: (.*)/], 'avsignatureversion' : [/ Virus definition version\s*: (.*)/], 'avsignaturesize' : [/ Virus definition size\s*: (.*)/], 'avupdatetime' : [/ Update time\s*: (.*)/], 'avupdatefileissue' : [/ Issue time of the update file\s*: (.*)/], 'avversionold' : [/ Version number\s*: (.*)/], 'avsignatureversionold' : [/ Signature database version\s*: (.*)/], 'avsignaturesizeold' : [/ Signature database size\s*: (.*)/], 'avupdatetimeold' : [/ Update time\s*: (.*)/], 'avupdatefileissueold' : [/ Issue time of the update file\s*: (.*)/] } UTM_REGEX_VIEW.LU_AVVERSION = { 'avversion' : [/ Version number\s*: (.*)/], 'avengineversion' : [/ Engine version\s*: (.*)/], 'avenginesize' : [/ Engine size\s*: (.*)/], 'avsignatureversion' : [/ Signature database version\s*: (.*)/], 'avsignaturesize' : [/ Signature database size\s*: (.*)/], 'avupdatetime' : [/ Update time\s*: (.*)/], 'avupdatefileissue' : [/ Issue time of the update file\s*: (.*)/], 'avversionold' : [/ Version number\s*: (.*)/], 'avengineversionold' : [/ Engine version\s*: (.*)/], 'avenginesizeold' : [/ Engine size\s*: (.*)/], 'avsignatureversionold' : [/ Signature database version\s*: (.*)/], 'avsignaturesizeold' : [/ Signature database size\s*: (.*)/], 'avupdatetimeold' : [/ Update time\s*: (.*)/], 'avupdatefileissueold' : [/ Issue time of the update file\s*: (.*)/], 'avversionfd' : [/ Version number\s*: (.*)/], 'avengineversionfd' : [/ Engine version\s*: (.*)/], 'avenginesizefd' : [/ Engine size\s*: (.*)/], 'avsignatureversionfd' : [/ Signature database version\s*: (.*)/], 'avsignaturesizefd' : [/ Signature database size\s*: (.*)/], 'avupdatetimefd' : [/ Update time\s*: (.*)/], 'avupdatefileissuefd' : [/ Issue time of the update file\s*: (.*)/] }; UTM_REGEX_VIEW.LU_IPSVERSION = { 'ipsversion' : [/ Version number\s*: (.*)/], 'ipsengineversion' : [/ Engine version\s*: (.*)/], 'ipsenginesize' : [/ Engine size\s*: (.*)/], 'ipssignatureversion' : [/ Signature database version\s*: (.*)/], 'ipssignaturesize' : [/ Signature database size\s*: (.*)/], 'ipsupdatetime' : [/ Update time\s*: (.*)/], 'ipsupdatefileissue' : [/ Issue time of the update file\s*: (.*)/], 'ipsversionold' : [/ Version number\s*: (.*)/], 'ipsengineversionold' : [/ Engine version\s*: (.*)/], 'ipsenginesizeold' : [/ Engine size\s*: (.*)/], 'ipssignatureversionold' : [/ Signature database version\s*: (.*)/], 'ipssignaturesizeold' : [/ Signature database size\s*: (.*)/], 'ipsupdatetimeold' : [/ Update time\s*: (.*)/], 'ipsupdatefileissueold' : [/ Issue time of the update file\s*: (.*)/], 'ipsversionfd' : [/ Version number\s*: (.*)/], 'ipsengineversionfd' : [/ Engine version\s*: (.*)/], 'ipsenginesizefd' : [/ Engine size\s*: (.*)/], 'ipssignatureversionfd' : [/ Signature database version\s*: (.*)/], 'ipssignaturesizefd' : [/ Signature database size\s*: (.*)/], 'ipsupdatetimefd' : [/ Update time\s*: (.*)/], 'ipsupdatefileissuefd' : [/ Issue time of the update file\s*: (.*)/], 'ipsversiondown' : [/ Version number\s*: (.*)/], 'ipsengineversiondown' : [/ Engine version\s*: (.*)/], 'ipsenginesizedown' : [/ Engine size\s*: (.*)/], 'ipssignatureversiondown' : [/ Signature database version\s*: (.*)/], 'ipssignaturesizedown' : [/ Signature database size\s*: (.*)/], 'ipsupdatetimedown' : [/ Update time\s*: (.*)/], 'ipsupdatefileissuedown' : [/ Issue time of the update file\s*: (.*)/] }; UTM_REGEX_VIEW.LU_URLVERSION = { 'urlversion' : [/ Version number\s*: (.*)/], 'urlversionsize' : [/ Version[ ]+size\s*: (.*)/], 'urlupdatetime' : [/ Update time\s*: (.*)/], 'urlupdatefileissue' : [/ Issue time of the update file\s*: (.*)/] }; UTM_REGEX_VIEW.LU_UPDATECONFIG = { 'internalupdatemode' : [/Internal update mode\s*:\s*(\w*)/], 'internalserver' : [/Internal update server\s*:\s*(\S*)/], 'internalupdateport' : [/Internal update port\s*:\s*(\S*)/], 'server_domain' : [/ Update server\s*: (.*)/], 'ipsinstallconfirm' : [/ Application confirmation\s*: (\w*)/], 'ipsupdatestate' : [/ Schedule update\s*:(\w*)/], 'ipsupdatefrequency' : [/ Schedule update frequency\s*:(\w*)/], 'ipsupdatetime' : [/ Schedule update time\s*:(.*)/], 'avupdatestate' : [/ Schedule update\s*:(\w*)/], 'avupdatefrequency' : [/ Schedule update frequency\s*:(\w*)/], 'avupdatetime' : [/ Schedule update time\s*:(.*)/] }; UTM_REGEX_VIEW.LU_UPDATECONFIG_VRP5 = { 'internalupdatemode' : [/Internal update mode\s*:\s*(\w*)/], 'internalserver' : [/Internal update server\s*:\s*(.*)/], 'internalupdateport' : [/Internal update port\s*:\s*(\S*)/], 'ipsinstallconfirm' : [/ Application confirmation\s*: (\w*)/], 'ipsupdatestate' : [/ Schedule update\s*: (\w*)/], 'ipsupdatefrequency' : [/ Schedule update frequency\s*: (\w*)/], 'ipsupdatetime' : [/ Schedule update time\s*: (.*)/], 'avupdatestate' : [/ Schedule update\s*: (\w*)/], 'avupdatefrequency' : [/ Schedule update frequency\s*: (\w*)/], 'avupdatetime' : [/ Schedule update time\s*: (.*)/] }; UTM_REGEX_VIEW.LU_DIRCF = /^[ ]*\d*[ ]*\-rw\-[ ]*(\d*)[ ]*(\w* \d* \d* \d*:\d*:\d*)[ ]*([\w\-\S\.\$]*\.\w*)/; UTM_REGEX_VIEW.LU_DIRSD = /^[ ]*\d*[ ]*\-rw\-[ ]*(\d*)[ ]*(\w* \d* \d* \d*:\d*:\d*)[ ]*([\w\-\S\.\$]*\.\w*)/; UTM_REGEX_VIEW.LU_DIR = /^[ ]*\d*[ ]*\-rw\-[ ]*(\d*)[ ]*(\w* \d* \d* \d*:\d*:\d*)[ ]*([\w\-\S\.\$]*\.\w*)/; UTM_REGEX_VIEW.UTMTIMEFIELD_HOUR = /^(2[0-3])$|^([0,1]?\d)$/; UTM_REGEX_VIEW.UTMTIMEFIELD_MINUTE = /^([0-5]?\d)$/; UTM_REGEX_VIEW.LU_LICENSE = /^[a-zA-Z0-9\-]{1,24}$/; UTM_REGEX_VIEW.LU_ACTIVATED_CODE = /^\S{1,128}$|^\"[\S ]{1,128}\"$/; UTM_REGEX_VIEW.LU_SUCCESSFLAG=['Are you sure', '请确认']; UTM_REGEX_VIEW.LU_ASYN_CMD_SUCCESSFLAG=['wait','等候',false]; FW_REGEX_VIEW.FIREWALL_POLICY_PUBLICEVENT16 = / policy ips (.*)/; FW_REGEX_VIEW.FIREWALL_POLICY_PUBLICEVENT17 = / policy av (.*)/; FW_REGEX_VIEW.IPSPOLICY_2100 = new Array( ['\r\n'], [/IPS policy : (.*)/]); FW_REGEX_VIEW.IPSPOLICY = new Array( ['\r\n'], [/IPS policy : (.*)/]); FW_REGEX_VIEW.AVPOLICY = /Policy name : (\S+)/; FW_REGEX_VIEW.TRANSIMIT_AVPOLICY_2100 = /Policy name\s*:\s*(.*\S)/; FW_REGEX_VIEW.TRANSIMIT_AVPOLICY_2200= /AV Policy \s*\"(.*)\"/; FW_REGEX_VIEW.MAILFILTERPOLICY=/\s*Policy Name\s*:\s*(\S+)/; FW_REGEX_VIEW.FIREWALL_POLICY_SPACE = / /g; UTM_REGEX_VIEW.BYPASS_DISUTM_STATUS = [/UTM bypass function is\s+(\S{1,})\./]; UTM_REGEX_VIEW.BYPASS_ISACTIVE = [/UTM bypass function is\s+(\S+)\s+at cur*ent\./]; UTM_REGEX_VIEW.MODESWITCH_DISRUNMODE_MODE = [/run\s*mode[ :]+(\S+)/i]; UTM_REGEX_VIEW.IPS_IDENTIFY_GLOBALENABLED = [/Protocol identify status\s*:\s*(\w*)/]; UTM_REGEX_VIEW.IPS_IDENTIFY_GLOBALAGINGTIME = [/Protocol identify Aging-Time\s*:\s*(\S{1,})/]; UTM_REGEX_VIEW.IPS_PRESIGNATURE_COUNT =/count:\s*(\d*)/; UTM_REGEX_VIEW.IPS_POLICY_HTTP_INSPECT_ENABLE = /http inspect\s*:\s*(\w*)/; UTM_REGEX_VIEW.IPS_POLICY_HTTP_INSPECT_URIMODE = /uri norm mode\s*:\s*(\w*)/; UTM_REGEX_VIEW.IPS_POLICY_HTTP_INSPECT_MAX_REQUEST = /max request line length\s*:\s*(\d*)/; UTM_REGEX_VIEW.IPS_POLICY_HTTP_INSPECT_MAX_HEADER = /max header line length\s*:\s*(\d*)/; UTM_REGEX_VIEW.IPS_POLICY_HTTP_INSPECT_MAX_CONTENT = /max Content-type length\s*:\s*(\d*)/; UTM_REGEX_VIEW.IPS_POLICY_HTTP_INSPECT_MAX_USER = /max User-agent length\s*:\s*(\d*)/; UTM_REGEX_VIEW.IPS_POLICY_HTTP_INSPECT_MAX_COOKIE = /max Cookie length\s*:\s*(\d*)/; UTM_REGEX_VIEW.IPS_POLICY_HTTP_INSPECT_MAX_AUTHOR = /max Authorization length\s*:\s*(\d*)/; UTM_REGEX_VIEW.IPS_POLICY_HTTP_INSPECT_MAX_HOST = /max Host length\s*:\s*(\d*)/; UTM_REGEX_VIEW.IPS_POLICY_HTTP_INSPECT_MAX_REFERER = /max Referer length\s*:\s*(\d*)/; UTM_REGEX_VIEW.IPS_POLICY_HTTP_INSPECT_ANOMALY_ACTION = /anomaly action\s*:\s*(\w*)/; UTM_REGEX_VIEW.IPS_POLICY_HTTP_INSPECT_PERMIT_METHOD = /method not to check\s*:\s*(.*)/; UTM_REGEX_VIEW.IPS_POLICY_HTTP_INSPECT_PERMIT_VERSION = /version not to check\s*:\s*(.*)/; UTM_REGEX_VIEW.IPS_POLICY_HTTP_INSPECT_MAX_CHUNK = /max-chunk-block-size \s*:\s*(\d*)/; UTM_REGEX_VIEW.IPS_POLICY_HTTP_INSPECT_SCRIPT_ENABLE = /behavior script-forbidden[ ]*:\s*(\S*)/; UTM_REGEX_VIEW.IPS_POLICY_HTTP_INSPECT_SCRIPT_FORBIDDEN= /script-forbidden[ ]*:\s*(.*)/; UTM_REGEX_VIEW.IPS_POLICY_HTTP_INSPECT_ABNORMAL_RESPONSE = /abnormal-response \s*:\s*(\w*)/; UTM_REGEX_VIEW.IPS_POLICY_HTTP_INSPECT_BEHAVIOR_ACTION = /behavior action \s*:\s*(\w*)/; UTM_REGEX_VIEW.IPS_POLICY_FTP_INSPECT_ENABLE = /ftp inspect\s*:\s*(\w*)/; UTM_REGEX_VIEW.IPS_POLICY_FTP_INSPECT_MAX_COMMAND = /max command-line length\s*:\s*(\d*)/; UTM_REGEX_VIEW.IPS_POLICY_FTP_INSPECT_MAX_USER = /max username length\s*:\s*(\d*)/; UTM_REGEX_VIEW.IPS_POLICY_FTP_INSPECT_MAX_PASSWORD = /max password length\s*:\s*(\d*)/; UTM_REGEX_VIEW.IPS_POLICY_FTP_INSPECT_MAX_SITE = /max site string length\s*:\s*(\d*)/; UTM_REGEX_VIEW.IPS_POLICY_FTP_INSPECT_ANOMALY_ACTION = /anomaly action\s*:\s*(\w*)/; UTM_REGEX_VIEW.IPS_POLICY_FTP_INSPECT_FORBID_COMMAND = /command to check\s*:\s*(.*)/; UTM_REGEX_VIEW.IPS_POLICY_FTP_INSPECT_MAX_LOGIN = /max login failure number\s*:\s*(\d*)/; UTM_REGEX_VIEW.IPS_POLICY_FTP_INSPECT_ADVANCE_BOUNCE = /advance ftp-bounce detect\s*:\s*(\w*)/; UTM_REGEX_VIEW.IPS_POLICY_FTP_INSPECT_BEHAVIOR_ACTION = /behavior action \s*:\s*(\w*)/; UTM_REGEX_VIEW.IPS_POLICY_FTP_INSPECT_MASK_GREET = /mask greeting banner\s*:\s*(\w*)/; UTM_REGEX_VIEW.IPS_POLICY_FTP_INSPECT_MASK_REPLY = /mask reply to syst command\s*:\s*(\w*)/; UTM_REGEX_VIEW.IPS_POLICY_POP3_INSPECT_ENABLE = /pop3 inspect\s*:\s*(\w*)/; UTM_REGEX_VIEW.IPS_POLICY_POP3_INSPECT_MAX_USER = /max username length\s*:\s*(\d*)/; UTM_REGEX_VIEW.IPS_POLICY_POP3_INSPECT_MAX_PASSWORD = /max password length\s*:\s*(\d*)/; UTM_REGEX_VIEW.IPS_POLICY_POP3_INSPECT_MAX_APOP = /max apop commandline length\s*:\s*(\d*)/; UTM_REGEX_VIEW.IPS_POLICY_POP3_INSPECT_MAX_COMMAND = /max commandline length\s*:\s*(\d*)/; UTM_REGEX_VIEW.IPS_POLICY_POP3_INSPECT_ANOMALY_ACTION = /anomaly action\s*:\s*(\w*)/; UTM_REGEX_VIEW.IPS_POLICY_POP3_INSPECT_MAX_LOGIN = /max loginfail number\s*:\s*(\d*)/; UTM_REGEX_VIEW.IPS_POLICY_POP3_INSPECT_BEHAVIOR_ACTION = /behavior action\s*:\s*(\w*)/; UTM_REGEX_VIEW.IPS_POLICY_IMAP_INSPECT_ENABLE = /imap inspect\s*:\s*(\w*)/; UTM_REGEX_VIEW.IPS_POLICY_IMAP_INSPECT_MAX_USER = /max username length\s*:\s*(\d*)/; UTM_REGEX_VIEW.IPS_POLICY_IMAP_INSPECT_MAX_PASSWORD = /max password length\s*:\s*(\d*)/; UTM_REGEX_VIEW.IPS_POLICY_IMAP_INSPECT_MAX_TAG = /max tag length\s*:\s*(\d*)/; UTM_REGEX_VIEW.IPS_POLICY_IMAP_INSPECT_MAX_MAILBOX = /max mailbox length\s*:\s*(\d*)/; UTM_REGEX_VIEW.IPS_POLICY_IMAP_INSPECT_MAX_COMMAND = /max commandline length\s*:\s*(\d*)/; UTM_REGEX_VIEW.IPS_POLICY_IMAP_INSPECT_ANOMALY_ACTION = /anomaly action\s*:\s*(\w*)/; UTM_REGEX_VIEW.IPS_POLICY_IMAP_INSPECT_MAX_LOGIN = /max loginfail number\s*:\s*(\d*)/; UTM_REGEX_VIEW.IPS_POLICY_IMAP_INSPECT_BEHAVIOR_ACTION = /behavior action\s*:\s*(\w*)/; UTM_REGEX_VIEW.IPS_POLICY_SMTP_INSPECT_ENABLE = /smtp inspect\s*:\s*(\w*)/; UTM_REGEX_VIEW.IPS_POLICY_SMTP_INSPECT_MAX_COMMAND = /max commandline length\s*:\s*(\d*)/; UTM_REGEX_VIEW.IPS_POLICY_SMTP_INSPECT_MAX_REPLY = /max replyline length\s*:\s*(\d*)/; UTM_REGEX_VIEW.IPS_POLICY_SMTP_INSPECT_MAX_SENDER = /max sender length\s*:\s*(\d*)/; UTM_REGEX_VIEW.IPS_POLICY_SMTP_INSPECT_MAX_RECEVIER = /max receiver length\s*:\s*(\d*)/; UTM_REGEX_VIEW.IPS_POLICY_SMTP_INSPECT_ANOMALY_ACTION = /anomaly action\s*:\s*(\w*)/; UTM_REGEX_VIEW.IPS_POLICY_SMTP_INSPECT_MAX_RSET = /max rset command number\s*:\s*(\d*)/; UTM_REGEX_VIEW.IPS_POLICY_SMTP_INSPECT_MAX_ERROR = /max error code number\s*:\s*(\d*)/; UTM_REGEX_VIEW.IPS_POLICY_SMTP_INSPECT_CMOMAND_VRFY = /command VRFY\s*:\s*(\w*)/; UTM_REGEX_VIEW.IPS_POLICY_SMTP_INSPECT_CMOMAND_EXPN = /command EXPN\s*:\s*(\w*)/; UTM_REGEX_VIEW.IPS_POLICY_SMTP_INSPECT_CMOMAND_TURN = /command TURN\s*:\s*(\w*)/; UTM_REGEX_VIEW.IPS_POLICY_SMTP_INSPECT_BEHAVIOR_ACTION = /behavior action\s*:\s*(\w*)/; UTM_REGEX_VIEW.IPS_POLICY_DNS_INSPECT_ENABLE = /dns inspect\s*:\s*(\w*)/; UTM_REGEX_VIEW.IPS_POLICY_DNS_INSPECT_MAX_UDPLEN = /dns max-udp-len\s*:\s*(\d*)/; UTM_REGEX_VIEW.IPS_POLICY_DNS_INSPECT_ANOMALY_ACTION = /dns anomaly action\s*:\s*(\w*)/; UTM_REGEX_VIEW.IPS_FIREWALLLINKAGE = /Firewall Linkage Enable[ ]*:[ ]*(Enable|Disable)/; UTM_REGEX_VIEW.IPS_FIREWALLLINKAGETIMEOUT = /Firewall Linkage Timeout[ ]*:[ ]*(\d+)[ ]*Minutes/; UTM_REGEX_VIEW.IPS_SIGNATURE_IP = /((?:^(?:(?:[0-9]|[1-9][0-9]|[1][0-9][0-9]|[2][0-4][0-9]|[2][5][0-5]))(\.(?:[0-9]|[1-9][0-9]|[1][0-9][0-9]|[2][0-4][0-9]|[2][5][0-5])){3}(\/(?:[0-9]|[1-2][0-9]|[3][0-2]))$))/; UTM_REGEX_VIEW.IPS_USER_NUMBER_MATCH = /^\d*$/; UTM_REGEX_VIEW.IPS_USER_REGEX_TEXTEAR_MATCH = /^[^?\u4e00-\u9fa5\"]{1,127}$/; UTM_REGEX_VIEW.IPS_USER_REGEX_TEXTEAR_MATCH_TWO = /^[^\"?\s\u4e00-\u9fa5]{2}\"[ ]{0,}\"$/; UTM_REGEX_VIEW.IPS_SIGNATURE_DISPLAY_ID = new Array([], [/[ ]*rule id[ ]*:[ ]*(\d+)/], [/[ ]*action[ ]*:[ ]*(\S+)/], [/[ ]*state[ ]*:[ ]*(\w+)/],[/[ ]*matched times[ ]*:[ ]*(\d+)/] ); UTM_REGEX_VIEW.IPS_SIGNATURE_DISPLAY_HOLE = new Array( ['\r\n'], [/(\d+\s*)(\d*)\s*(\w*)\s*(\w*)\s*(\d*)/]); UTM_REGEX_VIEW.IPS_SIGNATURE_DISPLAY_DETAIL_ID = /[ ]*rule id[ ]*:[ ]*(\d+)/; UTM_REGEX_VIEW.IPS_SIGNATURE_DISPLAY_DETAIL_STATE = /[ ]*state[ ]*:[ ]*(\w+)/; UTM_REGEX_VIEW.IPS_SIGNATURE_DISPLAY_DETAIL_RELIABILITY = /\s*Reliability\s*:\s*(.*)/; UTM_REGEX_VIEW.IPS_SIGNATURE_DISPLAY_DETAIL_PRENAME = /[ ]*name[ ]*:[ ]*(\S*)/; UTM_REGEX_VIEW.IPS_SIGNATURE_DISPLAY_DETAIL_ACTION = /[ ]*action[ ]*:[ ]*(\S+)/; UTM_REGEX_VIEW.IPS_SIGNATURE_DISPLAY_DETAIL_SOURCEIP = /\s*source ip\s*:\s*(\d{1,3}.\d{1,3}.\d{1,3}.\d{1,3}\W\d*)/; UTM_REGEX_VIEW.IPS_SIGNATURE_DISPLAY_DETAIL_SOURCEPORT = /[ ]*source port[ ]*:[ ]*(?:(eq \d+|range 1024 65535|range 1 1023|any))/; UTM_REGEX_VIEW.IPS_SIGNATURE_DISPLAY_DETAIL_DESTIP = /[ ]*destination ip[ ]*:[ ]*(\d{1,3}.\d{1,3}.\d{1,3}.\d{1,3}\W\d*)/; UTM_REGEX_VIEW.IPS_SIGNATURE_DISPLAY_DETAIL_DESTPORT = /[ ]*destination port[ ]*:[ ]*(?:(eq \d+|range 1024 65535|range 1 1023|any))/; UTM_REGEX_VIEW.IPS_SIGNATURE_DISPLAY_DETAIL_CONTENT = /\s*content\s*:\s*\"(.*)\"/; UTM_REGEX_VIEW.IPS_SIGNATURE_DISPLAY_DETAIL_PROTOCOL = /\s*protocol\s*:\s*(.*)/; UTM_REGEX_VIEW.IPS_SIGNATURE_DISPLAY_DETAIL_SEVERITY = /\s*Severity\s*:\s*(.*)/; UTM_REGEX_VIEW.IPS_SIGNATURE_DISPLAY_DETAIL_DIRECTION = /\s*Direction\s*:\s*(.*)/; UTM_REGEX_VIEW.IPS_SIGNATURE_DISPLAY_DETAIL_CATEGORY = /\s*Category\s*:\s*(.*)/; UTM_REGEX_VIEW.IPS_SIGNATURE_DISPLAY_DETAIL_STATISTIC = /[ ]*matched times[ ]*:[ ]*(\d+)/; UTM_REGEX_VIEW.IPS_SIGNATURE_DISPLAY_DETAIL_REFERENCE = /\s*Reference\s*:\s*(.*)/; UTM_REGEX_VIEW.IPS_SIGNATURE_DISPLAY_DETAIL_DESCRIPTION = /\s*description\s*:\s*(.*)/; UTM_REGEX_VIEW.IPS_SIGNATURE_DISPLAY_PROTOCOL = /(\b[a-zA-Z]\S*\b).*/; UTM_REGEX_VIEW.IPS_SIGNATURE_DISPLAY_CATEGORY = /(\b[a-zA-Z]\S*\b).*/; UTM_REGEX_VIEW.IPS_SIGNATURE_REGEX_DOUHAO = /^((\\,)+|\{\d+,\d+\}|[^,]{0,})+$/; UTM_REGEX_VIEW.IPS_SIGNATURE_DISPLAY_DETAIL_ATTACKTYPE=/[ ]*attack type[ ]*:[ ]*(.*)/; UTM_REGEX_VIEW.IPS_SIGNATURE_DISPLAY_DETAIL_PRIORITY=/[ ]*priority[ ]*:[ ]*(.*)/; UTM_REGEX_VIEW.IPS_SIGNATURE_USER_DISPLAY_ID = new Array( ['\r\n'], [/(\d+\s*)(\d*)\s*(\w*)\s*(\w*)\s*(\d*)/]); UTM_REGEX_VIEW.IPS_SIGNATURE_USER_DISPLAY_HOLE = new Array( ['\r\n'], [/(\d*)\s*(\w*)\s*(to-server|to-client|any|all)\s*(\w*)\s*(\S*)\s*(\d*)\s*(.*)/]); UTM_REGEX_VIEW.IPS_SIGNATURE_USER_SEARCH_ID = new Array( ['\r\n'], [/(\d*)\s*(\w*)\s*(to-server|to-client|any|all)\s*(\w*)\s*(\S*)\s*(\d*)\s*(.*)/]); UTM_REGEX_VIEW.IPS_SIGNATURE_USER_UPDATE_DETAIL_ID = /\s*Signature ID\s*:\s*(.*)/; UTM_REGEX_VIEW.IPS_SIGNATURE_USER_UPDATE_DETAIL_STATE = /\s*State\s*:\s*(.*)/; UTM_REGEX_VIEW.IPS_SIGNATURE_USER_UPDATE_DETAIL_NAME = /\s*Name\s*:\s*(.*)/; UTM_REGEX_VIEW.IPS_SIGNATURE_USER_UPDATE_DETAIL_PROTOCOL = /\s*Protocol\s*:\s*(.*)/; UTM_REGEX_VIEW.IPS_SIGNATURE_USER_UPDATE_DETAIL_SEVERITY = /\s*Severity\s*:\s*(.*)/; UTM_REGEX_VIEW.IPS_SIGNATURE_USER_UPDATE_DETAIL_DIRECTION = /\s*Direction\s*:\s*(.*)/; UTM_REGEX_VIEW.IPS_SIGNATURE_USER_UPDATE_DETAIL_SOURCEIP_MASK = /\s*Source IP\s*:\s*([\d\.]*)\/([\d\.]*)/; UTM_REGEX_VIEW.IPS_SIGNATURE_USER_UPDATE_DETAIL_SOURCEPORT = /\s*Source port\s*:\s*(.*)/; UTM_REGEX_VIEW.IPS_SIGNATURE_USER_UPDATE_DETAIL_DESTINATIONIP_MASK = /\s*Destination IP\s*:\s*([\d\.]*)\/([\d\.]*)/; UTM_REGEX_VIEW.IPS_SIGNATURE_USER_UPDATE_DETAIL_DESTINATIONPORT = /\s*Destination port\s*:\s*(.*)/; UTM_REGEX_VIEW.IPS_SIGNATURE_USER_UPDATE_DETAIL_OFFSET_PACHSTREAM = /\s*Offset\s*:\s*(\d*)[ ]*(\S*)/; UTM_REGEX_VIEW.IPS_SIGNATURE_USER_UPDATE_DETAIL_MAXSTREANMLENGTH = /\s*Max-stream-len\s*:\s*(.*)/; UTM_REGEX_VIEW.IPS_SIGNATURE_USER_UPDATE_DETAIL_REGEX = /\s*Regex\s*:\s*(.*)/; UTM_REGEX_VIEW.IPS_SIGNATURE_USER_UPDATE_DETAIL_DESCRIPTION = /\s*Description\s*:\s*(.*)/; UTM_REGEX_VIEW.IPS_SIGNATURE_USER_UPDATE_DETAIL_MACHEDTIME = /\s*Matched times\s*:\s*(.*)/; UTM_REGEX_VIEW.IPS_SIGNATURE_USER_DISPLAY_PROTOCOL = /(\b[a-zA-Z]\S*\b).*/; UTM_REGEX_VIEW.IPS_SIGNATURE_USER_DISPLAY_CATEGORY = /(\b[a-zA-Z]\S*\b).*/; UTM_REGEX_VIEW.IPS_SIGNATURE_PROTOCOL_IDDENTIRY_LIST_2100 = new Array(['\r\n'], [/(\d*)\s*(\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3})\s*(\d*)\s*(\S*)\s*(\d*:\d*:\d*)\s*/]); UTM_REGEX_VIEW.IPS_SIGNATURE_PROTOCOL_IDDENTIRY_LIST = new Array(['\r\n'], [/(\d*)\s*(\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3})\s*(\d*)\s*(\S*)/]); UTM_REGEX_VIEW.IPS_SIGNATURE_PROTOCOL_IDDENTIRY_QUERY = /\s*(\S*).*/ UTM_REGEX_VIEW.IPS_POLICY_PAGE_FILTER_NAME = /^\S{1,31}$|^\"[ \S]{1,31}\"$/; UTM_REGEX_VIEW.IPS_POLICY_PAGE_FILTER_UPDATE_DISABLE = /disable/i; UTM_REGEX_VIEW.IPS_POLICY_PAGE_FILTER_UPDATE_PROTOCOL_MODE_AND = /and/i; UTM_REGEX_VIEW.IPS_POLICY_PAGE_FILTER_UPDATE_TO_SERVER = /to-server/i; UTM_REGEX_VIEW.IPS_POLICY_PAGE_FILTER_UPDATE_TO_CLIENT = /to-client/i; UTM_REGEX_VIEW.IPS_POLICY_PAGE_FILTER_UPDATE_TO_ANY = /any/i; UTM_REGEX_VIEW.IPS_POLICY_PAGE_FILTER_UPDATE_ENABLE = /enable/i; UTM_REGEX_VIEW.IPS_POLICY_PAGE_FILTER_UPDATE_ALERT = /alert/i; UTM_REGEX_VIEW.IPS_POLICY_PAGE_POLICY_NAME = /^[`~\!@#\$%\^&*\(\)_+=|\\\{\}\[\]:;\"/'\,.<>a-zA-Z1-90]{1,31}$|^\"[ `~\!@#\$%\^&*\(\)_+=|\\\{\}\[\]:;/'\,.<>a-zA-Z1-90]{1,31}\"$/; UTM_REGEX_VIEW.IPS_POLICY_PAGE_REPLACE_DOUHAO = /,/g; UTM_REGEX_VIEW.IPS_POLICY_TEMPLATE_PRIVILEGY = /\s*Privileged policy is ([\S ]*)/; UTM_REGEX_VIEW.IPS_POLICY_TEMPLATE_ENABLE = /\s*IPS is (Enabled|Disabled)/; UTM_REGEX_VIEW.IPS_POLICY_TEMPLATE_MODE = /IPS mode is (Passive|Active|)/; UTM_REGEX_VIEW.IPS_POLICY_GLOB_ENABLE = /IPS global Switch\s*:\s*(\w*)/; UTM_REGEX_VIEW.IPS_POLICY_GLOB_PRIVILEGE = /Privilege policy\s*:\s*(.*)/; UTM_REGEX_VIEW.IPS_POLICY_GLOB_MODE = /IPS mode\s*:\s*(\w*)/; UTM_REGEX_VIEW.IPS_POLICY_GLOB_BUFFER=/IPS Back Buffer size[ ]*:[ ]*(\d*)/; UTM_REGEX_VIEW.IPS_POLICY_OVERRIDE_LIST = new Array( ['\r\n'], [/(\d+)[ ]*(alert|block|drop)[ ]*(enable|disable)[ ]*(\S*)/]); UTM_REGEX_VIEW.IPS_POLICY_TEMPLATE_SIGNATURE_VARIABLE_ALL = new Array(['\r\n'], [/[ ]*(\S+)[ ]+(\S+)[ ]+([\S]+)/]); UTM_REGEX_VIEW.IPS_POLICY_TEMPLATE_SIGNATURE_VARIABLE=new Array(['\r\n'], [/[ ]*(\S+)[ ]+(\S+):[ ]+\(([\S ]+)\)/]); UTM_REGEX_VIEW.IPS_POLICY_TEMPLATE_PRIVILEGY_FOR_POLICY = /\s*IPS policy : ([\S ]*)/; UTM_REGEX_VIEW.IPS_POLICY_TEMPLATE_POLICY_LIST_2100 = new Array( ['\r\nIPS policy'], [/\s*:\s*(.+)/], [/\s*Description\s*:\s*(.*)/],[/\s*Referenced\s*:\s*(\d*)/]); UTM_REGEX_VIEW.IPS_POLICY_TEMPLATE_OVVERRIDE_LIST = new Array( ['\r\n'],[/(\d+)\s*(\w*)\s*(\w*)\s*(\D*)\w$/]); UTM_REGEX_VIEW.IPS_POLICY_TEMPLATE_FILTER_LIST = new Array(['\r\n\r\n'], [/Signature set\s*:\s*(\"[ \S]*\"|\S*)/], [/Direction\s*:\s*(\S*)/], [/Severity\s*:\s([ \S]*)/], [/Reliability\s*:\s([ \S]*)$/], [/Protocol\s*:\s*(\S*)/], [/[ ]*Category\s*:\s*(disable|\(*?\w*\):)\s*(\S*)/], [/State\s*:\s*(\S*)/], [/Action\s*:\s*(\S*)/]); UTM_REGEX_VIEW.IPS_POLICY_TEMPLATE_OVRRIDES_SIG_BY_ID = new Array([], [/\s*Signature ID\s*:\s*(.*)/], [/\s*State\s*:\s*(.*)/], [/\s*Name\s*:\s*(.*)/], [/\s*Protocol\s*:\s*(.*)/], [/\s*Severity\s*:\s*(.*)/], [/\s*Reliability\s*:\s*(.*)/], [/\s*Direction\s*:\s*(.*)/]); UTM_REGEX_VIEW.IPS_POLICY_TEMPLATE_OVRRIDES_SIG_BY_HOLE = new Array( ['\r\n'], [/(\d*)\s*(\S*)\s*(to-server|to-client|any|all)\s*(\S*)\s*([\S ]*)\[(\S*)\]\s*(\S*)\s*(.*)/]); UTM_REGEX_VIEW.IPS_POLICY_TEMPLATE_OVRRIDES_LIST = new Array(['\r\n'], [/[ ]*(\d*)[ ]+(block|alert)[ ]+(enable|disable)[ ]+(.*)/]); UTM_REGEX_VIEW.IPS_POLICY_TEMPLATE_TEMPLATE_FOR_FILTER = /[ ]*Policy template\s*:\s*(\S*)/; UTM_REGEX_VIEW.IPS_POLICY_TEMPLATE_DISPLAY_TEMPLATE = new Array(['\r\n'], [/[ ]*Policy template\s*:\s*(\S*)/]); UTM_REGEX_VIEW.IPS_POLICY_TEMPLATE_DISPLAY_TEMPLATE_GROUP = new Array( ['Policy template:'], [/\s*(\w*)/], [/\s*Signature set\s*:\s*template\s*-(\S*)/], [/\s*Direction\s*:\s*(\S*)/], [/\s*Severity\s*:\s*(.*)/], [/\s*Reliability\s*:\s*(.*)/], [/\s*Protocol\s*:\s*(\S*)/], [/\s*Category\s*:\s*(.*)/], [/\s*State\s*:\s*(\S*)/], [/\s*Action\s*:\s*(\S*)/]); UTM_REGEX_VIEW.IPS_POLICY_TEMPLATE_OVRRIDES_DISPLAY_PROTOCOL = /(\b[a-zA-Z]\S*\b).*/; UTM_REGEX_VIEW.IPS_POLICY_TEMPLATE_OVRRIDES_DISPLAY_CATEGORY = /(\b[a-zA-Z]\S*\b).*/; UTM_REGEX_VIEW.IPS_POLICY_TEMPLATE_FILTER_RENAME = /Signature set\s*:\s*(\S*)/; UTM_REGEX_VIEW.IPS_TEMPLATE_LIST = new Array(['\r\n'], [/\s*Policy template\s*:\s*(\S*)/]); UTM_REGEX_VIEW.IPS_TEMPLATE_LIST_GROUP = new Array(['\r\n\r\n'], [/\s*Signature set\s*:\s*(\S*)/], [/\s*Direction\s*:\s*(\S*)/], [/\s*Severity\s*:\s*(.*)/], [/\s*Reliability\s*:\s*(.*)/], [/\s*Protocol\s*:\s*(\S*)/], [/[ ]*Category\s*:\s*(disable|\(*?\w*\):)\s*(\S*)/], [/\s*State\s*:\s*(\S*)/], [/\s*Action\s*:\s*(\S*)/]); UTM_REGEX_VIEW.IPS_HIDE_PROTOCOL = new Array([], [/(\b[a-zA-Z]\S*\b)/, '+']); UTM_REGEX_VIEW.IPS_HIDE_CATEGORY = new Array([], [/(\b[a-zA-Z]\S*\b)/, '+']); UTM_REGEX_VIEW.IPS_OVERRID_QUERY_ID = /^[123456789]{1}[1234567890]{0,5}$/; UTM_REGEX_VIEW.IPS_USERSIG_NAME_REGEX = /^[a-zA-Z]\w{0,31}$/; UTM_REGEX_VIEW.DNS_DOMAIN_NAME_REGEX = /^[a-zA-Z0123456789\-_.]*$/; UTM_REGEX_VIEW.DNS_HOST_NAME_REGEX = /^[a-zA-Z0-9\-_.]*[a-zA-Z][a-zA-Z0-9\-_.]*$/; UTM_REGEX_VIEW.DNS_SERVER_GRID = new Array(['\r\n'], [/\d+\s+(\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3})/]); UTM_REGEX_VIEW.DNS_DOMAIN_GRID = new Array(['\r\n'], [/^\b[1234567890]{1,}\s+(\S+)/]); UTM_REGEX_VIEW.DNS_ENABLE_DIS = /DNS resolve is (\w*)/; UTM_REGEX_VIEW.USER_SIG_POP_PROTOCOL = /(\b[a-zA-Z]\S*\b)\s*\S*\s*protocol/; UTM_REGEX_VIEW.IPS_POLICY_GRID_NAME = / /g; UTM_REGEX_VIEW.IPS_POLICY_NAME_HORIZONTAL_LINE = /-/g; UTM_REGEX_VIEW.IPS_POLICY_SIGNATURE_ID = /[ ]*\d+[ ]*(\d+)\s*\w*\s*disable/; UTM_REGEX_VIEW.IPS_POLICY_SIGNATURE_ENABLE_ID = /[ ]*\d+[ ]*(\d+)\s*\w*\s*enable/; UTM_REGEX_VIEW.IPS_POLICY_SIGNATURE_ID_ARRAY=new Array(['\r\n'],[/[ ]*\d+[ ]*(\d+)/]); UTM_REGEX_VIEW.IPS_POLICY_SIGNATURE_ID_DATA=new Array(['signature-id:'],[/[ ]*(\d+)/]); UTM_REGEX_VIEW.IPS_POLICY_VAR_SIGNATURE_IP=/(?:^(?:(?:[0-9]|[1-9][0-9]|[1][0-9][0-9]|[2][0-4][0-9]|[2][5][0-5]))(\.(?:[0-9]|[1-9][0-9]|[1][0-9][0-9]|[2][0-4][0-9]|[2][5][0-5])){3}(\/(?:[0-9]|[1-2][0-9]|[3][0-2]))$)/ UTM_REGEX_VIEW.IPS_SIGNATURE_USER_DISCOMBO_ID = new Array( ['\r\n'], [/(\d+\s*)(\d*)\s*(\w*)\s*(disable)\s*(\d*)/]); UTM_REGEX_VIEW.IPS_SIGNATURE_DISCOMBO_HOLE = new Array( ['\r\n'], [/(\d+\s*)(\d*)\s*(\w*)\s*(disable)\s*(\d*)/]); UTM_REGEX_VIEW.IPS_SIGNATURE_USER_ENABLECOMBO_ID = new Array( ['\r\n'], [/(\d+\s*)(\d*)\s*(\w*)\s*(enable)\s*(\d*)/]); UTM_REGEX_VIEW.IPS_SIGNATURE_ENABLECOMBO_HOLE = new Array( ['\r\n'], [/(\d+\s*)(\d*)\s*(\w*)\s*(enable)\s*(\d*)/]); UTM_REGEX_VIEW.IPS_OVERRIDE_SIGNATURE_USER=/override-signatrue user-define (enable) action (alert|block)/; UTM_REGEX_VIEW.IPS_OVERRIDE_SIGNATURE_PRE=/override-signatrue pre-define (enable) action (alert|block)/; UTM_REGEX_VIEW.IPS_USER_SIGNATURE_CONTENTBLANK = /^\ {1,}\S{0,}|\S{0,}\ {1,}$/; UTM_REGEX_VIEW.URL_FILTER_ENABLE = /switch\s*:\s*(\S+)/i; UTM_REGEX_VIEW.URL_DEFAULTACTION = /Default\saction\s*:\s*(\S+)/i; UTM_REGEX_VIEW.URL_NOTIFICATION = /message\s*:\s*(.+)$/i; UTM_REGEX_VIEW.URL_REDRECT = /First Access Redirect Switch[ ]*:[ ]*(Enable|Disable)/; UTM_REGEX_VIEW.URL_PERIOD = /First Access Redirect Period[ ]*:[ ]*(\d+)/; UTM_REGEX_VIEW.URL_REDRECTFILE = /First Access Redirect Page[ ]*:[ ]*(\S*)/; UTM_REGEX_VIEW.URL_NOTIFICATION_REGEX = /\S+/; UTM_REGEX_VIEW.URL_REMISSION_IP_ADDR_SET = /address-set\s*(\S+)/; UTM_REGEX_VIEW.URL_REMISSION_IP_TEXT = /^([\d\.]+)(?:-([\d\.]+)|([\/\\])([\d\.]+))/; UTM_REGEX_VIEW.URL_REMISSION_IP_VALUE = /^(range)?\s*([\d\.]+)\s+([\d\.]+)/; UTM_REGEX_VIEW.URL_REMISSION_IP_VALIDATE = /^((?:[01]?\d{1,2}|2(?:[0-4]\d|5[0-5]))(?:\.(?:[01]?\d{1,2}|2(?:[0-4]\d|5[0-5]))){3})(?:([\\\-])((?:[01]?\d{1,2}|2(?:[0-4]\d|5[0-5]))(?:\.(?:[01]?\d{1,2}|2(?:[0-4]\d|5[0-5]))){3})|\\(0))$/; UTM_REGEX_VIEW.URL_LOG_REMISSION_IP =new Array(['\r\n'], /remission-ip[ ]*(\S+)?[ ]*:[ ]*(.+)/); UTM_REGEX_VIEW.URL_LOG_MERGEE_NABLE = /http-access[ ]*(log-merge)[ ]*enable/; UTM_REGEX_VIEW.URL_LOG_EXTENTION_LIST = /^(?:\:\s(\d+))|(NO\sEXTENSION)|(\w+)$/gm; UTM_REGEX_VIEW.URL_LOG_NO_EXTENTION = /NO\sEXTENSION/i; UTM_REGEX_VIEW.URL_LOG_EXTENTION = /^[a-zA-Z\d_]+$/; UTM_REGEX_VIEW.URL_BLACK_WHITE_LIST = /(\d+)[ ]*(\S+)[ ]*(\d+)[ ]*(.*)[ ]*/; UTM_REGEX_VIEW.URL_4_REGEX = /^\s*\S.{2,}\S\s*$/; UTM_REGEX_VIEW.URL_PRE_REGEX = /\s*(http[s]?\:\/\/)?(.*)/; UTM_REGEX_VIEW.URL_USERCATEGORY_UC = /^uc:/i; UTM_REGEX_VIEW.URL_BLACK_WHITE_LIST_EXISTS = function(pattern, url) { return new RegExp('\\r\\n\\d+\\s+'+pattern+'.*'+url+'\\r\\n'); } UTM_REGEX_VIEW.URL_FILTER_REMISSION_IP=/((?:^(?:(?:[0-9]|[1-9][0-9]|[1][0-9][0-9]|[2][0-4][0-9]|[2][5][0-5]))(\.(?:[0-9]|[1-9][0-9]|[1][0-9][0-9]|[2][0-4][0-9]|[2][5][0-5])){3}(\/(?:(?:(?:[0-9]|[1-9][0-9]|[1][0-9][0-9]|[2][0-4][0-9]|[2][5][0-5])\.){3}(?:[0-9]|[1-9][0-9]|[1][0-9][0-9]|[2][0-4][0-9]|[2][5][0-5]))|\\(?:(?:(?:[0-9]|[1-9][0-9]|[1][0-9][0-9]|[2][0-4][0-9]|[2][5][0-5])\.){3}(?:[0-9]|[1-9][0-9]|[1][0-9][0-9]|[2][0-4][0-9]|[2][5][0-5])|0))$|^(?:(?:[0-9]|[1-9][0-9]|[1][0-9][0-9]|[2][0-4][0-9]|[2][5][0-5])\.){3}(?:[0-9]|[1-9][0-9]|[1][0-9][0-9]|[2][0-4][0-9]|[2][5][0-5])-(?:(?:[0-9]|[1-9][0-9]|[1][0-9][0-9]|[2][0-4][0-9]|[2][5][0-5])\.){3}(?:[0-9]|[1-9][0-9]|[1][0-9][0-9]|[2][0-4][0-9]|[2][5][0-5])$))/; UTM_REGEX_VIEW.URL_FILTER_FAILACTION = /Category query fail action\s*:\s*(\w*)/; UTM_REGEX_VIEW.URL_FILTER_PRESERVER = /Security server[ ]*:[ ]*(\S*)/; UTM_REGEX_VIEW.URL_EXTENSION_GRID_DATA = new Array( ['\r\n'], [/(\w+)[ ]+(doblock|)/]); var URL_REGEX_VIEW = function() { } URL_REGEX_VIEW.URL_PRECATEGORY_DISPLAY = new Array( ['\r\n'], [/(\d+)[ ]*\"(.*)[ ]*\"[ ]*(?:(\d+)[ ]+)?(\d+)[ ]+(.*)/]); URL_REGEX_VIEW.URL_USERCATEGORY_DISPLAY = new Array( ['\r\n'], [/(\d+)\s*\"(.*)\s*\"\s*(?:(\d+)\s+)?(\d+)\s+(.*)/]); URL_REGEX_VIEW.URL_PRECATEGORY_SERVERDOMAIN = /Domain\s*:\s*(.*)/i; URL_REGEX_VIEW.URL_PRECATEGORY_SERVERNAME = /Domain Name:\s*(\w*)/; URL_REGEX_VIEW.URL_PRECATEGORY_SERVERIP = /Address\s*:\s*([\w.]*)/i; URL_REGEX_VIEW.URL_PRECATEGORY_SERVERPORT = /\s*Port:\s*(\d*)/i; URL_REGEX_VIEW.URL_PRECATEGORY_SERVERSTATE = /URL Filter Connection State\s*:\s*(\d*)/; URL_REGEX_VIEW.URL_PRECATEGORY_SERVERFAILT = /fail\s*action\s*:\s*(\w*)/i; URL_REGEX_VIEW.URL_USERCATEGORY_URL_GRID = new Array( ['\r\n'], [/(\S+)\s+(\d+)\s+(.+\S)?\s*$/]); URL_REGEX_VIEW.URL_POLICY_GRID = new Array( ['\r\n'], [/^\s*\"\s*(.*)\s+\"(\d+)\s+(.*\S)?\s*$/]); URL_REGEX_VIEW.URL_POLICY_CATEGORY_GRID = new Array( ['\r\n'], [/(\d*)\s*(\S*)\s*(permit|deny)/i]); URL_REGEX_VIEW.URL_POLICY_BLACKLIST = /Blacklist\s*:\s*(\w*)/i; URL_REGEX_VIEW.URL_POLICY_WHITELIST = /Whitelist\s*:\s*(\w*)/i; URL_REGEX_VIEW.URL_POLICY_SEMISSION = /Remission-IP\s*:\s*(\w*)/i; URL_REGEX_VIEW.URL_POLICY_PRE_DEFINED = /Pre-defined.*:\s*(\w*)/i; URL_REGEX_VIEW.URL_POLICY_USER_DEFINED = /User-defined.*:\s*(\w*)/i; URL_REGEX_VIEW.URL_POLICY_FOR_FIREWALL = new Array( ['\r\n'], [/\"(\S+)\s*\"/]); FW_REGEX_TEMPLATE.LINKAGE_TSM_SERVER_INFO = /(\S+)[ ]+(\d+)[ ]+(active|inactive)[ ]+(Y|N)/; FW_REGEX_TEMPLATE.LINKAGE_TSM_URL_FORMAT = /^(?:http|https):\/\/\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}[^\s]*$/; FW_REGEX_TEMPLATE.LINKAGE_TSM_URL_MATCH = /\r\n \S+/g; FW_REGEX_TEMPLATE.LINKAGE_TSM_URL_INFO = /\r\n (\S+)/; FW_REGEX_TEMPLATE.LINKAGE_TSM_STAT_1 = /\s*Online user number\s*:\s*(\d+)/; FW_REGEX_TEMPLATE.LINKAGE_TSM_STAT_2 = /\s*Login\s*times\s*:\s*(\d+)/; FW_REGEX_TEMPLATE.LINKAGE_TSM_STAT_3 = /\r\n In all login failed times : (\d+)/; FW_REGEX_TEMPLATE.LINKAGE_TSM_STAT_5 = /\r\n In all logout failed times : (\d+)/; FW_REGEX_TEMPLATE.LINKAGE_TSM_STAT_4 = /\s*Logout\s*times\s*:\s*(\d+)/; FW_REGEX_TEMPLATE.LINKAGE_TSM_STAT_6 = /\s*Received COPS packets number\s*:\s*(\d+)/; FW_REGEX_TEMPLATE.LINKAGE_TSM_STAT_7 = /\s*Sending COPS packets number\s*:\s*(\d+)/; FW_REGEX_TEMPLATE.LINKAGE_TSM_STAT_8 = /\s*COPS packets error number\s*:\s*(\d+)/; FW_REGEX_TEMPLATE.LINKAGE_TSM_STAT_9 = /\s*Protocol process error number\s*:\s*(\d+)/; FW_REGEX_TEMPLATE.LINKAGE_TSM_DEFAULT_ACL = /\r\n default acl 3099/; FW_REGEX_TEMPLATE.LINKAGE_TSM_SERVER_ENABLE = /\s*right-manager server-group enable/; FW_REGEX_TEMPLATE.LINKAGE_TSM_STAT_ENABLE = /\s*right-manager status-detect enable/; FW_REGEX_TEMPLATE.LINKAGE_TSM_ACTIVE_SERVER = /\s*right-manager server-group active-minimum (\d+)/; FW_REGEX_TEMPLATE.LINKAGE_TSM_SERVER_MATCH = new Array(['\r\n'], [/^ server ip (\S+)[ ]port[ ]\d+[ ]shared-key[ ](.+)$/]); FW_REGEX_TEMPLATE.LINKAGE_TSM_DIS_ONLINEUSER = new Array(['\r\n User '], [/^name \s*:\s*(.+)$/], [/^\s*Ip\s+address\s*:\s(\S+)$/], [/^\s*ServerIp\s*:\s(\S+)$/], [/^\s*Login\s+time\s*:\s(\S*[ ]\S*)/],[/^\s*\d+\s*\w+\s*$/,'+']); FW_REGEX_TEMPLATE.LINKAGE_TSM_DIS_ROLEINFO = new Array(['\r\n'], [/^\sRole\s*(\d+)\s*(\d{4})\s*(\S+)\s*$/]); FW_REGEX_TEMPLATE.LINKAGE_TSM_DIS_FREEDOMUSER = new Array(['\r\n'], [/^\s?right-manager\suser\suser-name\s(\S+)\sip\s(\S+)\sroles\srole-id\s([\w\s]*)$/]); FW_REGEX_TEMPLATE.LINKAGE_TSM_SEARCHROLE = new Array([' Role'], [/\s*(\d+)\s*(\w+)\s*$/], [/\srule\s\d+\s(permit|deny)\s(\w+)(\sdestination\s(\S+\s?\S+)|)(\sdestination-port\seq\s(\S+)|)(\stime-range\s(\S+)|)/,'+']) FW_REGEX_TEMPLATE.LINKAGE_TSM_PARSEROLEID = /(\d+)/; FW_REGEX_TEMPLATE.LINKAGE_TSM_PARSEROLENAME = function(id) { return new RegExp('Role\\s*'+id+'\\s+\\d*\\s+(\\S+)'); } FW_REGEX_TEMPLATE.LINKAGE_TSM_REPLACERULE = /\r\n\[.*\]/g; FW_REGEX_TEMPLATE.LINKAGE_TSM_DIS_RULEINFO = new Array(['Role'], [/(\d:\S+)\s*\r\n\s+rule\s\d+\s(permit|deny)\s(\w+)(\sdestination\s(\S+ {0,1}\S+)|)(\sdestination-port\seq\s(\S+)|)(\stime-range\s(\S+)|)/]); FW_REGEX_VIEW.FIREWALL_TSMINTERZONE_GRID = new Array(["\r\n"], [/^ (\S+)\s+(\S+)/]); FW_REGEX_VIEW.FIREWALL_4APOLICY_GRID = new Array(["\r\n\r\n"], [FW_REGEX_VIEW.FIREWALL_POLICY_ID], [FW_REGEX_VIEW.FIREWALL_POLICY_PARAMS0], [FW_REGEX_VIEW.FIREWALL_POLICY_PARAMS1], [FW_REGEX_VIEW.FIREWALL_POLICY_PARAMS2], [FW_REGEX_VIEW.FIREWALL_POLICY_PARAMS3], [FW_REGEX_VIEW.FIREWALL_POLICY_PARAMS4], [FW_REGEX_VIEW.FIREWALL_POLICY_SERVICE, "+"], [FW_REGEX_VIEW.FIREWALL_POLICY_SOURCE, "+"], [FW_REGEX_VIEW.FIREWALL_POLICY_DESTINATION, "+"]); FW_REGEX_TEMPLATE.LINKAGE_TSM_DIS_SERVERRULE = new Array( ['\r\n'], [/^[ ]*rule (\d+) (permit|deny) (\w+)[ ]*(?:destination (\d+\.\d+\.\d+\.\d+ [0-9\.]+)|)(?: destination-port (\w+ \S+(?: \S+|))|) \((\d+) times matched\)/]); FW_REGEX_TEMPLATE.LINKAGE_TSM_ATM_BIDING = /(请在\d{1,}端口进行配置|Please do this operation in the port \d{1,}!)/; FW_REGEX_TEMPLATE.SYSTEM_PPPOESERVER_GETVT = /^(Virtual-Template(\d{1,4}))/; FW_REGEX_TEMPLATE.SYSTEM_PPPOESERVER_GETETHERNET = /^(GigabitEthernet\S*|Ethernet\S*|Ethernet\S*|Vlanif\S*|Virtual-Ethernet\S*|Eth-Trunk\S*|pon\S*)/; FW_REGEX_TEMPLATE.SYSTEM_PPPOESERVER_IFHAVEETH = /(Eth-Trunk number:)\s*\d*/; FW_REGEX_TEMPLATE.SYSTEM_PPPOESERVER_DISPLAYGRIDLIST = new Array(['\r\n'], [/\s*(\S*),\s*binded with (virtual template\d*)/]); FW_REGEX_TEMPLATE.SYSTEM_PPPOESERVER_GETLOCALSESSIONVALUE = /pppoe-server max-sessions local-mac\s+(\d+)/; FW_REGEX_TEMPLATE.SYSTEM_PPPOESERVER_GETREMOTESESSIONVALUE = /pppoe-server max-sessions remote-mac\s+(\d+)/; FW_REGEX_TEMPLATE.SYSTEM_PPPOESERVER_GETSYSTEMSESSIONVALUE = /pppoe-server max-sessions total\s+(\d+)/; FW_REGEX_TEMPLATE.SYSTEM_PPPOESERVER_GETISLOGSESSIONVALUE = /pppoe up-down-log\s+(disable)/; FW_REGEX_TEMPLATE.SYSTEM_PPPOECLIENT_DISPLAYLIST = new Array(['\r\n'], [/^\d*\s*(\d*)\s*(\d*|NULL)\s*(\S*)\s*(\S*)\s*(\S*)[ ]*(\S*)\s*$/]); FW_REGEX_TEMPLATE.SYSTEM_PPPOECLIENT_GETINTERFACES = new Array(['\r\n'], [/^(\S{1,64})/]); FW_REGEX_TEMPLATE.SYSTEM_PPPOECLIENT_GETDIALER = new Array(['\r\n'], [/\s*(Dialer\d*)/]); FW_REGEX_TEMPLATE.SYSTEM_PPPOECLIENT_GETDIALERBUNDLE = /\s*dialer\s*bundle\s*(\d*)/; FW_REGEX_TEMPLATE.FIREWALL_DESNAT_GETVPNVALUES = new Array(['\r\n'], [/\s+(\S+)\s+/]); FW_REGEX_TEMPLATE.FIREWALL_DESNAT_GETZONEVALUES = /^(\S+)\r\n\s+priority$/; FW_REGEX_TEMPLATE.FIREWALL_DESNAT_DISPLAYDESNATLIST = new Array( ['\r\n'], [/^[ ]*destination-nat\s+(\S+)\s+address\s+(\S+)(?:(?:\s+port\s+(\S+))|)/]); FW_REGEX_TEMPLATE.FIREWALL_DESNAT_ZONELIST = new Array(['\r\n#'], [/^(?!HRP)([\S\s]*)/], [/^ description ([\S\s]*)$/], [/^ priority is (\d{1,64})$/], [/^ interface of the zone is [(](\d{1,64})[)]:$/], [/^ (\S*)$/, '+']); FW_REGEX_TEMPLATE.FIREWALL_DESNAT_NOSUCHACL = /No Such ACL /; FW_REGEX_TEMPLATE.FIREWALL_DESNAT_GETFITACL = /The ACL (\d+) is fit/; FW_REGEX_TEMPLATE.FIREWALL_DESNAT_NATLIST = /(\S+)\s+port:\s+(\S+)\s+ACL:\s+(\d+)/; FW_REGEX_TEMPLATE.FIREWALL_DESNAT_NATLIST_RULE = /^[ ]*rule (\d+) (permit|deny) (service-set \S{1,} \((?:group|object|predefined)\)|\w+)[ ]+(?:source|)*([ ]*address-set \S+ \((?:group|object)\)| \d+.\d+.\d+.\d+ [0-9\. ]+)*(?:source-port \w{2} \d*)*[ ]*(?:destination|)*([ ]*address-set \S+ \((?:group|object)\)| \d+.\d+.\d+.\d+ [0-9\. ]+)*(?: destination-port \w{2} \d*)*[ ]*(?:precedence|)([ ][a-z\-]+|)[ ]*(?:tos|)([ ][a-z0-9\-]+|)[ ]*(?:logging|)[ ]*(?:time-range|)([ ]*[\S]+|)[ ]*\(\d+ times matched\)(?:\(Inactive\)|)/; FW_REGEX_TEMPLATE.ACL1 = /^[ ]*rule (\d+) (permit|deny) (service-set \S{1,} \((?:group|object|predefined)\)|\w+)[ ]*(?:source([ ]*address-set \S+ \((?:group|object)\)| \d+.\d+.\d+.\d+ [0-9\.]+)|)(?:[ ]*source-port[ ]|)(?:(?:eq|gt|lt)[ ](?:[\w\-]*)|)(?:(?:range)[ ](?:[\w\-]*)[ ](?:[\w\-]*)|)[ ]*(?:destination([ ]*address-set \S+ \((?:group|object)\)| \d+.\d+.\d+.\d+ [0-9\.]+)|)(?:[ ]*destination-port[ ]|)(?:(?:eq|gt|lt)[ ](?:[\w\-]*)|)(?:(?:range)[ ](?:[\w\-]*)[ ](?:[\w\-]*)|)(?:[ ]*icmp-type[ ](?:\S*\s\d*)|)[ ]*(?:precedence|)([ ][a-z\-]+|)[ ]*(?:tos|)([ ][a-z0-9\-]+|)[ ]*(?:(logging)|)[ ]*(?:time-range (\S+)|)[ ]+(?:description (\S+)|)[ ]*(?:\(Inactive\)|)/; FW_REGEX_TEMPLATE.ACL2 = /^[ ]*rule (\d+) (permit|deny)[ ]+(?:source|)([ ]*address-set \S+ \((?:group|object)\)| \d+.\d+.\d+.\d+ [0-9\.]+|)[ ]*(?:destination|)([ ]*address-set \S+ \((?:group|object)\)| \d+.\d+.\d+.\d+ [0-9\.]+|)[ ]*(?:precedence|)([ ][a-z\-]+|)[ ]*(?:tos|)([ ][a-z0-9\-]+|)[ ]*(?:(logging)|)[ ]*(?:description.*|)(?:time-range|)([ ]*[\S]+|)[ ]*(?:\(Inactive\)|)/; FW_REGEX_TEMPLATE.ACL3 = /\(\d+ times matched\)/g; FW_REGEX_TEMPLATE.ACL4 = /\(Inactive\)/g; FW_REGEX_TEMPLATE.ACL5 = /\(Active\)/g; FW_REGEX_TEMPLATE.RIP1 = /filter-policy (?:(\d+)|ip-prefix ("[^"].*"|\S+)) (import|export)(?: (\S+) (\d+)| (\S+)|)/; FW_REGEX_TEMPLATE.FIREWALL_ASPF_ASPFLIST = new Array( ['\r\nProtocol Type : '], [/(\S+)[ ]*/], [/ACLID : (\d+)[ ]*/], [/ACL Description : ([\S ]+)/]); FW_REGEX_TEMPLATE.FIREWALL_ASPF_L2TPALG=/l2tpalg (enable)/; FW_REGEX_TEMPLATE.SYSTEM_FIREWALL_LONGLINK_ACLNUM_OUTBOUND = { aclNum : [/^[ ]*long-link (\d{1,4}) outbound/] }; FW_REGEX_TEMPLATE.SYSTEM_FIREWALL_LONGLINK_ACLNUM_INBOUND ={ aclNum : [/^[ ]*long-link (\d{1,4}) inbound/] }; FW_REGEX_TEMPLATE.FIREWALL_LONGLNK_LONGTIME = / firewall long-link aging-time (\d*)/; FW_REGEX_TEMPLATE.VPN_TUNNEL_GETINTERFACELIST = new Array(['\r\n'], [/^interface\s+(\S+)/]); FW_REGEX_TEMPLATE.SYSTEM_NETWORK_INTERFACE_TUNNELGRIDLIST = new Array( ['\r\n\r\n'], [/^(\S{1,64}) current state : [Administratively| ]*(UP|DOWN)[\S ]*$/], [/^Line protocol current state \:[ ]*(UP|DOWN)[\(spoofing\)| ]*$/], [/^\S* current firewall zone : (.+)/], [/^Description \: (.*)/], [/^Internet Address is (\d+\.\d+\.\d+\.\d+)\/\d{1,2}/], [/^Tunnel source (\S*\s*\S*),\sdestination\s(?:\S*\s\S*\s|)(\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}\s*\S*)/], [/^Tunnel protocol\/transport (GRE)\/IP , key\s(\S*)/], [/linkalive\s(\S*)/], [/Checksumming of packets\s(\S*)/]); FW_REGEX_TEMPLATE.SYSTEM_NETWORK_INTERFACE_TUNNEL_DISPLAYTHIS = { interfaceName : [/^interface (\S{1,64})\s*/], description : [/^ description (.*)/], shutdown : [/^ shut(down)/], 'ipAddress,maskAddress' : [/^ ip address (\d+\.\d+\.\d+\.\d+) (\d+\.\d+\.\d+\.\d+)/], sourceInterface : [/^ source ([a-zA-Z]\S*)/], sourceIpaddress : [/^ source (\d+\.\d+\.\d+\.\d+)/], sourceVpn : [/ip binding vpn-instance (\S*)/], 'destVpn,destIpaddress' : [/^ destination(?: vpn-instance (\S*)|) (\d+\.\d+\.\d+\.\d+)/], protocol : [/tunnel-protocol (ipsec)/], grekey : [/gre key (\d*)/], grecheck : [/gre (check)sum/], destDomain : [/^ destination domain (\S+)/] }; FW_REGEX_TEMPLATE.TUNNEL_SOURCEADDRESS_SUCCESSFLAG = '此地址对应的接口不存在'; FW_REGEX_TEMPLATE.TUNNEL_IPSECPOLIC_COMBOX = new Array(['\r\n'], [/^\s*(\S+)-\d+\s*(?:manual|isakmp|template|)/]); FW_REGEX_TEMPLATE.TUNNEL_INTERFACETYPE_COMBO = new Array(['\r\n'], [/^\s+((?!NULL)\S+)\s+.*interface$/]); FW_REGEX_TEMPLATE.TUNNEL_MONITOR = { 'InPkts' : [/InPkts\s*:(\d{1,12})/], 'InBytes' : [/InBytes\s*:(\d{1,12})/], 'InPktSum' : [/InPktSum\s*:(\d{1,12})/], 'InSlicePkts' : [/InSlicePkts\s*:(\d{1,12})/], 'VersionError' : [/Version Error\s*:(\d{1,12})/], 'CheckSumError' : [/CheckSum Error\s*:(\d{1,12})/], 'KeyError' : [/Key Error\s*:(\d{1,12})/], 'OutPkts' : [/OutPkts\s*:(\d{1,12})/], 'OutBytes' : [/OutBytes\s*:(\d{1,12})/], 'OutErrs' : [/OutErrs\s*:(\d{1,12})/], 'MaxCurErrs' : [/Max Cur Errs\s*:(\d{1,12})/], 'TransCommonPkts' : [/Total Trans After Encap\s*:(\d{1,12})/] }; FW_REGEX_TEMPLATE.ACL_RANGE = /\s*INTEGER<3000-(\d+)>/; FW_REGEX_TEMPLATE.TUNNEL_INTERFACETYPE_REGEXP = /[A-Za-z\-]{1,48}/; FW_REGEX_TEMPLATE.TUNNEL_MONITOR_REGEXP = /INTEGER<(\S*)>/; FW_REGEX_TEMPLATE.GLOBAL_ACL_UNUSED = /The ACL (\d+) is unused/; FW_REGEX_TEMPLATE.ATTACK_BLACKLIST_ACLNUMBER = new Array(['#\r\n'], [/(?:Basic|Advanced) ACL (\d{1,4}).*\r\n(?:Description (.*)|)/]); FW_REGEX_TEMPLATE.ATTACK_BLACKLIST_BASICACLNUMBER = new Array(['#\r\n'], [/Basic ACL (\d{1,4}).*\r\n(?:Description (.*)|)/]); FW_REGEX_TEMPLATE.ATTACK_BLACKLIST_ADVANCEDACLNUMBER = new Array(['#\r\n'], [/Advanced ACL (\d{1,4}).*\r\n(?:Description (.*)|)/]); FW_REGEX_TEMPLATE.ATTACK_BLACKLIST_RULEGRID = new Array([],[/ACL[ ]*(\d*),[ ]*(\d*)[ ]rule/], [/(rule .*)/,'+']); FW_REGEX_TEMPLATE.ATTACK_BLACKLIST_RULEARRAY = [/rule[ ]*(\d+)[ ]*(permit|deny)[ ]*(\w*)(?:[ ]*source[ ]([0-9\.]+)[ ]([0-9\.]+)|)(?:[ ]*source-port[ ]|)(?:(eq|gt|lt)[ ]([\w\-]*)|)(?:(range)[ ]([\w\-]*)[ ]([\w\-]*)|)(?:[ ]*destination[ ]([0-9\.]+)[ ]([0-9\.]+)|)(?:[ ]*destination-port[ ]|)(?:(eq|gt|lt)[ ]([\w\-]*)|)(?:(range)[ ]([\w\-]*)[ ]([\w\-]*)|)(?:[ ]*icmp-type[ ](\S*\s\d*)|)(?:[ ]*precedence[ ]([\w\-]*)|)(?:[ ]*tos[ ]([\w\-]*)|)(?:[ ]*(logging)|)(?:[ ]*time-range[ ]*([\S]*)|)/]; FW_REGEX_TEMPLATE.ATTACK_BLACKLIST_BASICRULEARRAY = [/rule[ ]*(\d+)[ ]*(permit|deny)[ ]*(?:source([ ]address-set[ ][\w\-]+|[ ]([0-9\.]+)[ ]([0-9\.]+)|)|)[ ]*(?:(logging)|)[ ]*(?:time-range[ ]*([\S]+|)|)/]; FW_REGEX_TEMPLATE.ATTACKDEFENSE_BLACKLIST_ACLNUMBER = /Blacklist is (\S{1,})(?:[ ]*Acl-number (\d{1,4})|)/; FW_REGEX_TEMPLATE.FIREWALL_ACL_GRIDLIST = new Array(['#\r\n'], [/^(Basic|Advanced)[ ]ACL\s*(\d{4})\,[ ](\d*)[ ]rule(?:s|)\,(?:not[ ]|)binding[ ]with[ ]vpn-instance(\s\S*|)\s*(\S*)/], [/Description (.*)/],[/Acl's[ ]step[ ]is[ ](\d*)/]); FW_REGEX_TEMPLATE.FIREWALL_ACL_ADVANCEDRULE = new Array(['\r\n'],[/rule[ ]*(\d+)[ ]*(permit|deny)[ ]*(\w*)(?:[ ]*source[ ]([0-9\.]+)[ ]([0-9\.]+)|)(?:[ ]*source-port[ ]|)(?:(eq|gt|lt)[ ]([\w\-]*)|)(?:(range)[ ]([\w\-]*)[ ]([\w\-]*)|)(?:[ ]*destination[ ]([0-9\.]+)[ ]([0-9\.]+)|)(?:[ ]*destination-port[ ]|)(?:(eq|gt|lt)[ ]([\w\-]*)|)(?:(range)[ ]([\w\-]*)[ ]([\w\-]*)|)(?:[ ]*icmp-type[ ](\S*\s\d*)|)(?:[ ]*precedence[ ]([\w\-]*)|)(?:[ ]*tos[ ]([\w\-]*)|)(?:[ ]*(logging)|)(?:[ ]*time-range[ ]*([\S]*)|)/]); FW_REGEX_TEMPLATE.FIREWALL_ACL_BASICRULE = new Array(['\r\n'],[/rule[ ]*(\d+)[ ]*(permit|deny)[ ]*(?:source([ ]address-set[ ][\w\-]+|[ ]([0-9\.]+)[ ]([0-9\.]+)|)|)[ ]*(?:(logging)|)[ ]*(?:time-range[ ]*([\S]+|)|)/]); FW_REGEX_TEMPLATE.FIREWALL_ACL_VPN_COMBO = new Array(['\r\n'], [/((?=V.*)|\S{1,12}).*/]); FW_REGEX_TEMPLATE.FIREWALL_ACL_TIMERANGE_COMBO = new Array(['\r\n'], [/Time-range :[ ](\S*)/]); FW_REGEX_TEMPLATE.PROTOCOL_VTYPE_FORMAT = /^(\d{1,3}|all|gre|icmp|igmp|ip|ipinip|ospf|tcp|udp)$/; FW_REGEX_TEMPLATE.ICMPTYPE_VTYPE_FORMAT = /^(\d{1,3}|echo|echo-reply|fragmentneed-DFset|host-redirect|host-tos-redirect|host-unreachable|information-reply|information-request|net-unreacha|net-tos-redirect|net-unreachable|parameter-problem|port-unreachable|protocol-unreachable|reassembly-timeout|source-quench|source-route-failed|timestamp-reply|timestamp-request|ttl-exceeded)$/; FW_REGEX_TEMPLATE.IPPORTRANGE_TCP_VTYPE_FORMAT = /^(\d{1,5}|CHARgen|bgp|cmd|daytime|discard|domain|echo|exec|finger|ftp|ftp-data|gopher|hostname|ils|irc|klogin|kshell|login|lpd|mms|nntp|pop2|pop3|pptp|rpc|rtsp|smtp|sqlnet|sunrpc|tacacs|talk|telnet|time|uucp|whois|www)$/; FW_REGEX_TEMPLATE.IPPORTRANGE_UDP_VTYPE_FORMAT = /^(\d{1,5}|biff|bootpc|bootps|discard|dns|dnsix|echo|gtpv0|gtpv1c|gtpv1u|h323|hwcc|mgcp|mobileip-ag|mobileip-mn|nameserver|netbios-dgm|netbios-ns|netbios-ssn|ntp|rip|rpc|rtsp|sip|snmp|snmptrap|sunrpc|syslog|tacacs-ds|talk|tftp|time|who|xdmcp)$/; FW_REGEX_TEMPLATE.TOS_VTYPE_FORMAT = /^(\d{1,2}|normal|min-monetary-cost|max-reliability|max-throughput|min-delay)$/; FW_REGEX_TEMPLATE.PRECEDENCE_VTYPE_FORMAT = /^(\d{1,2}|critical|flash|flash-override|immediate|internet|network|priority|routine)$/; FW_REGEX_TEMPLATE.IPMASK_VTYPE_FORMAT = /^(0|\d+\.\d+\.\d+\.\d+)$/; FW_REGEX_TEMPLATE.VALIDATE_ACLNUMBER_COMBO = /Acl's step is (\d)/; FW_REGEX_VIEW.ROUTE_POLICY_MATCH_COST=/cost (\d+)/; FW_REGEX_VIEW.ROUTE_POLICY_MATCH_INTERFACE=/interface (\S+)/; FW_REGEX_VIEW.ROUTE_POLICY_MATCH_RTYPE=/route-type (\S+)/; FW_REGEX_VIEW.ROUTE_POLICY_MATCH_TAG=/tag (\d+)/; FW_REGEX_VIEW.ROUTE_POLICY_MATCH_MPLS=/(mpls-label)/; FW_REGEX_VIEW.ROUTE_POLICY_MATCH_PREFIX=/h ip-prefix (.+)/; FW_REGEX_VIEW.ROUTE_POLICY_MATCH_ACL=/h acl (\d+)/; FW_REGEX_VIEW.ROUTE_POLICY_MATCH_NPREFIX=/p ip-prefix (.+)/; FW_REGEX_VIEW.ROUTE_POLICY_MATCH_NACL=/p acl (\d+)/; FW_REGEX_VIEW.ROUTE_POLICY_MATCH_SPREFIX=/e ip-prefix (.+)/; FW_REGEX_VIEW.ROUTE_POLICY_MATCH_SACL=/e acl (\d+)/; FW_REGEX_VIEW.ROUTE_POLICY_MATCH_COMM=/ community-filter (.+)/; FW_REGEX_VIEW.ROUTE_POLICY_MATCH_EXTC=/tcommunity-filter (.+)/; FW_REGEX_VIEW.ROUTE_POLICY_MATCH_RD=/rd-filter (\d+)/; FW_REGEX_VIEW.ROUTE_POLICY_MATCH_AS=/h-filter (.+)/; FW_REGEX_VIEW.ROUTE_POLICY_APPLY_AS=/th (.+)/; FW_REGEX_VIEW.ROUTE_POLICY_APPLY_SHOP=/s next-hop (\S+)/; FW_REGEX_VIEW.ROUTE_POLICY_APPLY_BHOP=/nexthop (\S+)/; FW_REGEX_VIEW.ROUTE_POLICY_APPLY_INTERFACE=/-interface (\S+)/; FW_REGEX_VIEW.ROUTE_POLICY_APPLY_LOCAL=/-preference (\d+)/; FW_REGEX_VIEW.ROUTE_POLICY_APPLY_COST=/cost (.+)/; FW_REGEX_VIEW.ROUTE_POLICY_APPLY_CTYPE=/t-type (\S+)/; FW_REGEX_VIEW.ROUTE_POLICY_APPLY_ORIGIN=/origin (.+)/; FW_REGEX_VIEW.ROUTE_POLICY_APPLY_COMM=/ community (.+)/; FW_REGEX_VIEW.ROUTE_POLICY_APPLY_TAG=/tag (\d+)/; FW_REGEX_VIEW.ROUTE_POLICY_APPLY_MPLS=/(mpls-label)/; FW_REGEX_VIEW.ROUTE_POLICY_APPLY_PREF=/ preference (\d+)/; FW_REGEX_VIEW.ROUTE_POLICY_APPLY_EXTC=/extcommunity (.+)/; FW_REGEX_VIEW.ROUTE_POLICY_APPLY_ISIS=/isis (\S+)/; FW_REGEX_VIEW.ROUTE_POLICY_APPLY_OSPF=/ospf (\S+)/; FW_REGEX_VIEW.ROUTE_POLICY_APPLY_VALUE=/value (\d+)/; FW_REGEX_VIEW.ROUTE_POLICY_APPLY_CONV=/priority (\d+)/; FW_REGEX_VIEW.ROUTE_POLICY_APPLY_TRAFFIC=/index (\d+)/; FW_REGEX_VIEW.ROUTE_POLICY_LOAD_INTERFACE=/(\S+)\s+(?:up|[ \*\^]down)/; FW_REGEX_VIEW.ROUTE_POLICY_NODE_SPLIT=/(?:permit|deny)/; FW_REGEX_VIEW.ROUTE_POLICY_NODE_CHECK=/(?:route-policy)/; FW_REGEX_VIEW.ROUTE_POLICY_NODE_MATCH=/(permit|deny) : (\d+)/g; FW_REGEX_VIEW.ROUTE_POLICY_NODE_SPLIT=/(?:permit|deny) : (?:\d+)/; FW_REGEX_VIEW.ROUTE_POLICY_ELEMENT_MATCH=[/if-match interface (.+)/, / {8}(\S.+)/, /if-match (acl|ip-prefix) (.+)/, /if-match ip next-hop (acl|ip-prefix) (.+)/, /apply tag (\d+)/]; FW_REGEX_VIEW.ROUTE_POLICY_ELEMENT_VALUE_MATCH=/(?:(?:if-match|apply) (?:.+))|(?: {8}(?:.+))/g; FW_REGEX_VIEW.ROUTE_POLICY_MATCH_ELEMENT=/if-match (.+)/g; FW_REGEX_VIEW.ROUTE_POLICY_APPLY_ELEMENT=/apply (.+)/g; FW_REGEX_VIEW.ROUTE_POLICY_APPLY_COMM_NUM=/^(?:(?:\d+)|(?:\d+:\d+))$/; FW_REGEX_VIEW.ROUTE_POLICY_APPLY_COMM_MATCH=/^(?:(?:\d|[1-9]\d{1,8}|[1-4]\d{9})|(?:(?:\d|[1-9]\d{1,3}|[1-6]\d{4}):(?:\d|[1-9]\d{1,3}|[1-6]\d{4})))$/; FW_REGEX_VIEW.ROUTE_POLICY_APPLY_EXTC_MATCH=/^(?:(?:(?:(?:\d|[1-9]\d|[1]\d\d|[2][0-4]\d|[2][5][0-5]))(?:\.(?:\d|[1-9]\d|[1]\d\d|[2][0-4]\d|[2][5][0-5])){3}:(?:\d|[1-9]\d{1,3}|[1-6]\d{4}))|(?:(?:\d|[1-9]\d{1,3}|[1-6]\d{4}):(?:\d|[1-9]\d{1,8}|[1-4]\d{9})))$/; FW_REGEX_VIEW.ROUTE_POLICY_PREFIX_IP_MASK=/^(?:(?:\d|[1-9]\d|[1]\d\d|[2][0-4]\d|[2][5][0-5]))(?:\.(?:\d|[1-9]\d|[1]\d\d|[2][0-4]\d|[2][5][0-5])){3}\/(?:\d|[1-2]\d|[3][0-2])$/; FW_REGEX_VIEW.ROUTE_POLICY_PREFIX_MASK_SCOPE=/^(?:\d|([12]\d)|(3[0-2]))\-(?:\d|([12]\d)|(3[0-2]))$/; FW_REGEX_VIEW.ROUTE_POLICY_PREFIX_CHECK=/Prefix-List/; FW_REGEX_TEMPLATE.ROUTE_POLICY_PREFIX_PARSE=[['\r\nPrefix'], [/(?:-list\s("[^"].*"|\S+))/], [/index:\s+(\d+)\s+(permit|deny)\s+(\S+)(\s+(?:ge\s+(\d{1,2})|)\s+le\s+(\d{1,2}))?/,'+']]; FW_REGEX_TEMPLATE.ROUTE_POLICY_PARSE=[['\r\nroute'], [/(?:-policy ("[^"].*"|\S+) (permit|deny) node (\d+))/], [/(?:if-match interface (\S+))/,'+'], [/(?:if-match (acl|ip-prefix) (.+))/], [/(?:if-match ip next-hop (acl|ip-prefix) (.+))/], [/(?:apply tag (\d+))/]]; FW_REGEX_TEMPLATE.ROUTE_POLICY_PARSE_PREFIX=/(?:-list ("[^"].*"|\S+))/; FW_REGEX_TEMPLATE.CHECK_DIAGONAL=/\\/; FW_REGEX_TEMPLATE.CHECK_ALL_DIAGONAL=/\\/g; FW_REGEX_TEMPLATE.BGP_BGP_AS_NUMBER=[/^[ ]*bgp[ ]*(\d+)/]; FW_REGEX_TEMPLATE.BGP_BGP_ROUTER_ID=[/^[ ]*router-id[ ]*(\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3})/]; FW_REGEX_TEMPLATE.BGP_DISPLAYPEERCMD=new Array( ['\r\n'], [/^[ ]*(\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3})[ ]+(\S+)[ ]+(\S+)[ ]+(\S+)[ ]+(\S+)[ ]+\S+[ ]+(\S+)[ ]+(\S+)[ ]+(\S+)/] ); FW_REGEX_TEMPLATE.BGP_GETL3INTERFACE=new Array( ['\r\n\r\n'], [/([A-Za-z0-9-]{1,}[0-9/\.:]{1,})[ ]current[ ]state[ ]:/]); FW_REGEX_TEMPLATE.BGP_DISPLAYNETWORKCMD=new Array( ['\r\n'], [/^[ ]*(\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3})[ ]+(\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3})[ ]+(".+"|\S+|)/]); FW_REGEX_TEMPLATE.BGP_DISPLAYIMPORTROUTECMD=new Array( ['\r\n'], [/^[ ]*import-route[ ]*(\S+)[ ]*(\d+|)[ ]*(med |)(\d+|)[ ]*(route-policy |)(".+"|\S+|)/]); FW_REGEX_VIEW.ROUTE_SPLIT_PAGING_INDEX=/\s+(\d{1,})\s+(\d{1,})/; FW_REGEX_VIEW.DHCP_SPLIT_INTERFACE_NAME=/([A-Za-z-]{1,})(\d+\/{0,1}\d*\/{0,1}\d*.*\d*)/; FW_REGEX_VIEW.DHCP_INTERFACE_NAME=/([A-Za-z-]{1,}\d+\/{0,1}\d*\/{0,1}\d*)\s+current\s+state\s*:\s+[A-Z]+/; FW_REGEX_VIEW.DHCP_ALL_INTERFACE=/^(\S+)[ ]current[ ]state[ ]:/; FW_REGEX_VIEW.DHCP_LAYER3_FILTER=/^([A-Za-z-]+\d+\/\d+\/)/; FW_REGEX_TEMPLATE.DHCP_MODE_PARSER=/(\S+)[ ]+(\S+)[ ]+([0-9\.]{7,15})[ ]+([0-9\.]{7,15})[ ]+(global|relay|interface)/; FW_REGEX_TEMPLATE.DHCP_LAYER3_SUB=/([A-Za-z-]{1,}(?:\d+\.\d+|\d+\/+\d+\/+\d+.\d+))\s+current\s+state/; FW_REGEX_TEMPLATE.DHCP_LAYER3_SUB_FILTER=/^([A-Za-z-]+\d+\/\d+\/)/; FW_REGEX_TEMPLATE.DHCP_LAYER3_SUB_REPLACE = /\\/g; FW_REGEX_TEMPLATE.DHCP_RELAY_PARSE_TPL = [['\r\n'], [/^\s+Relay\sAddress\s\[\d+\]\s:\s+(\d{1,3}.\d{1,3}.\d{1,3}.\d{1,3})/]]; FW_REGEX_TEMPLATE.DHCP_INTERFACE_BIND_IP=/(\d{1,3}.\d{1,3}.\d{1,3}.\d{1,3})\s+([a-z0-9]{4}-[a-z0-9]{4}-[a-z0-9]{4})\s+(NOT\s+Used|\S+\s+\d+\s+\d+\s+\d+:\d+:\d+\s+\S+)\s+(\S+)/; FW_REGEX_TEMPLATE.DHCP_INTERFACE_BIND_PARSE_TPL = [['\r\n'], [FW_REGEX_TEMPLATE.DHCP_INTERFACE_BIND_IP]]; FW_REGEX_VIEW.DHCP_SWITCH_FAILURE = [/Info:DHCP SELECT command fail:(\S+) no main ip address!/,/Info:接口DHCP处理模式选择命令配置失败:找不到(\S+)接口的主IP地址!/]; FW_REGEX_VIEW.DHCP_POOL_NAME=/\s*Pool\s+name:\s+(".+"|\S+)/; FW_REGEX_VIEW.DHCP_POOL_NAME_CONFIG=/dhcp[ ]server[ ]ip-pool[ ](".+"|\S+)/; FW_REGEX_VIEW.DHCP_NETWORK=/\s*mask\s(\d{1,3}.\d{1,3}.\d{1,3}.\d{1,3})/; FW_REGEX_VIEW.DHCP_IPRANGE=/\s*ip-range (\d+\.\d+\.\d+\.\d+)[ ]*(\d+\.\d+\.\d+\.\d+)/; FW_REGEX_VIEW.DHCP_STATICBIND=/\s*static-bind\s+ip-address\s+(\d{1,3}.\d{1,3}.\d{1,3}.\d{1,3})\smask\s(\d{1,3}.\d{1,3}.\d{1,3}.\d{1,3})/; FW_REGEX_VIEW.DHCP_STATICBIND_MAC=/\s*static-bind\s+mac-address\s+(\S+)/; FW_REGEX_VIEW.DHCP_GETWAY=/\s*gateway-list\s+([\d{1,3}.\d{1,3}.\d{1,3}.\d{1,3} ]+)/; FW_REGEX_VIEW.DHCP_DNSLIST=/\s*dns-list[ ]([(\d{1,3}.\d{1,3}.\d{1,3}.\d{1,3})\(S|D\) ]+)/; FW_REGEX_VIEW.DHCP_DNSLIST_CONFIG=/(\d{1,3}.\d{1,3}.\d{1,3}.\d{1,3})/g; FW_REGEX_VIEW.DHCP_EXPIRED=/expired\s+day\s+(\d+)\s+hour\s*(\d+)*\s*minute\s*(\d+)*/; FW_REGEX_VIEW.DHCP_EXPIRED_CONFIG=/expired[ ]day[ ](\d+)[ ]*\S*[ ]*(\d+)*[ ]*\S*[ ]*(\d+)*/; FW_REGEX_VIEW.DHCP_EXPIRED_STATUS=/expired[ ]([a-z]+)/; FW_REGEX_VIEW.DHCP_DOMAIN_NAME=/\s*domain-name\s+(\S+)/; FW_REGEX_VIEW.DHCP_NBNS=/\s*nbns-list\s+([\d{1,3}.\d{1,3}.\d{1,3}.\d{1,3}\s*]+)/; FW_REGEX_VIEW.DHCP_NETBOIS=/\s*netbios-type\s+(\S+)/; FW_REGEX_VIEW.DHCP_IPPOOL_OPTION_HEX = /^[0-9a-fA-F ]+$/; FW_REGEX_VIEW.DHCP_IPPOOL_OPTION=/\s*option[ ](\d+)[ ](ip|ascii|hex|ip-address)[ ]([\S \.]+)/; FW_REGEX_VIEW.DHCP_VIEW_INTERFACE_IP = /\r\nInternet Address is (\d{1,3}.\d{1,3}.\d{1,3}.\d{1,3})\/(\d{1,3})\s{1,}/; FW_REGEX_VIEW.DHCP_INTERFACE_OPTION=/dhcp[ ]server[ ]option[ ](\d+)[ ](ip|ascii|hex|ip-address)[ ]([\S \.]+)/; FW_REGEX_VIEW.DHCP_EXPIRED_IP=/\s*(\d{1,3}.\d{1,3}.\d{1,3}.\d{1,3})[ ]+([a-z0-9]{4}-[a-z0-9]{4}-[a-z0-9]{4})[ ]+(NOT[ ]+Used|Unlimited|\d+-\d+-\d+ \d+:\d+:\d+)[ ]+(\S+)/; FW_REGEX_VIEW.DHCP_FORBIDDEN_IP=/\s+dhcp\s+server\s+forbidden-ip\s+(\d{1,3}.\d{1,3}.\d{1,3}.\d{1,3})\s{0,1}(\d{1,3}.\d{1,3}.\d{1,3}.\d{1,3}){0,1}/; FW_REGEX_VIEW.DHCP_POOL_MASK_LENGTH=/^1+/; FW_REGEX_VIEW.SNOOPING_ENABLE=/dhcp[ ]snooping[ ](enable)/; FW_REGEX_VIEW.SNOOPING_GLOBAL_ALARM=/dhcp[ ]snooping[ ]alarm[ ]threshold[ ](\d+)/; FW_REGEX_VIEW.SNOOPING_GLOBAL_RATE=/dhcp[ ]snooping[ ]check[ ]dhcp-rate[ ](enable)/; FW_REGEX_VIEW.SNOOPING_GLOBAL_RATE_ALARM=/dhcp[ ]snooping[ ]check[ ]dhcp-rate[ ]alarm[ ](enable)/; FW_REGEX_VIEW.SNOOPING_GLOBAL_RATE_THRESHOLD=/dhcp[ ]snooping[ ]check[ ]dhcp-rate[ ](\d+)/; FW_REGEX_VIEW.SNOOPING_GLOBAL_RATE_ALARM_THRESHOLD=/dhcp[ ]snooping[ ]check[ ]dhcp-rate[ ]alarm[ ]threshold[ ](\d+)/; FW_REGEX_VIEW.SNOOPING_TRUSTED=/dhcp[ ]snooping[ ](trusted)/; FW_REGEX_VIEW.SNOOPING_CHECK_IP=/dhcp[ ]snooping[ ]check[ ]ip[ ](enable)/; FW_REGEX_VIEW.SNOOPING_CHECK_ARP=/dhcp[ ]snooping[ ]check[ ]arp[ ](enable)/; FW_REGEX_VIEW.SNOOPING_CHECK_CHADDR=/dhcp[ ]snooping[ ]check[ ]dhcp-chaddr[ ](enable)/; FW_REGEX_VIEW.SNOOPING_CHECK_REQUEST=/\sdhcp[ ]snooping[ ]check[ ]dhcp-request[ ](enable)/; FW_REGEX_VIEW.SNOOPING_NOMATCH_IP=/dhcp[ ]snooping[ ]nomatch-packet[ ]ip[ ]action[ ](discard)/; FW_REGEX_VIEW.SNOOPING_NOMATCH_ARP=/dhcp[ ]snooping[ ]nomatch-packet[ ]arp[ ]action[ ](discard)/; FW_REGEX_VIEW.SNOOPING_ALARM_IP=/dhcp[ ]snooping[ ]alarm[ ]ip[ ](enable)/; FW_REGEX_VIEW.SNOOPING_ALARM_IP_THRESHOLD=/dhcp[ ]snooping[ ]alarm[ ]ip[ ]threshold[ ](\d+)/; FW_REGEX_VIEW.SNOOPING_ALARM_ARP=/dhcp[ ]snooping[ ]alarm[ ]arp[ ](enable)/; FW_REGEX_VIEW.SNOOPING_ALARM_ARP_THRESHOLD=/dhcp[ ]snooping[ ]alarm[ ]arp[ ]threshold[ ](\d+)/; FW_REGEX_VIEW.SNOOPING_ALARM_CHADDR=/dhcp[ ]snooping[ ]alarm[ ]dhcp-chaddr[ ](enable)/; FW_REGEX_VIEW.SNOOPING_ALARM_CHADDR_THRESHOLD=/dhcp[ ]snooping[ ]alarm[ ]dhcp-chaddr[ ]threshold[ ](\d+)/; FW_REGEX_VIEW.SNOOPING_ALARM_REQUEST=/dhcp[ ]snooping[ ]alarm[ ]dhcp-request[ ](enable)/; FW_REGEX_VIEW.SNOOPING_ALARM_REQUEST_THRESHOLD=/dhcp[ ]snooping[ ]alarm[ ]dhcp-request[ ]threshold[ ](\d+)/; FW_REGEX_VIEW.SNOOPING_ALARM_REPLY=/dhcp[ ]snooping[ ]alarm[ ]dhcp-reply[ ](enable)/; FW_REGEX_VIEW.SNOOPING_ALARM_REPLY_THRESHOLD=/dhcp[ ]snooping[ ]alarm[ ]dhcp-reply[ ]threshold[ ](\d+)/; FW_REGEX_VIEW.SNOOPING_OPTION_INSERT=/\s*dhcp[ ]+option82[ ]+insert[ ]+(enable)/; FW_REGEX_VIEW.SNOOPING_OPTION_REBUILD=/\s*dhcp[ ]+option82[ ]+rebuild[ ]+(enable)/; FW_REGEX_VIEW.SNOOPING_BIND_IP_MAC=/bind-table[ ]static[ ]ip-address[ ](\d{1,3}.\d{1,3}.\d{1,3}.\d{1,3})[ ]mac-address[ ]([a-z0-9]{4,}-[a-z0-9]{4,}-[a-z0-9]{4,})[ ]interface/; FW_REGEX_VIEW.SNOOPING_VLANIF=/Vlanif(\d{1,4})/; FW_REGEX_TEMPLATE.SNOOPING_GRID_INTERFACE_SNP=/([a-zA-Z0-9-]{1,20}[0-9/\.]{1,20})[ ]{1,20}(untrusted|trusted|--)[ ]+(disable|enable|--)[ ]+(disable|enable|--)[ ]+(disable|enable|--)[ ]+(disable|enable|--)/; FW_REGEX_TEMPLATE.SNOOPING_GRID_LAYER2_INTERFACE_SNP=/([a-zA-Z0-9-]{1,20}[0-9/\.]{1,20})[ ]{1,15}(\d{1,4})[ ]+(untrusted|trusted|--)[ ]+(disable|enable|--)[ ]+(disable|enable|--)[ ]+(disable|enable|--)[ ]+(disable|enable|--)/; FW_REGEX_TEMPLATE.SNOOPING_GRID_VLAN_LAYER2_INTERFACE_SNP=/([a-zA-Z0-9-]{1,20}[0-9/\.]{1,20})[ ]{1,20}(untrusted|trusted|--)[ ]+(disable|enable|--)[ ]+(disable|enable|--)[ ]+(disable|enable|--)[ ]+(disable|enable|--)/; FW_REGEX_TEMPLATE.SNOOPING_GRID_VLAN_SNP=/vlan[ ]([0-9]{1,4})[ ]+(untrusted|trusted|--)[ ]+(disable|enable|--)[ ]+(disable|enable|--)[ ]+(disable|enable|--)[ ]+(disable|enable|--)/; FW_REGEX_TEMPLATE.SNOOPING_GRID_STATIC_BIND=/\s*\S+\s+\S+\s+\S+\s+\S+\s+([A-Za-z0-9]{4}-[A-Za-z0-9]{4}-[A-Za-z0-9]{4})\s+(\d{1,3}.\d{1,3}.\d{1,3}.\d{1,3})/; FW_REGEX_VIEW.ROUTE_IMPORT1 = /Default-cost : (\d+)/; FW_REGEX_VIEW.ROUTE_IMPORT2 = /import-route (\S+)(?: (\d+)|)(?: cost (\d+)|)(?: route-policy (.*)|)/; FW_REGEX_VIEW.ROUTE_FILTER1 = /filter-policy[ ]+(\d+)[ ]+(import|export)[ ]*(\w*[-]*\w*[ ]*\d*)/; FW_REGEX_VIEW.ROUTE_FILTER2 = /rule (\d{1,}) (\S+) (source |)(address-set \S+ \S+|[\d{1,}\. ]+ ||)/; FW_REGEX_VIEW.ROUTE_FILTER3 = /(export|import) (\d+)[ ]*(?:(\S+)|)[ ]*(?:(\d+)|)/; FW_REGEX_VIEW.ROUTE_FILTER4 = /time-range (\S+)/; FW_REGEX_VIEW.ROUTE_FILTER5 = /\(Inactive\)/g; FW_REGEX_VIEW.ROUTE_RIP_PANEL1 = / (\d+)/; FW_REGEX_VIEW.ROUTE_RIP_PANEL2 = /Update time : (\d+) sec Age time : (\d+) sec/; FW_REGEX_VIEW.ROUTE_RIP_PANEL3 = /Default-cost : (\d+)/; FW_REGEX_VIEW.ROUTE_RIP_PANEL4 = /Preference : (\d+)(?: Route policy : (.*)|)/; FW_REGEX_VIEW.ROUTE_RIP_PANEL5 = /Checkzero : (\S+)/; FW_REGEX_VIEW.ROUTE_RIP_PANEL6 = /Hostroutes : (\S+)/; FW_REGEX_VIEW.ROUTE_RIP_PANEL7 = /Summary : (\S+)/; FW_REGEX_VIEW.ROUTE_RIP_PANEL8 = /RIP version : (\d)+/; FW_REGEX_VIEW.ROUTE_RIP_PANEL9 = /Maximum number of balanced paths : (\d+)/; FW_REGEX_VIEW.ROUTE_RIP_PANEL10 = /Garbage-collect time : (\d+) sec/; FW_REGEX_VIEW.ROUTE_RIP_PANEL11 = /Default Route : (\S+) Default Route Cost : (\d+)/; FW_REGEX_VIEW.ROUTE_RIP_PANEL12 = /Verify-source : (\S+)/; FW_REGEX_VIEW.ROUTE_RIP_NETWORK1 = /network (\S+)/; FW_REGEX_VIEW.ROUTE_RIP_NEIBGHBER1 = /peer (\S+)/; FW_REGEX_VIEW.ROUTE_RIP_SILENTTPL1 = /silent-interface (\S+)/; FW_REGEX_VIEW.ROUTE_RIP_SILENTTPL1 = /silent-interface (\S+)/; FW_REGEX_VIEW.ROUTE_RIP_ROUTE_FILTER1 = /filter-policy[ ]+(\d+)[ ]+(import|export)[ ]*(\w*[-]*\w*[ ]*\d*)/; FW_REGEX_VIEW.ROUTE_RIP_VPN=/Private VPN-instance name : (\S+)/; var FW_REGEX_UTIL = function() { } FW_REGEX_UTIL.QUO_FIRST=/^"/; FW_REGEX_UTIL.SPACE_FIRST=/^ /; FW_REGEX_UTIL.SPACE=/ /; FW_REGEX_UTIL.QUO_OUT=/^"(?:(?: +.*)|(?:\S+ +.*))"./; FW_REGEX_UTIL.QUO_SUB_STANDARD=/^".+"/; FW_REGEX_UTIL.QUO_STANDARD=/^".+"$/; FW_REGEX_UTIL.QUO_NOT_SPACE=/^""\S/; FW_REGEX_UTIL.QUO_ONLY=/^"+$/; FW_REGEX_UTIL.QUO_OUT_LIMIT=/^\S".+"$/; FW_REGEX_UTIL.QUO_BACK_STANDARD=/".+"$/; FW_REGEX_UTIL.QUO_OUT_SPACE=/^".+" /; FW_REGEX_UTIL.QUO_OUT_STRING=/^".+"\S+/; FW_REGEX_UTIL.QUO_DOUBLE_SPACE=/^"" /; FW_REGEX_UTIL.CHECK_UNDERLINE=/_/; FW_REGEX_UTIL.CHECK_ALL_UNDERLINE=/_/g; FW_REGEX_UTIL.CHECK_PLUS=/\+/; FW_REGEX_UTIL.CHECK_ALL_PLUS=/\+/g; FW_REGEX_UTIL.CHECK_VERTICALLINE=/\|/; FW_REGEX_UTIL.CHECK_ALL_VERTICALLINE=/\|/g; FW_REGEX_UTIL.CHECK_POINT=/\./; FW_REGEX_UTIL.CHECK_ALL_POINT=/\./g; FW_REGEX_UTIL.CHECK_ASTERISK=/\*/; FW_REGEX_UTIL.CHECK_ALL_ASTERISK=/\*/g; FW_REGEX_UTIL.CHECK_LBRACKET=/\(/; FW_REGEX_UTIL.CHECK_ALL_LBRACKET=/\(/g; FW_REGEX_UTIL.CHECK_RBRACKET=/\)/; FW_REGEX_UTIL.CHECK_ALL_RBRACKET=/\)/g; FW_REGEX_UTIL.CHECK_LMBRACKET=/\[/; FW_REGEX_UTIL.CHECK_ALL_LMBRACKET=/\[/g; FW_REGEX_UTIL.CHECK_RMBRACKET=/\]/; FW_REGEX_UTIL.CHECK_ALL_RMBRACKET=/\]/g; FW_REGEX_UTIL.CHECK_DOLLAR=/\$/; FW_REGEX_UTIL.CHECK_ALL_DOLLAR=/\$/g; FW_REGEX_UTIL.CHECK_INTERFACE_GE=/GE(\d+).*/; FW_REGEX_UTIL.CHECK_INTERFACE_VT=/VT(\d+).*/; FW_REGEX_UTIL.CHECK_INTERFACE_VE=/VE(\d+).*/; FW_REGEX_UTIL.CHECK_INTERFACE_S=/S(\d+).*/; FW_REGEX_UTIL.CHECK_INTERFACE_ETHT=/Eth-T(\d+).*/; FW_REGEX_UTIL.CHECK_INTERFACE_ETH=/Eth(\d+).*/; FW_REGEX_UTIL.CHECK_INTERFACE_TUN=/Tun(\d+).*/; FW_REGEX_VIEW.ATTACKDEFENSE_IPCAR_ZONE = /^(trust|untrust|local|dmz|\S+)/; FW_REGEX_VIEW.ATTACKDEFENSE_IPCAR_ZONE_NAME = /zone[ ](?:vpn-instance[ ]\S{1,31}|)[ ]{0,1}(?:name|)[ ]{0,1}(\S{1,32})[ ](in|out)[ ](enable|undo)/; FW_REGEX_VIEW.ATTACKDEFENSE_IPCAR_INZONE_ENABLE = /statistic[ ](enable)[ ]ip[ ]inzone/; FW_REGEX_VIEW.ATTACKDEFENSE_IPCAR_OUTZONE_ENABLE = /statistic[ ](enable)[ ]ip[ ]outzone/; FW_REGEX_VIEW.ATTACKDEFENSE_IPCAR_CAR_CONFIG = /(car)[ ]ip[ ](inbound|outbound)[ ](\d+)[ ]acl-number[ ](\d+)/; FW_REGEX_VIEW.ATTACKDEFENSE_IPCAR_IPSTAT_CONFIG = /(ip-stat)[ ](inbound|outbound)[ ]acl-number[ ](\d+)/; FW_REGEX_VIEW.ATTACKDEFENSE_IPCAR_CONN_CONFIG = /(connect-number)[ ]ip[ ](tcp|udp|source\snat)[ ](inbound|outbound)[ ](\d+)[ ]acl-number[ ](\d+)/; FW_REGEX_TEMPLATE.ATTACKDEFENSE_IPCAR_ENABLE = /ip-car[ ](enable)/; FW_REGEX_TEMPLATE.ATTACKDEFENSE_IPCAR_CLASS = /^[ ]+(\d)[ ]+(\d+)/; FW_REGEX_TEMPLATE.ATTACKDEFENSE_IPCAR_CAR_STAT = /(\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3})[ ]+(\d+\/\d+)[ ]+(\d+\/\d+)[ ]+(\S+)/; FW_REGEX_TEMPLATE.ATTACKDEFENSE_IPCAR_CONN_STAT = /(\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3})[ ]+(\d+[ ]+\/\d+[ ]+\/\d+)[ ]+(\d+[ ]+\/\d+[ ]+\/\d+)[ ]+(\S+)/; FW_REGEX_TEMPLATE.ATTACKDEFENSE_IPCAR_BANDWIDTH_TOP = /(\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3})[ ]+(\d+\/\d+)[ ]+(\d+\/\d+)[ ]+(\S+)/; FW_REGEX_TEMPLATE.ATTACKDEFENSE_IPCAR_CONN_TOP = /(\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3})[ ]+(\d+[ ]*\/\d+)[ ]*\/\d+[ ]+(\d+[ ]*\/\d+[ ]*)\/\d+[ ]+(\S+)/; FW_REGEX_TEMPLATE.CONN_CONFIG_MONITOR_LIST = new Array( ['\r\n'],[/(\S*)[ ]*(\d{1,12})[ ]*\/(\d{1,12})[ ]*(\d{1,12})[ ]*\/(\d{1,12})[ ]*(\S*)/]); FW_REGEX_TEMPLATE.CONN_CONFIG_ZONE_GRID_LIST = new Array(['\r\n#'], [/^(?: vpn-instance \S+ |)(?!vzone)([\S]{1,64})/], [/statistic enable ip (inzone)/], [/statistic enable ip (outzone)/], [/statistic connect-number zone inzone tcp (\d{1,8})/], [/statistic connect-number zone outzone tcp (\d{1,8})/], [/statistic connect-number zone inzone udp (\d{1,8})/], [/statistic connect-number zone outzone udp (\d{1,8})/]); FW_REGEX_VIEW.GUIDE_CONNECT_INTERFACE_PHYSICALSTATE = [/^([a-zA-Z0-9\/-]{1,64}) current state :[ |\w]+(UP|DOWN)/]; FW_REGEX_VIEW.GUIDE_CONNECT_INTERFACE_PROTOCOLSTATE = [/^Line protocol current state \:[ ]*(UP|DOWN)[\(spoofing\)| ]*$/]; FW_REGEX_VIEW.GUIDE_CONNECT_INTERFACE_IPMASK = [/Internet Address is.*\D(\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3})\/(\d{1,2})/]; FW_REGEX_VIEW.GUIDE_CONNECT_PORT_DEFAULT_VLAN = [/^port default vlan (\d*)/]; FW_REGEX_TEMPLATE.GUIDE_CONNECT_VALNIF_ZONE = [/^(?:[a-zA-Z0-9\/-]{1,64}) current firewall zone :[ |\w](.+)/]; FW_REGEX_VIEW.GUIDE_CONNECT_PHYSICALINTERFACE=new Array( ['\r\n'], [/([a-zA-Z0-9\/-]{1,64})[ ]+(--|\S+)[ ]+(--|\d+)/]); FW_REGEX_VIEW.GUIDE_CONNECT_UNUSED_DIALER = new Array( ['\r\n\r\n'],[/The next dialer interface which not configured is (\S*)/]); FW_REGEX_VIEW.GUIDE_CONNECT_UNUSED_VE = new Array( ['\r\n\r\n'],[/The next interface which not configured is (\S*)/]); FW_REGEX_VIEW.GUIDE_CONNECT_UNUSED_DIALER_BUNDLE = new Array( ['\r\n\r\n'],[/The next dialer bundle number which not occupied is (\d*)/]); FW_REGEX_VIEW.GUIDE_CONNECT_UNUSED_DIALER_RULE = new Array( ['\r\n\r\n'],[/ The Dialer-rule number (\d*) is unused/]); FW_REGEX_VIEW.GUIDE_CONNECT_APN=new Array( ['\r\n\r\n'], [/^\s*Access point name\s*:\s*"(\S+)"/]); FW_REGEX_VIEW.GUIDE_CONNECT_PPPOE_PVCVE = /pvc\s*(\d+\/\d+)\s*(\r\n|\r\n\s*encapsulation vc-mux\s*\r\n)\s*map bridge Virtual-Ethernet(\d+)/; FW_REGEX_VIEW.GUIDE_CONNECT_PPPOE_PVC = /pvc\s*(\d+\/\d+)/; FW_REGEX_VIEW.QOS_INTERFACEPOLICY = new Array( [' Interface'], [/: (\S+)/], [/Direction: (\S+)/], [/Policy: (\S+)/], [/CIR (\d+) \(bps\), CBS (\d+) \(bit\)/]); FW_REGEX_VIEW.QOS_GETINTERFACEPOLICY = new Array( ['\r\n'], [/qos policy (\S+)/]); FW_REGEX_VIEW.QOS_GETINTERFACEINFO = new Array( ['\r\n'], [/^\s*qos lr cir (\d+) cbs (\d+) ebs (\d+)/]); FW_REGEX_VIEW.QOS_POLICY = new Array( ['\r\n Po'], [/^licy:\s*(\S+)/], [/^ Classifier: default-class/], [/^ Behavior: be/], [/^ -none-/], [/^ Classifier:\s*(\S+)/], [/^ Behavior:\s*(\S+)/]); FW_REGEX_VIEW.QOS_BEHAVIOR = new Array( ['\r\n Be'], [/^havior:\s*(\S+)/], [/^\s*CIR\s*(\d+)\ *\(bps\), CBS (\d*)/]); FW_REGEX_VIEW.QOS_CLASSIFIER = new Array( [' Classifier'], [/: (\S+)/], [/if-match (\S*) *(.*)/,'+']); FW_REGEX_VIEW.QOS_CLASSIFIER_IFMATCH = new Array( ['\r\n'], [/if-match (\S*) *(.*)/]); FW_REGEX_VIEW.QOS_POLICY_FORGRID = /lassifier:\s*(\S+)\s*\r\n Behavior:\s*(\S+)/; FW_REGEX_VIEW.QOS_CLASSIFIER_FORGRID = /if-match[ ](\S+)[ ]*([\S| ]*)/; FW_REGEX_VIEW.QOS_CLASSIFIER_NAME = /(\S+)/; FW_REGEX_VIEW.QOS_INTERFACE_NAME = new Array(['\r\n'],[/[ ]*(\S+)/]); FW_REGEX_VIEW.GUIDE_SNMP_AGENT_LOCALENGINEDATA = { snmpEnable : [/^ snmp-agent trap (enable)/], local_engine :[/snmp-agent local-engineid (\S+)/], source_interface :[/snmp-agent trap source (\S+)/], writeArr : [/^ snmp-agent community write[ ]+(.+)/,'+'], readArr : [/^ snmp-agent community read[ ]+(.+)/,'+'], ip_address :[/snmp-agent target-host trap address udp-domain (\d{1,3}.\d{1,3}.\d{1,3}.\d{1,3}) params securityname swebUser/] }; FW_REGEX_VIEW.GUIDE_SNMP_AGENT_SNMPNODEDATA = /The physical location of this node:[\r\n\r\n\s]+(.*)/; FW_REGEX_VIEW.USER_RSA_BLANK=/\s/; FW_REGEX_VIEW.USER_RSA_BLANK_GLOBAL=/\s/g; FW_REGEX_VIEW.USER_RSA_UNBLANK_GLOBAL=/\S{34,}/g; FW_REGEX_VIEW.WIFI_VLIDATE_PSW = /\[0-9,A-F,a-f]/; FW_REGEX_VIEW.WIFI_INTERFACE_IP = /Internet[ ]Address[ ]is[ ](\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}\/\d+)/; FW_REGEX_VIEW.WIFI_COUNTRY_ZONE_CODE = /wlan[ ]country-zone-code[ ](\S+)/; FW_REGEX_VIEW.WIFI_CHANNEL = /channel (\S+)/; FW_REGEX_VIEW.WIFI_CHANNEL=/channel[ ](auto|(\d+))/; FW_REGEX_VIEW.WIFI_CHANNEL2=/channel\(auto\):[ ](\d+)/; FW_REGEX_VIEW.WIFI_CHANNEL_NUM = /Legal channels: ([\S ]+)/; FW_REGEX_VIEW.WIFI_COUNTRY = /(\S+) (\D+)/; FW_REGEX_VIEW.WIFI_CHANNEL_PARSE = /(\d+)/; FW_REGEX_VIEW.WIFI_RADIO_TYPE = /radio-type (\S+)/; FW_REGEX_VIEW.WIFI_MAX_POWER = /max-power (\S+)/; FW_REGEX_VIEW.WIFI_VALID_COMMA = /\'/; FW_REGEX_TEMPLATE.WIFI_MAC_FILTER = /([a-zA-Z0-9]{4}-[a-zA-Z0-9]{4}-[a-zA-Z0-9]{4})/; FW_REGEX_VIEW.COMMON_NULL_CHAR = /\0/g; FW_REGEX_TEMPLATE.BSR_WLAN_FILTER=/3[ ]+WLAN[ ]+\S+[ ]+Normal/; FW_REGEX_TEMPLATE.BSR_3G_FILTER=/4[ ]+Cellular[ ]+\S+[ ]+Normal/; FW_REGEX_TEMPLATE.USER_REMOTE_HWTACACSLIST = new Array( [' ---------------------------------------------------------------------------\r\n ---------------------------------------------------------------------------'], [/HWTACACS-server template name[ ]+:[ ]+(\S{1,32})/], [/Primary-authentication-server\s*:\s*(\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}:\d{1,5})/], [/Primary-authorization-server\s*:\s*(\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}:\d{1,5})/], [/Primary-accounting-server\s*:\s*(\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}:\d{1,5})/]); FW_REGEX_TEMPLATE.USER_REMOTE_HWTACACSLISTONE = new Array( [], [/HWTACACS-server template name[ ]+:[ ]+(\S{1,32})/], [/Primary-authentication-server[ ]+:[ ]+(\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}:\d{1,5})/], [/Primary-authorization-server[ ]+:[ ]+(\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}:\d{1,5})/], [/Primary-accounting-server[ ]+:[ ]+(\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}:\d{1,5})/], [/Secondary-authentication-server[ ]+:[ ]+(\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}:\d{1,5})/], [/Secondary-authorization-server[ ]+:[ ]+(\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}:\d{1,5})/], [/Secondary-accounting-server[ ]+:[ ]+(\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}:\d{1,5})/], [/Source-IP-address[ ]+:[ ]+(\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3})/], [/Shared-key[ ]+:[ ]+([\S ]{1,32})/], [/Quiet-interval\(min\)[ ]+:[ ]+(\d{1,3})/], [/Response-timeout-Interval\(sec\)[ ]+:[ ]+(\d{1,3})/], [/Domain-included\s*:\s*(\S+)/], [/Traffic-unit[ ]+:[ ]+(B|KB|MB|GB)/] ); FW_REGEX_TEMPLATE.THIRDG_DISDIALINTERFACE = new Array(['\r\n'], [/\s*(Dialer\d{1,3})[ ]*/]); FW_REGEX_TEMPLATE.THIRDG_INTFACE_NUM = /^([^\s\d]{1,64})\s*/; FW_REGEX_TEMPLATE.THIRDG_CELLULAR = /\s*(Cellular[\d\/]*)/; FW_REGEX_TEMPLATE.THIRDG_BASIC_DISPLAYINTFACE = { description : [/^Description : (.*)[ ]/], zoneName : [/^\S{1,64} current firewall zone : (.+)/] } FW_REGEX_TEMPLATE.THIRDG_BASIC_DISTHISINTFACE = { interfaceName : [/^interface (\S{1,64})\s*/], shutdown : [/^ shut(down)/], mtu : [/^ mtu (\d{1,5})/], snmp : [/^ undo enable snmp trap (updown)/], findAddressPPP : [/^\s*ip address ppp-(\w{1,32})\s*/], virFindModelInterfaceName : [/^\s*ip address unnumbered interface (\S{1,64})/], timerHold : [/^\s*timer hold (\d{1,5})/], 'findAddressModeIpAddress,findAddressModeMaskAddress' : [/^\s*ip address (\d+\.\d+\.\d+\.\d+) (\d+\.\d+\.\d+\.\d+)/], bindingVfw : [/ip binding vpn-instance (\S+)/], dialerInterface : [/^\s*dialer circular-group (\d{1,4})/] } FW_REGEX_TEMPLATE.THIRDG_PPP_CONFIG = { pppAuthMode : [/^\s*ppp authentication-mode ((\w+ *)*\w)/], 'ipcpDnsFirst,ipcpDnsSecond' : [/^\s*ppp ipcp dns (\d+\.\d+\.\d+\.\d+)[ ]*(\d+\.\d+\.\d+\.\d+|)/], ipcpDnsAny : [/^\s*ppp ipcp dns (admit-any)/], iphcCheck : [/^\s*ppp compression (\w{1,12})/], vjcompressCheck : [/^\s*ip tcp (\w{1,64})/], usernameChap : [/^\s*ppp chap user ((".+"@".+")|(\S+@".+")|(".+"@\S+)|(\S+@\S+)|(".+")|(\S+))/], passwordChap : [/^\s*ppp chap password cipher (\S{1,64})/], 'usernamePap,passwordPap' : [/^ ppp pap local-user (".+"@".+"|\S+@".+"|".+"@\S+|\S+@\S+|".+"|\S+) password cipher (\S{1,64})/] } FW_REGEX_TEMPLATE.THIRDG_DIALER_INTERFACE = [/^\s*dialer circular-group (\d{1,4})/]; FW_REGEX_TEMPLATE.THIRDG_CARD_INFO = { Manufacturer : [/^\s*Manufacturer\s*:\s*([\S *]+\S+)/], ProductName : [/^\s*ProductName\s*:\s*(\S+)/], SoftVersion : [/^\s*SoftVersion\s*:\s*(\S+)/], IMEI : [/^\s*IMEI\s*:\s*(\d+)/], ESN : [/^\s*ESN\s*:\s*(\S+)/], Voltage : [/^\s*Voltage\s*:\s*([\S ]+\S+)/], HardWareVersion : [/^\s*HardWareVersion\s*:\s*([\S *]+\S+)/] } FW_REGEX_TEMPLATE.THIRDG_CARD_CONNINFO = { CurrConnTime : [/\s*Current Connect Time\s*:\s*([\S ]+\S+)/], TotalConnTime : [/^\s*Total Connect Time\s*:\s*([\S ]+\S+)/], InputRate : [/\s*Last [\w ]+ input rate\s*([\S ]+\S+)/], OutputRate : [/\s*Last [\w ]+ output rate\s*([\S ]+\S+)/], Input : [/^\s*Input\s*:\s*([\S ]+\S+)/], Output : [/^\s*Output\s*:\s*([\S ]+\S+)/], MainDns : [/Primary DNS Address is\s*(\d+\.\d+\.\d+\.\d+)/], BackupDns : [/Secondary DNS Address is\s*(\d+\.\d+\.\d+\.\d+)/], ProductName : [/^\s*ProductName\s*:\s*(\S+)/], SoftVersion : [/^\s*SoftVersion\s*:\s*(\S+)/], IMEI : [/^\s*IMEI\s*:\s*(\d+)/], ESN : [/^\s*ESN\s*:\s*(\S+)/], HardWareVersion : [/^\s*HardWareVersion\s*:\s*([\S *]+\S+)/] } FW_REGEX_TEMPLATE.THIRDG_CARD_SIMSTATUSINFO = { switchMode : [/Current switch mode is (\S*)/], switchTime : [/Have switched (\d*) times/], currentSim : [/Current(?: active|) SIM slot is (\d*)/], currentState : [/Current active SIM card is (\D*)/], currentPinState : [/Current active SIM card need (PIN code verify)/] } FW_REGEX_TEMPLATE.THIRDG_CARD_SIMVIEWSTATUSINFO = { 'pinPassType,pinPass' : [/pin (simple|cipher) (\S{1,24})/], apn : [/apn (\S{1,30})/], chapUser : [/ppp chap user\s*([\S ]*\S+)/], chapPass : [/ppp chap password cipher\s*([\S ]*\S+)/], 'papUser,papPass' : [/ppp pap local-user (\S*) password cipher\s*([\S ]*\S+)/] } FW_REGEX_TEMPLATE.THIRDG_CARD_SIMSWITCHINFO = { simBackup : [/sim (\d+) backup/], sim : [/sim (\d+)$/], sim1Time : [/sim 1 time-range (\S+)/], sim2Time : [/sim 2 time-range (\S+)/] } FW_REGEX_TEMPLATE.THIRDG_PIN_STATUS = [/^\s*PIN verification status\s*:\s*(\w+)/]; FW_REGEX_TEMPLATE.THIRDG_PIN_OPERATOR_GRID = new Array(['\r\n'], [/\s*(\S+ *\S*)\s*\((\d+)\),\s*(\w+)/]); FW_REGEX_TEMPLATE.THIRDG_OPERATOR_INFO = [/\s*Access point name\s*:\s*"(\S+)"/, /\s*Current register operator\s*:\s*(\w+-*\w*)\((\d+)\)\s*(\w+)/, /\s*Connect mode\s*:\s*([\w\/ ]+\w+)/, /\s*Current register operator[s]*\s*:\s*([\S ]+\S+)/, /\s*Quality of signal\s*:\s*([\S ]+\S+)/, /\s*Current network\s*:\s*([\S ]+\S+)/] FW_REGEX_TEMPLATE.THIRDG_3G_INFO=/^[A-Za-z0-9](\S*[A-Za-z0-9]|)$/; FW_REGEX_TEMPLATE.THIRDG_CARD_SYSINFO = { ServiceStatus : [/^\s*Service status\s*:\s*([\S ]+\S+)/], SimStatus : [/\s*SIM\/USIM[\/UIM]* status\s*:\s*([\S ]*\S+)/] } FW_REGEX_TEMPLATE.THIRDG_CARD_IMSI = { Imsi : [/^\s*imsi\s*:\s*([\S ]+\S+)/i] } FW_REGEX_TEMPLATE.CELLULAR_PANEL_DATA = { dialer : [/dialer circular-group\s*(\d+)/], mtu : [/mtu \s*(\d+)/], shutdown : [/^ shut(down)/], apn : [/apn (\S{1,30})/] } FW_REGEX_TEMPLATE.CONN_PANEL_DATA = { "dialerNumber,dialerType" : [/dialer number (\".+\"|\S+)\s*(autodial|)/], dialerPoolNumber : [/dialer bundle (\S+)/], chapUser : [/ppp chap user\s*([\S ]*\S+)/], chapPass : [/ppp chap password cipher \s*([\S ]*\S+)/], 'papUser,papPass' : [/ppp pap local-user (\S*) password cipher\s*([\S ]*\S+)/], autodialTimer : [/dialer timer autodial (\d+)/], dialerRuleGroup : [/dialer-group (\S+)/], idleTimer : [/dialer timer idle (\d+)/], ipNegotiate : [/ip address ppp\-(\w+)/], "ipAddress,ipMask" : [/ip address (\d+\.\d+\.\d+\.\d+) (\d+\.\d+\.\d+\.\d+)/], dnsAdmitAny : [/ppp ipcp dns (admit-any)/], "dnsAdress1,dnsAdress2" : [/ppp ipcp dns\s*(\d+\.\d+\.\d+\.\d+)\s*(\d+\.\d+\.\d+\.\d+)?/], connectMode : [/Connect mode\s*:\s*([\w\/ ]+\w+)/] } FW_REGEX_TEMPLATE.CONN_PPPOE_BUNDLE = { "pppoedialerBundle,pppoeidletime" : [/pppoe-client dial-bundle-number (\d+) (?:idle-timeout (\d+)|)/] } FW_REGEX_TEMPLATE.DHCP_NEW_POOL = { type : [/^\s+dhcp select (\S+)/], ipRelay : [/ip relay address (\d+\.\d+\.\d+\.\d+)/], "ipAddress,ipMask" : [/ip address (\d+\.\d+\.\d+\.\d+) (\d+\.\d+\.\d+\.\d+)/], "startIP,endIP" : [/dhcp server ip-range (\d+\.\d+\.\d+\.\d+) (\d+\.\d+\.\d+\.\d+)/] } FW_REGEX_TEMPLATE.CELLULAR_DIALER_IP=/Internet Address is.*\D(\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3})\/\d+./; FW_REGEX_TEMPLATE.CELLULAR_DIALER_DNS=/ppp ipcp dns (\d+\.\d+\.\d+\.\d+)\s*(\d+\.\d+\.\d+\.\d+)?/; FW_REGEX_TEMPLATE.POLICY_ROUTE = /route :[ ]*([\S ]{1,19})/; FW_REGEX_TEMPLATE.POLICY_ROUTE_NAME = /(\d+)[ ]{1,5}(deny|permit)[ ]{1,5}:/; FW_REGEX_TEMPLATE.POLICY_ROUTE_ACL = /if-match[ ]acl[ ](\d{4})/; FW_REGEX_TEMPLATE.POLICY_ROUTE_OUTPUT = /apply[ ]output-interface[ ](\S+(?:[ ]{1}\S*){0,1})/; FW_REGEX_TEMPLATE.POLICY_ROUTE_NEXTHOP = /apply[ ]ip-address[ ]next-hop[ ](\d{1,3}.\d{1,3}.\d{1,3}.\d{1,3}(?:[ ]{1}\d{1,3}.\d{1,3}.\d{1,3}.\d{1,3}){0,1})/; FW_REGEX_TEMPLATE.POLICY_ROUTE_INTERFACEAPPLY = /((?:Dialer|Eth-Trunk|Ethernet|Serial|Tunnel|Virtual-Ethernet|Vlanif|GigabitEthernet)\S+)/ig; FW_REGEX_TEMPLATE.POLICY_ROUTE_DESTADDR = /if-match[ ](app-set|category)[ ]([^\r\n]*)/; FW_REGEX_TEMPLATE.POLICY_ROUTE_SOURCEUSER = /(?:\bif-match (?:user-group |user ))(.*)/; FW_REGEX_TEMPLATE.POLICY_ROUTE_SOURCEUSER_GROUP = /user\s([\S\s]+)\s?$/; FW_REGEX_TEMPLATE.CFG_SAVE_FILE_NAME = /Next startup saved-configuration file\s*:\s*(?:flash:|hda1:)\/(\S+(?:.zip|.cfg)+)/; FW_REGEX_TEMPLATE.VPN_L2TP_REMOTE_TUNNEL = /allow[ ]*l2tp[ ]*virtual-template[ ]*(\d+)(?:[ ]*remote[ ]*|)(\S+|)/; FW_REGEX_TEMPLATE.VPN_L2TP_UNUSED_GROUP = /l2tp-group[ ](\d{1,4})[ ]unused/; FW_REGEX_TEMPLATE.VPN_L2TP_UNUSED_VT = /The[ ]next[ ]interface[ ]which[ ]not[ ]configured[ ]is[ ](\d+)/; var FRAGMENTCACHE_REGEX = function() {} FRAGMENTCACHE_REGEX.FRAGMENT_DISCARD = /firewall\s*fragment-discard\s*(enable)/; FRAGMENTCACHE_REGEX.AGINGTIME = /firewall\s*fragment-cache\s*aging-time\s*(\d+)/; FRAGMENTCACHE_REGEX.FRAGMENT_FORWARD = /firewall\s*fragment-forward\s*(enable)/; FRAGMENTCACHE_REGEX.FRAGMENT_REASSEMBLE = /fragment-reassemble\s*overflow-policy\s*(discard)/; FRAGMENTCACHE_REGEX.STREAM_REASSEMBLE = /stream-reassemble\s*overflow-policy\s*(discard)/; FW_REGEX_TEMPLATE.COMMON_INTERFACE_NAMEANDIP = new Array(['\r\n'], [/(\S+)\s*(\S+)\s*\S+\s*\S+\s*.*/]); FW_REGEX_TEMPLATE.FIREWALL_ADDRESSMAPPING_LIST_WITHINTERFACE = new Array( ['\r\n'], [/(?:ip address|vrrp vrid \d+ virtual-ip) (\d+\.\d+\.\d+\.\d+ \d+\.\d+\.\d+\.\d+)( sub| master| slave|)/]); FW_REGEX_TEMPLATE.LOGTRAP_LOGTYPE = /Session log output mode is (\S+)\./i; FW_REGEX_TEMPLATE.LOGTRAP_SEND_TYPE = /send-type (concurrent)/; FW_REGEX_TEMPLATE.LOGTRAP_SOURCE = /source\s+(\S+)\s+(\d+)/; FW_REGEX_TEMPLATE.LOGTRAP_BIN_HOST = /host\s+(\d+)\s+(\S+)\s+(\d+)(?: vpn-instance (\S{1,32})|)/; FW_REGEX_VIEW.DPI_ENABLE = /DPI enabled\s+: (yes|no)\s*/; FW_REGEX_VIEW.DPI_UPDATEPERIOD = /DPI Update Period\s+: (\d+)\s*/; FW_REGEX_VIEW.DPI_ISUPDATESAVE = /Save Rule-base After Updated\s+: (yes|no)\s*/; FW_REGEX_VIEW.DPI_DOMAINNAME = { 'domainName' : [/Server 1 : (\S+)/] } FW_REGEX_VIEW.DPI_UPDATEINFORMATIONB = { currentVersion : [/Rule-Base's Current Version : (\S+)\s*/], loadTime : [/Rule-Base's load time\s+:\s*(\S*\s*\S*)\s*/], publishTime : [/Rule-Base's publish time\s+:\s*(\S*\s*\S*)\s*/] }; FW_REGEX_VIEW.DPI_UPDATEINFORMATIONV = { engineVersion : [/DPI Engine Version\s+:\s*(\S*\s\S*)\s*/] }; FW_REGEX_TEMPLATE.DPI_UPDATE_MSG = /(\S+)\s*[::]\s*(.+)\r\n/; FW_REGEX_TEMPLATE.DPI_UPDATE_RAW_MSG = /^\s+$/; FW_REGEX_TEMPLATE.USER_PASSWORD_REG = /^(?![a-zA-Z]+$)(?![`~!@#$%^&*()_\-+=,.:|\\\[\{\]\};\"/'<>]+$)(?![0-9]+$)[a-zA-Z0-9`~!@#$%^&*()_\-+=,.:|\\\[\{\]\};\"/'<>]{8,16}$/; FW_REGEX_TEMPLATE.ULRFILTER_CATEGORY_LIST = new Array(['\r\n'], [/^\d+[ ]+(\S+)/]); FW_REGEX_TEMPLATE.WEBPOLICY_CONFLICT = /web-filter/; FW_REGEX_TEMPLATE.EMAILPOLICY_CONFLICT = /mail-filter/; FW_REGEX_TEMPLATE.URLPOLICY_CONFLICT = /url-filter/; FW_REGEX_TEMPLATE.RBL_LICENSE = /((RBL +Filter)|(Anti +Spam)) *: *((Enabled)|(ENABLED))/; FW_REGEX_TEMPLATE.URL_LICENSE = /URL +Filter *: *((Enabled)|(ENABLED))/; FW_REGEX_TEMPLATE.EMAILPOLICY_ENABLE = /mail-filter global switch : Enable/; FW_REGEX_TEMPLATE.EMAILPOLICY_DISABLE = /mail-filter global switch : Disable/; FW_REGEX_TEMPLATE.URLFILTERING_POLICYLIST = /\s+(\d{1,})[ ]+(\d{1,}).*/; FW_REGEX_TEMPLATE.SYSTEM_INFO_INTEEFACECOMBPARSETPL = new Array( ['\r\n'], [/^\s+(?!brief|\|)(\S+)[ ]+\S+/] ) FW_REGEX_TEMPLATE.FTPPOLICY_ENABLE=/FTP-filter global switch : Enable/; FW_REGEX_TEMPLATE.FTPPOLICY_DISABLE=/FTP-filter global switch : Disable/; FW_REGEX_TEMPLATE.GETVPN = /vpn-instance[ ]+(\S+)/; UTM_REGEX_VIEW.IPS_POLICY_TEMPLATE_POLICY_LIST = new Array( ['\r\nIPS policy'], [/^\s+:\s+(.+)/], [/\s*Description\s*:\s*(.*)/],[/\s*Referenced\s*:\s*(\d*)/],[/\s*State\s*:\s*(.*)/]); FW_REGEX_TEMPLATE.IPS_DISPLAY_MODULEGRIDLIST = new Array(['\r\nPolicy template'],[/^\s*:\s*(.+)/],[/^ Description\s*:\s*(.*)/]); FW_REGEX_TEMPLATE.IPS_DISPLAY_MODULELIST = new Array(['\r\nPolicy '],[/^(template)\s*:\s*(.+)/],[/^ Description\s*:\s*(.*)/]); FW_REGEX_TEMPLATE.IPS_DISPLAY_POLICYLIST = new Array(['\r\nIPS '],[/^(policy)\s*:\s*(.+)/],[/^ Description\s*:\s*(.*)/]); FW_REGEX_TEMPLATE.LOGTRAP_BIN_VERSION = /version\s+(\d+)/;