var FW_REGEX_TEMPLATE = function() { } 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.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.CMD_SPLIT = /\r\n\w*[\[|\<](?:\S| )*[\]|\>]/; 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 = [ /\s% Wrong parameter 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.SYSTEM_NETWORK_INTERFACE_SERIAL = new Array( ['\r\n\r\n'], [/^(.{1,64}) current state : [Administratively| ]*(UP|DOWN)[\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 (?:unnumbered, using address of ([a-zA-Z0-9\-\/]+)\((\S+)\)|(\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})/], [/^Tunnel protocol\/transport (GRE)\/IP\s*, 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)/], mtu : [/^ mtu (\d{1,4})/], snmp : [/^ undo enable snmp trap (\w{1,6})/], interfaceBorrow : [/^\s*ip address unnumbered interface (.+)\s*$/], 'ipAddress,maskAddress' : [/^ ip address (\d+\.\d+\.\d+\.\d+) (\d+\.\d+\.\d+\.\d+)/], sourceInterface : [/source ([A-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)/], ipsecPolicy : [/ipsec policy (.*)/], grekey : [/gre key (\d*)/], grecheck : [/gre (check)sum/] }; 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'], [/^ (Aux|Eth-Trunk|GigabitEthernet|Ip-Trunk|Pos|Tunnel|LoopBack|Virtual-Template) /]); FW_REGEX_TEMPLATE.TUNNEL_MONITOR = { 'InPkts' : [/InPkts:(\d{1,12})/], 'InBytes' : [/InBytes:(\d{1,12})/], 'InPktSum' : [/InPktSum:(\d{1,12})/], 'InSlicePkts' : [/InSlicePkts:(\d{1,12})/], 'VersionError' : [/Version Error :(\d{1,12})/], 'CheckSumError' : [/CheckSum Error :(\d{1,12})/], 'KeyError' : [/Key Error :(\d{1,12})/], 'OutPkts' : [/OutPkts:(\d{1,12})/], 'OutBytes' : [/OutBytes:(\d{1,12})/], 'OutErrs' : [/OutErrs:(\d{1,12})/], 'MaxCurErrs' : [/Max Cur Errs:(\d{1,12})/], 'TransToIPSEC' : [/Trans to IPSEC:(\d{1,12})/], 'TransmitByGRE' : [/Transmit by GRE:(\d{1,12})/], 'TransCommonPkts' : [/Trans Common Pkts:(\d{1,12})/] }; FW_REGEX_TEMPLATE.TUNNEL_INTERFACETYPE_REGEXP = /[A-Za-z\-]{1,48}/; FW_REGEX_TEMPLATE.TUNNEL_MONITOR_REGEXP = /INTEGER\s*<(\S*)>/; 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[\S ]+: (\d{1,3})%/; FW_REGEX_TEMPLATE.SYSTEM_STATE_DEVRESINFO_FLASHPARSETPL = /(\d{1,5}) KB total \((\d{1,5}) KB free\)/; FW_REGEX_TEMPLATE.SYSTEM_STATE_DEVRESINFO_MEMORYPARSETPL = new Array([], [/System Total Memory Is: (\d{1,}) bytes/], [/Total Memory Used Is: (\d{1,}) bytes/], [/Memory Using Percentage Is: (\d{1,3})%/]); FW_REGEX_TEMPLATE.SYSTEM_STATE_SYSINFO_VERSIONPARSETPL = /Software Version: (.*) \(.*\)/; FW_REGEX_TEMPLATE.SYSTEM_STATE_SYSINFO_CLOCKPARSETPL = new Array([], [/^(\S{8}) \S{1,} \S{1,} (\d{1,4}\/\d{1,2}\/\d{1,2})/], [/Time Zone : (\S{1,}) add/]); FW_REGEX_TEMPLATE.SYSTEM_STATE_SYSINFO_DEVPARSETPL = new Array([], [/PWR\(AC\)[ ]*Present[ ]*(\S{1,})[ ]*/], [/PWR\(AC\)[ ]*Present[ ]*(\S{1,})[ ]*/], [/FAN[ ]*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)[ ]+(\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_RELIABILITY_IPLINK_LIST_PARSE_REGEX =/^(\d+)[ ]+(\S+)[ ]+(\d+)[ ]+(\S+)[ ]+(\S*)[ ]+(\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3})[ ]+(\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_NETWORK_INTERFACE_GETALLTEMPLATE = new Array( ['\r\n'], [/(Eth-Trunk|Virtual-Ethernet|Ethernet|Vlanif|GigabitEthernet)(\S+)/]); 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 |)5 minutes input rate (\d*[ ]*bytes\/sec), (\d*[ ]*packets\/sec).*/], [/^ (Last |)5 minutes output rate (\d*[ ]*bytes\/sec), (\d*[ ]*packets\/sec).*/]); 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 = /([\d\-: ]{19})[ ]*([\d\D]+ \%+[\d]*?[\D]*?\/)(\d)(\/)(\w*)(\(\w*?\):)/; FW_REGEX_TEMPLATE.SYSTEM_STATE_LOGTRAPINFO_LOGLISTPARSETPL = /^([\d\-: ]{19})[ ]*([\d\D]+ \%+[\d]*?[\D]*?\/)(\d)(\/)(\w*)(\(\w*?\):)[ ]*(.*)$/; FW_REGEX_TEMPLATE.SYSTEM_STATE_LOGTRAPINFO_TRAPTABLEPARSETPL = /(DST [\d\-: ]{19}|[\d\-: ]{19})[ ]*(\S+[ ]+[\%\w]+\/)(\d+)(\/\w+\(\w+\)\:)(.*)/; FW_REGEX_TEMPLATE.SYSTEM_STATE_LOGTRAPINFO_TRAPLISTPARSETPL = /(DST [\d\-: ]{19}|[\d\-: ]{19})[ ]*(.+)[ ]+([\%\w]+)(\/)(\d+)(\/)(\w+)(\(\w+\)\:)(.*)/; 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.SYSTEM_NETWORK_GETVFWS = new Array(['\r\n\r\n'], [/VPN-Instance : (\S+)/], [/ vpn-id : (\d+)/], [/ vlan-id : (\d+)/]); 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_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+)\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'], [/(GigabitEthernet[\S]*|Eth-Trunk[\S]*|Ethernet[\S]*)/]); FW_REGEX_TEMPLATE.SYSTEM_NETWORK_INTERFACE_INTERFACELISTSUCC = 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 \: ([\S ]{1,64})[ ]*$/], [/^The Maximum Transmit Unit is ([\d]{1,4}) bytes\, Hold timer is 10\(sec\)[ ]*$/], [/^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 : [Administratively| ]*(UP|DOWN)[\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,4}) 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})/], [/^port\s+default\s+vlan\s+(\d*)/], [/^port\s*trunk\s*allow-pass\s*vlan\s*(.*)/], [/^([\d]{1,4})Mb\Ss\-speed mode\, ([\w]{1,12})\-duplex mode\,/], [ /^ (\S{1,32})[ ]*$/, '+']); FW_REGEX_TEMPLATE.SYSTEM_NETWORK_INTERFACE_GETNOTBINDTRUNK_INTERFACE = /^\ (\S{1,64})/; FW_REGEX_TEMPLATE.SYSTEM_NETWORK_INTERFACE_GETYESBINDTRUNK_INTERFACE = /^\Interface (\S{1,64})/; FW_REGEX_TEMPLATE.SYSTEM_NETWORK_INTERFACE_ETH_MEMBER = /^Interface (\S+).+operate (\w+),[^,]+(?:,\s*state (\w+))?$/; FW_REGEX_TEMPLATE.SYSTEM_NETWORK_INTERFACE_ETH_WORK_MODE = /Working mode\s+:\s+(\S+)/i; FW_REGEX_TEMPLATE.SYSTEM_NETWORK_INTERFACE_ETH_SWITCH_MODE = /switchover mode\s+:\s+(\S+)/i; FW_REGEX_TEMPLATE.SYSTEM_NETWORK_INTERFACE_ETH_PREEMPT = /Port-master preempt\s+:\s+(\S+)/i; FW_REGEX_TEMPLATE.SYSTEM_NETWORK_INTERFACE_ETH_SLAVE = /^Interface ([^,]+),.*state slave$/; FW_REGEX_TEMPLATE.SYSTEM_NETWORK_INTERFACE_ETH_MASTER = /^Interface ([^,]+),.*state master$/; FW_REGEX_TEMPLATE.SYSTEM_NETWORK_INTERFACE_GETYESBINDTRUNK_INTERFACE_REPLACE = /Eth-Trunk/g; FW_REGEX_TEMPLATE.SYSTEM_NETWORK_INTERFACE_GETETHTRUNKMEMBERTPL = { trunkID : [/^Trunk\s+ID\s+:\s+(\w+)/i], trunkMemberUseState : [/^Used\s+status\s+:\s+(\w+)/i], trunkMemberType : [/^Type\s+:\s+(\w+)/i], trunkMemberInterfaceNumber : [/^Number of ports in trunk\s+:\s+(\d+)/i], trunkMemberOperateState : [/^Operate status\s+:\s+(\w+)/i], trunkMemberWorkMode : [FW_REGEX_TEMPLATE.SYSTEM_NETWORK_INTERFACE_ETH_WORK_MODE], trunkMemberSwitchMode : [FW_REGEX_TEMPLATE.SYSTEM_NETWORK_INTERFACE_ETH_SWITCH_MODE], preempt : [FW_REGEX_TEMPLATE.SYSTEM_NETWORK_INTERFACE_ETH_PREEMPT], interfaceName : [/^(Interface .+)$/i, '+'] }; FW_REGEX_TEMPLATE.SYSTEM_NETWORK_INTERFACE_interfaceNameNumberTPL = /^Interface (\S+)\s+(\S+),\s*(\w+),\s*operate (\w+),\s*weight=([^,]+)(?:,\s*state (\S+))?/i; 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,4}) bytes/], zoneName : [/^\S{1,64} current firewall zone : (.+)/] }; 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})/], pppAuthMode : [/^\s*ppp authentication-mode (\w{1,12})\s*/], 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})/], 'findAddressModeIpAddress,findAddressModeMaskAddress' : [/^\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+)/], iphcCheck : [/^\s*ppp compression (\w{1,12})/], vjcompressCheck : [/^\s*ip tcp (\w{1,64})/], usernameChap : [/^ ppp chap user (\S*)/], passwordChap : [/^ ppp chap password simple (\S{1,64})/], 'usernamePap,passwordPap' : [/^ ppp pap local-user (\S{1,64}) password simple (\S{1,64})/], bindingVfw : [/ip binding vpn-instance (\S+)/] }; FW_REGEX_TEMPLATE.SYSTEM_NETWORK_INTERFACE_EDITINTERFACE_TUNNEL = { description : [/^Description :\s+(.*)\s+$/], mtuTunnel : [/^The Maximum Transmit Unit is (\d{1,4}) 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})/], findModelInterfaceName : [/^\s*ip address unnumbered interface (.+)\s*$/], 'ipAddress,maskAddress' : [/^ ip address (\d+\.\d+\.\d+\.\d+) (\d+\.\d+\.\d+\.\d+)/], bindingVfw : [/ip binding vpn-instance (\S+)/], sourceInterface : [/source ([A-Z]\S*)/], sourceIpaddress : [/source (\d+\.\d+\.\d+\.\d+)/], 'destVpn,destIpaddress' : [/destination(?: vpn-instance (\S*)|) (\d+\.\d+\.\d+\.\d+)/], protocol : [/tunnel-protocol (ipsec|ipv|none|gre)/], ipsecPolicy : [/ipsec policy (.*)/], grekey : [/gre key (\d*)/], grecheck : [/gre (check)sum/] }; FW_REGEX_TEMPLATE.SYSTEM_NETWORK_INTERFACE_EDITINTERFACE_ETHTRUNK = { description : [/^Description : (.*)[ ]/], trunkMtu : [/^The Maximum Transmit Unit is (\d{1,4}) 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 (.*)/], 'master,slave' : [/^\s*port-master (\S+) port-slave (\S+)/] }; FW_REGEX_TEMPLATE.SYSTEM_NETWORK_INTERFACE_ETHTRUNK_MASTERSLAVE = { 'master,slave' : [/^\s*port-master (\S+) port-slave (\S+)/] }; 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+)/] }; FW_REGEX_TEMPLATE.SYSTEM_NETWORK_INTERFACE_EDITINTERFACE_GIGABITETHERNET = { description : [/^Description : (.*)[ ]/], mtuGe : [/^The Maximum Transmit Unit is (\d{1,4}) 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 (.*)/] }; 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+)/] }; FW_REGEX_TEMPLATE.SYSTEM_NETWORK_INTERFACE_EDITINTERFACE_ETHERNET = { description : [/^Description : (.*)[ ]/], mtuEther : [/^The Maximum Transmit Unit is (\d{1,4}) 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 (.*)/] }; 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+)/] }; 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 : (.*)[ ]/] }; 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+)/] }; FW_REGEX_TEMPLATE.SYSTEM_NETWORK_INTERFACE_QUERYTYPE_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*ip address (\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-7] current state'; FW_REGEX_TEMPLATE.SYSTEM_RELIABILITY_IPLINK_CHECK = { enabled : [/^ ip-link check (enable)$/] }; 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.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_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/], 'ospfCost' : [/^\s*hrp ospf-cost adjust-enable (\d{1,5})\s*$/] }; 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(['\r\n\r\n'], [/^\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_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_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_DISPLAY_STATE = /^\s*(\S*)\s*\:\s*(\S*)/; FW_REGEX_TEMPLATE.SYSTEM_NETWORK_HRP_STATE_MATCH = /\S{1,64}/g; 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_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})[)]:$/]); 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_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_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_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_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_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*)[ ]*(add|minus)[ ]*(\d*:\d*:\d*).*/]); FW_REGEX_TEMPLATE.SYSTEM_CONFIGURE_PRIVILEGELEVEL = new Array(['\r\n'], [/The\s*privilege\s*level\s*of\s*web\s*user\s*is\s*(\d)/]); FW_REGEX_TEMPLATE.SYSTEM_CONFIGURE_FTPSERVERGETPARSETPL = new Array( ["\r\n\r\n"], [/^[ %]*FTP server (has been|is) (\w*)/], [/^[ ]*Timeout value\(in minute\)[ ]*(\d*)/]); FW_REGEX_TEMPLATE.SYSTEM_CONFIGURE_EQUIPGETPARSETPL = new Array(["\r\n\r\n"], [/^ Httpd(?: security | )server is (\w*).*/], [/^ HTTP port is (\d*).*/]); FW_REGEX_TEMPLATE.SYSTEM_CONFIGURE_LinkStatePARSETPL = new Array(['\r\n'], [/(undo)\s*firewall session link-state check\s*(icmp|tcp)?/]); FW_REGEX_TEMPLATE.SYSTEM_CONFIGURE_EQUIPGETTIMEOUTPARSETPL = /\S+ timeout (\d+)/ FW_REGEX_TEMPLATE.FIREWALL_NATIPPOOL_THRESHOLD = { threshold : [/nat\s*address-group\s*usage\s*alarm\s*threshold\s*(\d+)/] }; FW_REGEX_TEMPLATE.ATTACK_DEFEND_ACTION = { defendAction : [/firewall\s*defend\s*action\s*(alert)/] }; 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_GETLICENSEPARSETPL = new Array([], [/^Device ESN is: (\w*)/], [/^(\S*)\s*Activated time:\s*(.*)/, "+"], [/^(VPN-\S*\s*: \d*)/], [/^(VFW\s*: \d*)/], [/^(GTP\s*: \w*)/], [/^(IPS\s*: .+)/], [/^(URL Filter\s*: .+)/], [/^(Anti Virus\s*: .+)/],[/^(P2P\s*: \w*)/]); FW_REGEX_TEMPLATE.SYSTEM_MAINTENANCE_LICENSEDIRPARSETPL_bak = new Array( ['\r\n'], [/^[ ]*\d*[ ]*\-rw\-[ ]*(\d*)[ ]*(\w* \d* \d* \d*:\d*:\d*)[ ]*([\w\-]*\.dat)/]); 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: (.*)(\(V[SR]P \(R\)[ ]*)Software\,([ ]*Version .*)/]); FW_REGEX_TEMPLATE.SYSTEM_MAINTENANCE_GETDETAILVERSIONPARSETPL = new Array([''], [/(.*)/]); FW_REGEX_TEMPLATE.SYSTEM_MAINTENANCE_GETSTARTUPPARSETPL = new Array([], [/^[ ]*Startup system software:[ ]*([\-\w\:\/\.\S]*)/], [/^[ ]*Next startup system software:[ ]*([\-\w\:\/\.\S]*)/], [/^[ ]*Startup saved-configuration file:[ ]*([\-\w\:\/\.\S]*)/], [/^[ ]*Next startup saved-configuration file:[ ]*([\-\w\:\/\.\S]*)/]); FW_REGEX_TEMPLATE.SYSTEM_MAINTENANCE_GETPATCHINFORMATIONPARSETPL = new Array( [], [/Current patch file name\s*: (\S*)/], [/Patch Unit \d*\s*:\s*(\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_PATCHDIRPARSETPL = new Array( ['\r\n'], [/^[ ]*\d*[ ]*\-rw\-[ ]*(\d*)[ ]*(\w* \d* \d* \d*:\d*:\d*)[ ]*(.*\.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_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.STARTUPCMDTPL_SUCCESSFLAG = ['Info', '提示', false]; FW_REGEX_TEMPLATE.CFG_SAVE_FILE_NAME = /Startup saved-configuration file\s*:\s*flash:\/(\S+(?:.zip|.cfg)+)/; 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', '完成', 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.NOTEMESSAGE = ['You will change the startup saved-configuration', '将改变系统配置文件', false]; 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_INTERFACELISTPARSETPL = new Array( ['\r\n\r\n'], [/^(?!Vlanif|Logic|Tunne)([\w\/\.\-]*)[ ]*current state :.*/], [/^The Maximum Transmit Unit is \d* bytes, Hold timer is (\d*\(sec\))/], [/^ (Last |)5 minutes input rate (\d*[ ]*bytes\/sec), (\d*[ ]*packets\/sec).*/], [/^ (Last |)5 minutes output rate (\d*[ ]*bytes\/sec), (\d*[ ]*packets\/sec).*/]); 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*(\S+)\s*->\s*(\S+)/] ); FW_REGEX_TEMPLATE.SYSTEM_INFO_SESSIONLISTPARSETPL = new Array( ['\r\n\r\n'], [/^[ ]*(\S+.*)[ ]*VPN: ([a-zA-Z]+\S*) (\->|<\-) ([a-zA-Z]+\S*)(.*)/], [/^[ ]*[Zz]one: ([a-zA-Z]+\S*) (\->|<\-) ([a-zA-Z]+\S*)[ ]*TTL: (\d*:\d*:\d*)[ ]*[Ll]eft: (\d*:\d*:\d*).*/], [/^[ ]*Interface: (\S*)[ ]*Nexthop: (\d*.\d*.\d*.\d*)[ ]*M[Aa][Cc]: ([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_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_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 = /(Tcp|Udp|Ftp|Http|H323|Rtsp|Smtp)(Session|Sess)$/; FW_REGEX_TEMPLATE.SYSTEM_INFO_STINFO = /^(Pass|Rcv)(\w*)pkts$/; FW_REGEX_TEMPLATE.SYSTEM_INFO_DISPKT = /(NonICMPACL|ICMPACL|BlkDiscard|IcmpFlood|UdpFlood|FragEx|AlgDiscard|SessFail)(Pkt|DisPkt|DiscardPkt|DiscardPkts|DisPkts)$/; FW_REGEX_TEMPLATE.SYSTEM_SESSTABLE_PROTOCOL = new Array(['\r\n'], [/^\s*([\w|-]+)\s*.*/]); 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 = /^[ ]*(The)/; FW_REGEX_TEMPLATE.VFW_DELETE_JUDGMENT = / \(being deleted\)/; FW_REGEX_TEMPLATE.VFW_DEL_SUCCESSFLAG = [ 'IP addresses from all interfaces in VPN-Instance|does not exist', '中所有接口的IP地址已经被删除|实例不存在']; FW_REGEX_TEMPLATE.ROUTER_STATIC_GRID_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})[ ]*((vpn-instance[ ](\w{1,19}))|([a-zA-Z]{1,30}\S{1,20})|)[ ]*((\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3})(?: public|)|)[ ]*(preference|)[ ]*(\d*)[ ]*(reject|blackhole|)[ ]*(?:ip-link|)[ ]*(\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_STATICROUTINGTABLECONTROL = new Array( ['\n'], [/[ ]*\**NextHop:[ ]+(\d{0,3}\.\d{0,3}\.\d{0,3}\.\d{0,3})[ ]+Interface:[ ]+(\d{0,3}\.\d{0,3}\.\d{0,3}\.\d{0,3})\((\S+)\)/], [/[ ]*State:[ ]+/]); FW_REGEX_TEMPLATE.ROUTER_STATIC_DOWN_COMMAND = new Array([], [/^ Mac-binding is (Enabled|Disabled)[ ]*$/]); FW_REGEX_TEMPLATE.ROUTER_POLICY_NAME_RANGE = /^[`~!@#$%^&*()_+-={}|\[\]\:";'<>,.\\/"A-Za-z0-9 ]+$/; 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_DYNAMIC_OSPF_AREA_LIST = new Array( ['\r\n\r\n'], [/Area (\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3})/], [/ Authtype: (\w*) Flags: <(\w*)[ |\w]*>[ ]*[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})[ ]*(\w*[ ]*\-?\w*)/]); 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_LIST_BRIEF = new Array( ['\r\n'], [/(^[a-zA-Z]\S{0,63})/]); 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)/], [/[ ]+ospf[ ]+authentication-mode[ ]+(\w+)[ ]+(\d{1,3})[ ]+(\S{0,24})/], [/[ ]*ospf[ ]+authentication-mode[ ]+simple[ ]+(\w+)/]); FW_REGEX_TEMPLATE.ROUTER_DYNAMIC_OSPF_GET_NETWORK_LIST = new Array(['\r\n '], [/\s*Area (\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}):/]); FW_REGEX_TEMPLATE.ROUTER_DYNAMIC_OSPF_NETWORK_LIST = new Array( ['\r\n #'], [/\s*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})/, '+'], [/[ ]*authentication-mode[ ]+(simple|md5)/], [/[ ]+(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+)/], [/^[ ]*VPN-Instance's name:[ ]*(\w{1,19})/], [/^ Spf-schedule-interval: (\d+)/], [/^[ ]Routing preference: Inter\/Intra: (\d+) External: (\d+)/], [/Nssa Area Count: (\d+)$/]); 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[ ]+(\d+)[ ]+(import|export)[ ]*(\w*)/]); FW_REGEX_TEMPLATE.ROUTER_DYNAMIC_OSPF_ROUTE_FILTER_ACL_MESSAGE_DISPLAY = 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_OSPF_ROUTE_FILTER_ACL_LIST_MESSAGE_DISPLAY = 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_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'], [/[ ]+import-route[ ]+(\w+-*\w+)[ ]*(\d*)[ cost ]*(\d*)[ type ]*(\d*)[ tag ]*(\d*)/]); 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}),[ ]State:[ ]+(\S*)/], [/^\s*Transit[ ]+Area:[ ]+(\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3})/], [/^\s+Timers:[ ]+Hello[ ]+(\d+),[ ]+Dead[ ]+(\d+),[ ]Poll[ ]+\d+,[ ]Retransmit[ ]+(\d+),[ ]+Transmit[ ]+Delay[ ]+(\d+)/]); 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[ ]+metricin[ ]+(\d+)[ ]*/], [/[ ]*rip[ ]+metricout[ ]+(\d+)[ ]*/], [/[ ]*(undo[ ]+rip[ ]+output|rip[ ]+input)[ ]*/], [/[ ]*(undo[ ]+rip[ ]+output|rip[ ]+output)[ ]*/], [/[ ]*rip[ ]+authentication-mode[ ]+(\w+)[ ]+(\w*)[ ]*(\S{0,24})[ ]*(\d{0,3})[ ]*/], [/[ ]*rip[ ]+version[ ]+(\d{0,3})[ ]+(multicast|broadcast|)[ ]*/], [/[ ]*(undo[ ]+rip[ ]+split-horizon)[ ]*/] ); 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_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.FIREWALL_ADDRESS_QUARYADDRS1 = new Array( ["\r\nAddress-set: "], [/^(\S+)/], [/^Description: ([\S ]+)$/], [/^Item number\(s\): (\S+)$/], [/^Reference number\(s\): (\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( ["\r\nAddress-set: "], [/^(\S+)/], [/^Description: ([\S ]+)$/], [/^Item number\(s\): (\S+)$/], [/^Reference number\(s\): (\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*)|address-set (\S+)(?: description (.*)|\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.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+|)\(\d+ times matched\)/; 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.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+)\s+usage\s+:\s+(\d+\%)/]); 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_ADDRESSMAPPING_LIST = new Array( ["\r\n\r\n"], [/id[ ]+:[ ]+(\d+)/], [/zone[ ]+:[ ]+(\S+)/], [/global-start-addr[ ]*:[ ]*(\S+)[ ]+global-end-addr[ ]*:[ ]+(\S+)/], [/inside-start-addr[ ]*:[ ]*(\S+)[ ]+inside-end-addr[ ]*:[ ]+(\S+)/], [/globalport[ ]+:[ ]+(\S+)[ ]+insideport[ ]+:[ ]+(\S+)/], [/globalvpn[ ]+:[ ]+(\S+)[ ]+insidevpn[ ]+:[ ]+(\S+)/], [/protocol[ ]+:[ ]+(\S+)[ ]+vrrp[ ]+:[ ]+(\S+)/]); 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.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_UPDOWN_LOG = /l2tp up-down log (enable)/; 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' : [/\s*allow[ ]*l2tp[ ]*virtual-template[ ]*(\d+)(?:[ ]*remote[ ]*|)(\S+|)/], localPortName : [/^[\s]*tunnel[ ]+name[ ]+(\S{1,30})/], passwordauth : [/^[\s]*undo[ ]+tunnel[ ]+(authentication)/], password : [/^[\s]*tunnel[ ]+password[ ]+(?:cipher|simple)[ ]+(\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+)/], '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,3})\s+(\d{1,3})\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{0,})[ ]+(\d{0,})[ ]+(\d{0,})/]); FW_REGEX_TEMPLATE.VPN_L2TP_USER_QUERYUSER = ['\n', { 'userName,groupName' : [/^[\s]*Username[ ]+:[ ]+(\S{1,64}@(\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{8,16})/] }]; FW_REGEX_TEMPLATE.VPN_L2TP_USER_QUERYUSERUNDERGROUP = 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.VPN_L2TP_GETL2TPGROUPLIST = new Array(["\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( ["IKE "], [/Peer:\s*(.*)\s*$/], [/\s*version:[ ]+(v1v2|v1|v2)/], [/ipsec policy:[ ]+([^-]{1,15}-\d+-(?:manual|isakmp|template))[ ]+(?: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_ABNORMAL_DISIPSPOOFINGENABLE = new Array( [], [/^( firewall defend ip-spoofing enable)$/]); FW_REGEX_TEMPLATE.ATTACKDEFENSE_DEFEND_ABNORMAL_DISIPFRAGMENTENABLE = new Array( [], [/^( firewall defend ip-fragment enable)$/]); FW_REGEX_TEMPLATE.ATTACKDEFENSE_DEFEND_ABNORMAL_DISTEARDROPENABLE = new Array( [], [/^( firewall defend teardrop enable)$/]); FW_REGEX_TEMPLATE.ATTACKDEFENSE_DEFEND_ABNORMAL_DISSMURFENABLE = new Array([], [/^( firewall defend smurf enable)$/]); FW_REGEX_TEMPLATE.ATTACKDEFENSE_DEFEND_ABNORMAL_DISPINGOFDEATHENABLE = new Array( [], [/^( firewall defend ping-of-death enable)$/]); FW_REGEX_TEMPLATE.ATTACKDEFENSE_DEFEND_ABNORMAL_DISFRAGGLEENABLE = new Array( [], [/^( firewall defend fraggle enable)$/]); FW_REGEX_TEMPLATE.ATTACKDEFENSE_DEFEND_ABNORMAL_DISWINNUKEENABLE = new Array( [], [/^( firewall defend winnuke enable)$/]); FW_REGEX_TEMPLATE.ATTACKDEFENSE_DEFEND_ABNORMAL_DISLANDENABLE = new Array([], [/^( firewall defend land enable)$/]); FW_REGEX_TEMPLATE.ATTACKDEFENSE_DEFEND_ABNORMAL_DISTCPFLAGENABLE = new Array( [], [/^( firewall defend tcp-flag enable)$/]); 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\. ]+)*(?: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.ATTACKDEFENSE_DEFEND_DNS_DISPLAYDNSFLOOD_INTERFACE = new Array( ['\r\n\r\n'], [/^Interface (\S{0,32}):$/], [/^DNS alert-rate: (\d{1,6})[ ]*\S{0,32}$/], [/^DNS Max-rate: (\d{1,6})[ ]*\S{0,32}$/]); FW_REGEX_TEMPLATE.ATTACKDEFENSE_DEFEND_DNS_DISPLAYDNSFLOOD_IP = new Array( ['\r\n'], [/^ firewall defend dns-flood ip (\d+.\d+.\d+.\d+)[ ]*\S{0,5}[ ]*(\d{0,5})[ ]*\S{0,8}[ ]*(\d{0,5})$/]); FW_REGEX_TEMPLATE.ATTACKDEFENSE_DEFEND_DNS_DISPLAYDNSFLOOD_ZONE = new Array( ['\r\n'], [/^ firewall defend dns-flood zone (\S+)[ ]*\S{0,5}[ ]*(\d{0,5})[ ]*\S{0,8}[ ]*(\d{0,5})$/]); FW_REGEX_TEMPLATE.ATTACKDEFENSE_DEFEND_HTTPGET_DISPLAYGETFLOOD_IP = new Array( ['\r\n'], [/^ firewall defend get-flood ip (\d{1,3}.\d{1,3}.\d{1,3}.\d{1,3})[ ]*(?:alert|)[ ]*(\d{1,5}|)[ ]*(?:interval|)[ ]*(\d{1,2}|)[ ]*(?:restore|)[ ]*(\d{1,5}|)[ ]*(?:interval|)[ ]*(\d{1,4}|)[ ]*(?:max-rate|)[ ]*(\d{1,5}|)[ ]*$/]); FW_REGEX_TEMPLATE.ATTACKDEFENSE_DEFEND_HTTPGET_DISPLAYGETFLOOD_ZONE = new Array( ['\r\n'], [/^ firewall defend get-flood zone (\S{1,})[ ]*(?:alert|)[ ]*(\d{1,5}|)[ ]*(?:interval|)[ ]*(\d{1,2}|)[ ]*(?:restore|)[ ]*(\d{1,5}|)[ ]*(?:interval|)[ ]*(\d{1,4}|)[ ]*(?:max-rate|)[ ]*(\d{1,5}|)[ ]*$/]); 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\r\n'], [/^Interface (\S{0,32}):$/], [/^ICMP Max-rate: (\d{1,6})[ ]*\S{0,32}$/]); FW_REGEX_TEMPLATE.ATTACKDEFENSE_DEFEND_ICMP_LISTICMPIP = new Array( ['\r\n'], [/^ firewall defend icmp-flood ip (\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3})[ ]*(?:max-rate|)[ ]*(\d{1,5}|)[ ]*$/]); FW_REGEX_TEMPLATE.ATTACKDEFENSE_DEFEND_ICMP_LISTICMPZONE = new Array( ['\r\n'], [/^ firewall defend icmp-flood zone (\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_LISTSYNINTERFACE = new Array( ['\r\n\r\n'], [/^Interface (\S{0,32}):$/], [/^Tcp Process Type: (\S{0,13})$/], [/^Tcp Process Mode: (\S{0,6})[ ]*\S{0,32}$/], [/^SYN Max-rate: (\d{1,7}) packets\/s[ ]*\S{0,32}$/]); 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})[ ]*(port-attack[ ]*|)(?:max-rate|)[ ]*(\d{1,5}|)[ ]*(\S{1,13}|)[ ]*(\S{1,4}|)[ ]*$/]); FW_REGEX_TEMPLATE.ATTACKDEFENSE_DEFEND_SYN_LISTSYNZONE = new Array( ['\r\n'], [/^ firewall defend syn-flood zone (\S+)[ ]*(port-attack[ ]*|)(?:max-rate|)[ ]*(\d{1,5}|)[ ]*(\S{1,13}|)[ ]*(\S{1,4}|)[ ]*$/]); FW_REGEX_TEMPLATE.ATTACKDEFENSE_DEFEND_SYN_LISTSYNSZONE = new Array( ['\r\n'], [/^ firewall defend source-syn-flood zone (\S+)[ ]*(?:alert-rate|)[ ]*(\d{1,5}|)[ ]*(?:max-rate|)[ ]*(\d{1,5}|)[ ]*$/]); 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_PHYSICSINTERFACE = new Array( ['\r\n'], [/^(\S{5,32})$/]); FW_REGEX_TEMPLATE.ATTACKDEFENSE_DEFEND_TPL_DISZONEALL = new Array(['\r\n'], [/^(?:firewall zone name|firewall zone )[ ]*(\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 = new Array( ['\r\n'], [/^ firewall defend udp-flood source-max-rate (\d{1,5}) interval (\d{1,2})$/]); FW_REGEX_TEMPLATE.ATTACKDEFENSE_DEFEND_UDP_LISTUDPINTERFACE = new Array( ['\r\n\r\n'], [/^Interface (\S{0,32}):$/], [/^UDP Max-rate: (\d{1,6})[ ]*\S{0,32}$/]); 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})[ ]*(?:alert|)[ ]*(\d{1,5}|)[ ]*(?:max-rate|)[ ]*(\d{1,5}|)[ ]*$/]); FW_REGEX_TEMPLATE.ATTACKDEFENSE_DEFEND_UDP_LISTUDPZONE = new Array( ['\r\n'], [/^ firewall defend udp-flood zone (\S+)[ ]*(?:alert|)[ ]*(\d{1,5}|)[ ]*(?:max-rate|)[ ]*(\d{1,5}|)[ ]*$/]); FW_REGEX_TEMPLATE.ATTACKDEFENSE_IPMAC_MAC_BINDING = new Array([], [/^ Mac-binding is (Enabled|Disabled)[ ]*$/]); 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,2}|)[ ]*(S|I|D|\d{1,4})[ ]*([^-]\S{4,63}|)[ ]*([^-]\w+|)(-+|[ ]+)(\d{1,5}|)/]); FW_REGEX_TEMPLATE.ATTACKDEFENSE_LISTARP_VLANIF = 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,9}|)[ ]+(\d{1,9}|)[ ]+(\S*)/]); FW_REGEX_TEMPLATE.ATTACKDEFENSE_BLACKLIST_DISPLAYCLOCKTPL = /\s*(\d{2}:\d{2}:\d{2})[ ]+\S+[ ]+\S+[ ]+(\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,})[ ]*(?:(\w{1,19})|)$/]); 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})[ ]+(.+\S)[ ]+\s+(\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:(\d{1,32})[ ]+Syn-flood:(\d{1,32})[ ]+Dns-flood:(\d{1,32})[ ]+Sip-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]+|)[ ]*\(\d+ times matched\)(?:\(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_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 = { inbound : [/^\s*session log enable acl-number (\d{1,64}) inbound/] }; FW_REGEX_TEMPLATE.LOGTRAP_CONFIG_SESSIONLOG_INFIREWALL_OUTBOUND = { outbound : [/^\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 [\d\-: ]{19}|[\d\-: ]{19})[ ]*(\S+)[ ]+([\%\w]+)(\/)(\d+)(\/)(\w+)(\(\w+\)\:)(.*)/]); 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+)/; FW_REGEX_TEMPLATE.ATTACKDEFENSE_DEFEND_ARP_LISTUDPINTERFACE = new Array( ['\r\n\r\n'], [/^Interface (\S{0,32}):$/], [/^ARP Max-rate: (\d{1,6})[ ]*\S{0,32}$/]); FW_REGEX_TEMPLATE.ATTACKDEFENSE_DEFEND_ARP_LISTARPIP = new Array( ['\r\n'], [/^ firewall defend arp-flood ip (\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3})[ ]*(?:max-rate|)[ ]*(\d{1,5}|)[ ]*$/]); FW_REGEX_TEMPLATE.ATTACKDEFENSE_DEFEND_ARP_LISTARPZONE = new Array( ['\r\n'], [/^ firewall defend arp-flood zone (\S+)[ ]*(?:max-rate|)[ ]*(\d{1,5}|)[ ]*$/]); 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 (\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 (\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])\S*$/; 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.LOGBUFFER_SIZE = /^[ ]*info-center logbuffer size (\d{1,4})/; FW_REGEX_VIEW.COMBO_ZONE_NAME = /^[ ]{2}(\S+)[ ]+\S+/; FW_REGEX_VIEW.COMBO_ZONE = new Array(['\r\n#'], [/(\S+)$/]); 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_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 = /(?:^(?:(?:[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))$)/; 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+)) 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 = /^ apply-to (long-link)/; FW_REGEX_VIEW.FIREWALL_POLICY_ASPF = /^ apply-to aspf (java-blocking|)[ ]*(activex-blocking|)[ ]*(user-define|)/; FW_REGEX_VIEW.FIREWALL_POLICY_ID = /^ (?:nat-policy|policy) (\d+)[ ]*(\(Inactive\)|)\((\d+) times matched\)/; FW_REGEX_VIEW.FIREWALL_POLICY_DESCRIPTION = /^ description (.*)/; FW_REGEX_VIEW.FIREWALL_POLICY_PARAMS0 = /^ action (permit|deny)\s*$/; FW_REGEX_VIEW.FIREWALL_POLICY_PARAMS0_ = /^ action (no-nat|source-nat)\s*$/; FW_REGEX_VIEW.FIREWALL_POLICY_PARAMS1 = /^ (?:nat-policy|policy) precedence ([a-z\-]+)\s*$/; FW_REGEX_VIEW.FIREWALL_POLICY_PARAMS2 = /^ (?:nat-policy|policy) tos ([a-z0-9\-]+)\s*$/; FW_REGEX_VIEW.FIREWALL_POLICY_PARAMS3 = /^ (?:nat-policy|policy) (logging)\s*$/; FW_REGEX_VIEW.FIREWALL_POLICY_SESSIONLOG = /^( policy session traffic statistic (logging |)enable)\s*$/; FW_REGEX_VIEW.FIREWALL_POLICY_PARAMS4 = /^ (?:nat-policy|policy) time-range ([\S]+)\s*$/; FW_REGEX_VIEW.FIREWALL_POLICY_SERVICE = /^ (?:nat-policy|policy) service (service-set \S+(?: \((?:object|group|predefined)\)|))\s*$/; FW_REGEX_VIEW.FIREWALL_POLICY_SERVICESET = /^ (?:nat-policy|policy) service service-set (\S+) \((?:object|group|predefined)\)\s*$/; FW_REGEX_VIEW.FIREWALL_POLICY_SOURCE = /^ (?: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 = /^ (?: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 = /^ (?: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 = /^ (?: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 = /^ (?: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 = /^ (?: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]*) max\s*$/]); FW_REGEX_VIEW.FIREWALL_POLICY_TRANSMITGRID = new Array(["\r\n\r\n"], [FW_REGEX_VIEW.FIREWALL_POLICY_ID], [FW_REGEX_VIEW.FIREWALL_POLICY_DESCRIPTION], [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_SESSIONLOG], [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_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_DESCRIPTION], [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_IPSCOMPILED=/\s*Need\s*Compile:(\d)\s*/ ; 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*VFW: (\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_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_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_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_BLANK = /^\s+$/; FW_REGEX_VIEW.VPN_IPSEC_VALIDATE_POLICY_FULLNAME = /^[^-]+(-(\d{1,4}|10000))?$/; FW_REGEX_VIEW.VPN_IPSEC_POLICY_FULLNAME = /^([^-]+)-(\d+)/; FW_REGEX_VIEW.VPN_IPSEC_POLICY_FULLNAME_AND_TYPE = /([^-]+-\d+)-(\S+)/; FW_REGEX_VIEW.VPN_IPSEC_POLICY_NAME_SEQUENCE_AND_TYPE = /([^-]+)-(\d+)-(\S+)/; FW_REGEX_VIEW.VPN_IPSEC_DIS_IKE_PEER_POLICY = /^\s*applied[ ]*to[ ]*\d+[ ]*\S*:[ ]*(.*)/; FW_REGEX_VIEW.VPN_IPSEC_DIS_IKE_PEER_ADDRESS = /^\s*peer[ ]*ip[ ]*address:[ ]*(\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3})\s*$/; 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\s*)(\d+|\S*))|)\s*(?:destination\s|)(\s*\d+.\d+.\d+.\d+\s[0-9\.]+|)\s*(?:destination-port\s*|)\s*(?:((?:eq\s*)(\d+|\S*))|)\s*(?:time-range|)\s*([\S\-]+|)\s*(?:\(\d*\stimes matched\)))/, '+']); FW_REGEX_VIEW.VPN_IPSEC_POLTPLNAME = /^\s*policy[ ]template[ ]name:\s*(.+)/; FW_REGEX_VIEW.VPN_IPSEC_TPL_REG = /[\r\n]\s*policy[ ]template[ ]name:\s*(.+)/; FW_REGEX_VIEW.VPN_IPSEC_POLTPLNUM = /^\s*sequence[ ]number:\s*(\d+)/; 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_INTERFACE_REG = /[\r\n]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 = /ip pool: (\d{1,2})/; FW_REGEX_VIEW.VPN_IPSEC_IKE_AUTHENTICADDRESS = /authentic ip 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:[ ]*(.*)/; FW_REGEX_VIEW.VPN_IPSEC_DIS_IKE_POLICY_CMD2 = /^\s*proposal[ ]+name:[ ]*(.*)/; FW_REGEX_VIEW.VPN_IPSEC_DIS_IKE_POLICY_CMD6 = /^\s*proposal[ ]+name:[ ]*(.*)/; 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_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+|)),\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_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:[ ]*(.*)/; 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*exchange[ ]*mode:[ ]*(\S+)/; FW_REGEX_VIEW.VPN_IPSEC_DIS_IKE_PEER_CMD2 = /^\s*pre-shared-key:[ ]*(.*)/; FW_REGEX_VIEW.VPN_IPSEC_DIS_IKE_PEER_CMD3 = /^\s*local[ ]id[ ]type:\s*(name|ip)/; FW_REGEX_VIEW.VPN_IPSEC_DIS_IKE_PEER_CMD4 = /^\s*proposal:\s*(\d+)/; FW_REGEX_VIEW.VPN_IPSEC_DIS_IKE_PEER_CMD5 = /^\s*peer[ ]*ip[ ]*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*peer[ ]name:\s*(.*)/; FW_REGEX_VIEW.VPN_IPSEC_DIS_IKE_PEER_CMD7 = /^\s*nat[ ]*traversal:[ ]*(\S+)/; FW_REGEX_VIEW.VPN_IPSEC_DIS_IKE_PEER_CMD8 = /^\s*proposal:[ ]*(\d+)/; FW_REGEX_VIEW.VPN_IPSEC_DIS_IKE_PEER_CMD_VPN = /^\s*vpn:\s*(.*)/; FW_REGEX_VIEW.VPN_IPSEC_DIS_IKE_LOCAL_NAME_CMD = /\s*ike[ ]local-name\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.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+)\s*(\S+)/; FW_REGEX_VIEW.VPN_IPSEC_DIS_IKE_SA = /0x(\S+)\s+(\S+)\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)/; FW_REGEX_VIEW.VPN_IPSEC_DIS_IPSEC_POLICY_BRIEF_CMD = /^\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*(.+)-(\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*(.+)-\d+\s*(?:manual|isakmp|template|)/; FW_REGEX_VIEW.VPN_IPSEC_DIS_IPSEC_POLICY_BRIEF_CMD3 = /^\s*(.+-\d+)[ ]+(\?i)/; FW_REGEX_VIEW.VPN_IPSEC_DIS_IPSEC_POLICY_BRIEF_CMD4 = /^\s*(.+-\d+)[ ]+(\?t)/; FW_REGEX_VIEW.VPN_IPSEC_DIS_IPSEC_POLICY_BRIEF_CMD5 = /^\s*(.+-\d+)[ ]+(\?m)/; FW_REGEX_VIEW.VPN_IPSEC_DIS_IPSEC_POLICY_BRIEF_CMD6 = /^\s*(.+-\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*(.+-\d+)\s*(\?[imt])/; FW_REGEX_VIEW.VPN_IPSEC_DIS_IPSEC_POLICY_NAME_EXTEND_ACL_CMD = /^\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+(\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/; 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.IPSEC_ACLRULE_PORT = /\d+\D+/; 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_USERNAMEMATCHFORMAT = /^[a-zA-Z0-9`~!#$%^&()_+=,.\-\/\[\{\]\};']{1,64}$/;//AQ4D38767 FW_REGEX_VIEW.VPN_L2TP_USERNAMEMATCHFORMAT_QUERY = /^[@a-zA-Z0-9`~!#$%^&()_+=,.\-\/\[\{\]\};']{1,64}$/;//AQ4D38767 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.USER_LOCAL_PASSWORD = /^(?![a-zA-Z]+$)(?![`~!@#$%^&*()_\-+=,.:|\\\[\{\]\};\"/'<>]+$)(?![0-9]+$)[a-zA-Z0-9`~!@#$%^&*()_\-+=,.:|\\\[\{\]\};\"/'<>]{8,16}$/; FW_REGEX_TEMPLATE.USER_LOCAL_USERNAME_LIST = new Array( ['\r\n\r\n'], [/^ ((\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{1,19})[\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 = /^\s*\S{1,64}[ ]*(null|all|rsa|password)[ ]*(\S{1,30}|)/; 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{1,64})[ ]+(?: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 :[ ]* (\S{1,19})[\s]*$/]); 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{1,30})$/]); FW_REGEX_TEMPLATE.USER_LOCAL_SEARCH_BY_USERNAME = { username : [/^[\s]*Username[ ]+:[ ]+((\S{1,64}))/], password : [/^[\s]*Password[ ]+:[ ]+((\S{1,64}))/], 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[ ]+:[ ]+(\S)/], ftpDir : [/^[\s]*FTP-directory[ ]+:[ ]+(\S+)/], l2tpIP : [/^[\s]*L2tp-ip[ ]+:[ ]+(\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}|-)/], vpnInstance : '' }; 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 = new Array( ["#\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}|---)[ ]+(\S{1,19})/, '+']); FW_REGEX_TEMPLATE.USER_GROUP_GETSINGLECOUNT = new Array(["\n"], [/^[\s]* Total (\d{1,4}),(\d{1,4}) printed[\s]*$/]); FW_REGEX_TEMPLATE.USER_LOCAL_IPSEARCH_BY_USERNAME = /^[\s]*L2tp-ip[ ]+:[ ]+(\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}|-)/; FW_REGEX_TEMPLATE.USER_LOCAL_SEARCH_BY_NAMEANDGROUP = { username : [/^[\s]*Username[ ]+:[ ]+((\S{1,64}))/], password : [/^[\s]*Password[ ]+:[ ]+((\S{1,64}))/], 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})/], l2tpIP : [/^[\s]*L2tp-ip[ ]+:[ ]+(\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}|-)/], vpnInstance : '' }; 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{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}|---|)[ ]+(\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}$/; //AQ4D38767 FW_REGEX_TEMPLATE.USER_LOGIN_LOCAL_NAME_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{1,30})[\s]*$/]); FW_REGEX_TEMPLATE.USER_RSA_PEER_REPLACE = /\%.*\[yes\/no\]:/g; FW_REGEX_TEMPLATE.USER_RSA_LOCAL_REPLACE = /\%.*\r\n\%.*\[yes\/no\]:/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( [], [/^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,30}$/; //AQ4D38782 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}|-)/] }; FW_REGEX_TEMPLATE.USER_GROUP_AUTHENTICATION_LIST = new Array(['\r\n'], [/^\s+(\S{1,32})(?:(?:[ ]+[local|none|radius]+)+)/]); FW_REGEX_TEMPLATE.USER_GROUP_AUTHORIZATION_LIST = new Array(['\r\n'], [/^\s+(\S{1,32})(?:(?:[ ]+[Local|If\-authenticated|None]+)+)/]); FW_REGEX_TEMPLATE.USER_GROUP_ACCOUNTING_LIST = new Array(['\r\n'], [/^\s+(\S{1,32})[ ]+(?:No|RADIUS)[ ]+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_FINDAUTHENTICATIONS = new Array( ['\r\n'], [/^[ ]+(\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}$/]); FW_REGEX_TEMPLATE.USER_GROUP_NAME_REG = /^[a-zA-Z0-9`~!#$%^&()_\-\/+=\[\{\]\},.;']{1,64}$/; //AQ4D38767 FW_REGEX_TEMPLATE.USER_GROUP_IPPOOLNUMBER_REG = /^[0-9]{1,2}$/; 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,32})$/], [/^[ ]+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 template[ ]+(\S{1,32})$/], [/^ 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_SHAREDKEY_REG = /^[^"\s]{1,16}$/; FW_REGEX_TEMPLATE.USER_AUTHENTICATION_LIST = new Array(["\r\n"], [/^[\s]*(\S{1,32})[ ]+([\w ]+)$/]); FW_REGEX_TEMPLATE.USER_AUTHENTICATION_ONEAUTHENTICATION = { authentication_name : [/^[\s]*Authentication-scheme-name[ ]+:[ ]+(\S{1,32})/], authenticationmethod1 : [/^[\s]*Authentication-method[ ]+:[ ]+(\S{1,32})[ ]+authentication/], authenticationmethod2 : [/^[\s]*Authentication-method[ ]+:[ ]+(\S{1,32})[ ]+authentication/], authenticationmethod3 : [/^[\s]*Authentication-method[ ]+:[ ]+(\S{1,32})[ ]+authentication/] }; FW_REGEX_TEMPLATE.USER_AUTHENTICATION_NAME_REG = /^[a-zA-Z0-9`~@!#$%^&()_+=\[\{\]\},.;']{1,32}$/; FW_REGEX_TEMPLATE.USER_AUTHORIZATION_LIST = new Array(["\r\n"], [/^[\s]*([^-*|\:"?<> ]{1,32})[ ]+(([a-zA-Z\-]{1,10}[ ]*){1,4})[\s]*$/]); FW_REGEX_TEMPLATE.USER_AUTHORIZATION_ONEAUTHORIZATION = { authorization_name : [/^[\s]*Authorization-scheme-name[ ]+:[ ]+(\S{1,32})/], authorizationmethod1 : [/^[\s]*Authorization-method[ ]+:[ ]+(\S{1,32})[ ]+authorization/], authorizationmethod2 : [/^[\s]*Authorization-method[ ]+:[ ]+(\S{1,32})[ ]+authorization/], authorizationmethod3 : [/^[\s]*Authorization-method[ ]+:[ ]+(\S{1,32})[ ]+authorization/] }; 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_VIEW.ATTACKDEFENSE_DEFEND_CONNECTION_ID_1 = /^\s*firewall defend tcp-illeage-session (enable)$/; FW_REGEX_VIEW.ATTACKDEFENSE_DEFEND_CONNECTION_ID_2 = /^\s*firewall defend tcp-illeage-session blacklist-timeout (\d{1,4})$/; FW_REGEX_VIEW.ATTACKDEFENSE_DEFEND_CONNECTION_ID_3 = /^\s*firewall defend tcp-illeage-session packet (\d{1,3}) interval (\d{1,3})/; FW_REGEX_VIEW.ATTACKDEFENSE_DEFEND_CONNECTION_ID_4 = /^\s*firewall defend tcp-illeage-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:(\d+)/, '*']; FW_REGEX_VIEW.ATTACKDEFENSE_WHITELIST_SYNFLOOD = [/Syn-flood:(\d+)/, '*']; FW_REGEX_VIEW.ATTACKDEFENSE_WHITELIST_DNSFLOOD = [/Dns-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-illeage-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_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.LOGTRAP_CONFIG_DEFENDTIME = /^[ ]*Attack Defend logtime is (\d+) s/; 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+)/; 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})$/], '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]*)/]); 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 = /Current state of interfaces tracked by master:/; FW_REGEX_VIEW.IPLINK_TWO_OLD_SLAVE = /Current 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 = /(\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_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 = /\r\nItem number\(s\): (\S+)/; FW_REGEX_TEMPLATE.FIREWALL_ADDRESS_REFERENCE = /\r\nReference number\(s\): (\S+)/; FW_REGEX_TEMPLATE.FIREWALL_ADDRESS_M_E_M = new Array(['\r\n '], [/^address (\d{1,4}) .*/]); 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 = ['addresses on this interface have been removed', '接口的IP地址已经被删除']; FW_REGEX_TEMPLATE.SYSTEM_VLAN_UNDOBINDING_INFO = ['all interfaces in the L2 have been removed', '已将该VPN实例的安全域中的二层接口删除']; var UTM_REGEX_VIEW = function() { } 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_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.AV_POLICYPARAMETERLIST = 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*(.*)/], [/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_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_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.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_ACTIVATEDCODE = { 'lu_activatedcode' : [/The activated serial code.*:\s*((?!NULL)[\w\-\+\/]*)/i] }; UTM_REGEX_VIEW.LU_UPDATESTATUS = { statusIps:[/ *(?:Current ips\/av update status\s*:|当前ips\/av升级状态\s*:)\s*(.*)/], statusDpi : [/[ ]*(?:Current dpi update status\s*:|当前dpi升级状态\s*:)\s*(.*)/] }; UTM_REGEX_VIEW.LU_DPIVERSION = { 'dpiversion' : [/Version\s*:(.*)/], 'dpiupdatetime' : [/File active time\s*:(.*)/], 'dpiupdatefileissue' : [/File published time\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_SECURITY_SERVER = { 'server_domain' : [/\s*Security server\s*: (.*)/] } 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_UPDATECONFIG = { 'internalupdatemode' : [/Internal update mode\s*:\s*(\w*)/], 'internalserver' : [/Internal update server\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*: (.*)/] , 'dpiupdatestate' : [/ Schedule update\s*: (\w*)/], 'dpiupdatefrequency' : [/ Schedule update frequency\s*: (\w*)/], 'dpiupdatetime' : [/ Schedule update time\s*:[ ]*(.*)/] }; UTM_REGEX_VIEW.LU_UPDATECONFIG_DPI = { 'dpiupdatestate' : [/ Schedule update\s*: (\w*)/], 'dpiupdatefrequency' : [/ Schedule update frequency\s*: (\w*)/], 'dpiupdatetime' : [/ Schedule update time\s*:[ ]*(.*)/] }; UTM_REGEX_VIEW.LU_DIRCF = /^[ ]*\d*[ ]*\-rw\-[ ]*(\d*)[ ]*(\w* \d* \d* \d*:\d*:\d*)[ ]*(.*\.zip)$/; 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 = /^IPS policy \"(.*)\"/; FW_REGEX_VIEW.AVPOLICY = /^AV Policy \"(.*)\"/; 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*:\s*(\S{1,})/i]; 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([], [/\s*Signature ID\s*:\s*(.*)/], [/\s*State\s*:\s*(\w*)/], [/\s*Name\s*:\s*(.*)/], [/\s*Protocol\s*:\s*(.*)/], [/\s*Severity\s*:\s*(.*)/], [/\s*Reliability\s*:\s*(.*)/], [/\s*Direction\s*:\s*(.*)/], [/\s*Category\s*:\s*(.*)/], [/\s*Event Counts\s*:\s*(.*)/], [/\s*Reference\s*:\s*(.*)/], [/\s*Description\s*:\s*(.*)/]); UTM_REGEX_VIEW.IPS_SIGNATURE_DISPLAY_HOLE = new Array( ['\r\n'], [/(\d*)\s*(\S*)\s*(to-server|to-client|any|all)\s*(critical|error|informational|notification|warning)\s*([\S ]*)\s*\[(\w*)\]\s*(\d*)\s*(active|deprecated)\s*(.*)/]); UTM_REGEX_VIEW.IPS_SIGNATURE_DISPLAY_DETAIL_ID = /\s*Signature ID\s*:\s*(.*)/; UTM_REGEX_VIEW.IPS_SIGNATURE_DISPLAY_DETAIL_STATE = /\s*State\s*:\s*(\w*)/; UTM_REGEX_VIEW.IPS_SIGNATURE_DISPLAY_DETAIL_RELIABILITY = /\s*Reliability\s*:\s*(.*)/; UTM_REGEX_VIEW.IPS_SIGNATURE_DISPLAY_DETAIL_PRENAME = /\s*Name\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 = /\s*Event Counts\s*:\s*(\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_USER_DISPLAY_ID = new Array( [], [/\s*Signature ID\s*:\s*(\S*)/], [/\s*State\s*:\s*(\S*)/], [/\s*Name\s*:\s*(\S*)/], [/\s*Protocol\s*:\s*(\S*)/], [/\s*Severity\s*:\s*(\S*)/], [/\s*Direction\s*:\s*(\S*)/], [/\s*Event Counts\s*:\s*(\S*)/]); 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*Event Counts\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 = 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_TEMPLATE_PRIVILEGY_FOR_POLICY = /\s*IPS policy\s*\"([\S ]*)\"/; UTM_REGEX_VIEW.IPS_POLICY_TEMPLATE_POLICY_LIST = new Array( ['\r\nIPS policy'], [/\"([\S ]*)\"/], [/\s*Description\s*:\s*(.*)/],[/\s*Referenced\s*:\s*(\d*)/]); 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'], [/\s*(\d*)\s*(block|alert)\s*(enable|disable)\s*(.*)/]); 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*)/], [/\s*Reliability\s*:\s*(\S*)/], [/\s*Protocol\s*:\s*(\S*)/], [/\s*Category\s*:\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_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.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_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 = /remission-ip\s*(\S+)?\s*:\s*(.+)$/i; UTM_REGEX_VIEW.URL_LOG_MERGEE_NABLE = /undo\s*http-access\s*(log-merge)\s*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*(\S+)\s*(\d+)\s*(.*)\s*$/; 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'); } var URL_REGEX_VIEW = function() { } URL_REGEX_VIEW.URL_PRECATEGORY_DISPLAY = new Array( ['\r\n'], [/(\d+)\s*\"(.*)\s*\"\s*(?:(\d+)\s+)?(\d+)\s+(.*)/]); URL_REGEX_VIEW.URL_PRECATEGORY_SERVERDOMAIN = /Security server\s*:\s*(.*)/i; URL_REGEX_VIEW.URL_PRECATEGORY_SERVERIP = /Address\s*:\s*([\w.]*)/i; URL_REGEX_VIEW.URL_PRECATEGORY_SERVERPORT = /Port\s*:\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 = /\r\n Online user number : (\d+)/; FW_REGEX_TEMPLATE.LINKAGE_TSM_STAT_2 = /\r\n In all login times : (\d+)/; FW_REGEX_TEMPLATE.LINKAGE_TSM_STAT_3 = /\r\n In all login failed times : (\d+)/; FW_REGEX_TEMPLATE.LINKAGE_TSM_STAT_4 = /\r\n In all logout times : (\d+)/; FW_REGEX_TEMPLATE.LINKAGE_TSM_STAT_5 = /\r\n In all logout failed times : (\d+)/; FW_REGEX_TEMPLATE.LINKAGE_TSM_STAT_6 = /\r\n Received COPS packets number : (\d+)/; FW_REGEX_TEMPLATE.LINKAGE_TSM_STAT_7 = /\r\n Send COPS packets number : (\d+)/; FW_REGEX_TEMPLATE.LINKAGE_TSM_STAT_8 = /\r\n COPS packets error number : (\d+)/; FW_REGEX_TEMPLATE.LINKAGE_TSM_STAT_9 = /\r\n Protocol process error number : (\d+)/; FW_REGEX_TEMPLATE.LINKAGE_TSM_DEFAULT_ACL = /\r\n default acl 3099/; FW_REGEX_TEMPLATE.LINKAGE_TSM_SERVER_ENABLE = /\r\n right-manager server-group enable/; FW_REGEX_TEMPLATE.LINKAGE_TSM_STAT_ENABLE = /\r\n right-manager status-detect enable/; FW_REGEX_TEMPLATE.LINKAGE_TSM_ACTIVE_SERVER = /\r\n right-manager server-group active-minimun (\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([' UserName'], [/^\s*:\s(\S+)$/], [/^\s*UserIp\s*:\s(\S+)$/], [/^\s*ServerIp\s*:\s(\S+)$/], [/^\s*LoginTime\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\)/]); var IM_REGEX_VIEW = function(){} IM_REGEX_VIEW.IMWHOLECONFIG_ENABLE = /(firewall\s*im\s*enable)/i; IM_REGEX_VIEW.IMWHOLECONFIG_BLOCK = /(firewall\s*im-block\s*default-permit)/i; IM_REGEX_VIEW.IMWHOLECONFIG_DETECT = /(firewall\s*im-detect\s*default-permit)/i; IM_REGEX_VIEW.IMWHOLECONFIG_BLOCKPROTOCOL = /firewall\s*im-block\s*include\s*(\S+)/; IM_REGEX_VIEW.IM_PROTOCOLSATISTIC_GRID = new Array(['\r\n'],[/\s*(\S+)\s+(\d+)\s+(\d+)\s+(\d+)\s*(\d+)\s+(\d+)\s+(\d+)/]); IM_REGEX_VIEW.ACLNUM = /im-block[ ]+(\d+)/; IM_REGEX_VIEW.DOMAINDETECT = /(im-detect\s*enable)/i; IM_REGEX_VIEW.STATISTIC_TIME = /statistic from (.*) to (.*)/; IM_REGEX_VIEW.IM_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]+|)[ ]*\(\d+ times matched\)(?:\(Inactive\)|)/; IM_REGEX_VIEW.IM_BASE_ACLRULE = /^[ ]*rule (\d+) (permit|deny)[ ]+(?:source|)([ ]*address-set \S+ \((?:group|object)\)| \d+.\d+.\d+.\d+ [0-9\.]+|)[ ]*(?:logging|)[ ]*(?:time-range|)([ ]*[\S]+|)[ ]*\(\d+ times matched\)(?:\(Inactive\)|)/; IM_REGEX_VIEW.UNUSEACL = /^\s*The ACL (\d+) is unused/; IM_REGEX_VIEW.RULE_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}|)$/; var FRAGMENTCACHE_REGEX = function() {} FRAGMENTCACHE_REGEX.FRAGMENT_CACHE = /undo\s*firewall\s*fragment-cache\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*(forward)/; FRAGMENTCACHE_REGEX.STREAM_REASSEMBLE = /stream-reassemble\s*overflow-policy\s*(forward)/; 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_ONEPOLICY_LIST = new Array( ['ifier'], [/-name:(.*);/], [/ACL:(\d{1,4});\s*Description:(.*)/], [/Behavior-name (.*);/], [/NextHop: (\d{1,3}.\d{1,3}.\d{1,3}.\d{1,3}); BDRName: (\S*)/], [/cir: (\d{3,7}); cbs: (\d{5,7}); ebs: (\d{1,7})/] ); FW_REGEX_TEMPLATE.ROUTER_POLICY_ALL_LIST = new Array( [' PolicyM'], [/apName:([\S ]+)/], [/ifier-name:(.*);\s*ACL:(\d*|);\s*Description:(.*|)\s*Behavior-name\s*(.*);\s*(?:NextHop:\s*(\S*);\s*BDRName:\s(\S*)\s*|)(?:cir:\s(\d*);\s*cbs:\s(\d*);\sebs:\s(\d*)\s*|)/, '+'] ); FW_REGEX_TEMPLATE.ROUTER_POLICY_NAME_LIST = new Array( ['PolicyM'], [/apName:([\S ]+)/] ); FW_REGEX_TEMPLATE.ROUTER_POLICY_FINDCLASS =new Array( ['\r\n'], [/\s*Classifier: ([\S ]+)/] ); FW_REGEX_TEMPLATE.ROUTER_POLICY_FINDIFMATCH =new Array( ['\r\n'], [/Rule\(s\)\s*:\s*if-match\s*acl\s*(\d{1,4})/] ); FW_REGEX_TEMPLATE.ROUTER_POLICY_FINDBEHAVIOR =new Array( ['\r\n'], [/Behavior:\s*([\S ]+) $/] ); FW_REGEX_TEMPLATE.ROUTER_POLICY_FINDCARINFO =new Array( ['\r\n'], [/CIR\s*(\d{3,7})\s*\(Kbps\),\s*CBS\s*(\d{5,7})\s*\(bit\),\s*EBS\s*(\d{1,7})\s*\(bit\)/] ); FW_REGEX_TEMPLATE.OUT_INTERFACE_LIST=new Array( ['\r\n'], [/((?:Eth-Trunk|Virtual-Template|Tunnel|GigabitEthernet|NULL|LoopBack|Logic-Channel|Vlanif)\S*)/] ); FW_REGEX_TEMPLATE.ROUTER_POLICY_FINDPOLICYNAME = new Array( ['\r\n'], [/PolicyMapName:([\S ]+)/] ); FW_REGEX_TEMPLATE.ROUTER_POLICY_APPBEHAVIOR = new Array( ['\r\n'], [/Behavior: (.*)/] ); FW_REGEX_TEMPLATE.ROUTER_POLICY_APPIP = new Array( ['\r\n'], [/Redirect ip-nexthop (\d{1,3}.\d{1,3}.\d{1,3}.\d{1,3}) interface (\S+)/] ); FW_REGEX_TEMPLATE.ROUTER_POLICY_APPCAR = new Array( ['\r\n'], [/CIR (\d*) \(Kbps\), CBS (\d*) \(bit\), EBS (\d*) \(bit\)/] ); FW_REGEX_TEMPLATE.ROUTER_POLICY_NOACL = new Array( ['\r\n'], [/(The ACL group is not created.)/] ); FW_REGEX_TEMPLATE.BEHAVIOR_LIST = new Array( ['Behav'], [/ior:\s*([\S ]+)/], [/CIR\s*(\d{3,10})\s*\(bps\),\s*CBS\s*(\d{5,7})\s*\(bit\),\s*EBS\s*(\d{1,7})\s*\(bit\)/], [/ip-nexthop (\d{1,3}.\d{1,3}.\d{1,3}.\d{1,3}) out-interface (\S+)/] ); FW_REGEX_TEMPLATE.CLASS_LIST = new Array( ['Class'], [/ifier: ([\S ]+)/], [/Rule\(s\)\s*:\s*if-match\s*acl\s*(\d{1,4})/] ); FW_REGEX_TEMPLATE.ROUTER_POLICY_LIST= [ ['\r\n Pol'], [/icy:[ ]([\S ]+)/], [/Classifier:\s(\S+)\s*Behavior:\s(\S+)/,'+'] ], FW_REGEX_TEMPLATE.ROUTER_POLICY_LIST_ZUOLI= [ ['\r\n Pol'], [/icy:[ ]([\S ]+)/], [/ifier:\s([\S ]+)\s*Behavior:\s([\S ]+)\s*(?:Committed Access Rate:\s*CIR\s(\d+)\s\(bps\), CBS \d+ \(bit\), EBS \d+ \(bit\)\s*Conform Action: \S+\s*Exceed Action: \S+\s*|)(?:Marking:\s*ip-nexthop\s(\S+)\sout-interface\s([\w/.:-]+)|)/,'+'] ], FW_REGEX_TEMPLATE.ROUTER_POLICY_ZONE_ZONELISTSUCC = [['\r\n#'], [/^(?!HRP)([\S\s]*)/], [/^ qos apply policy (\S+) (inbound|outbound)$/]]; FW_REGEX_TEMPLATE.ROUTER_POLICY_FINDACL =new Array( ['#\r\n'], [/if\-match acl (\d{1,4})/] ); FW_REGEX_TEMPLATE.ROUTER_POLICY_FINDCAR =new Array( ['#\r\n'], [/car cir (\d{3,7}) cbs (\d{5,7}) ebs (\d{1,7})/] ); FW_REGEX_TEMPLATE.ROUTER_POLICY_FINDIP =new Array( ['#\r\n'], [/\s*redirect\s*ip\-nexthop\s*(\d{1,3}.\d{1,3}.\d{1,3}.\d{1,3})\s*interface\s*(\S+)/] ); FW_REGEX_TEMPLATE.ROUTER_POLICY_FINDPOLICYNAME = [ ['\r\n Pol'], [/icy:[ ]([\S ]+)/] ]; FW_REGEX_TEMPLATE.ROUTER_POLICY_ACL_MESSAGE_DISPLAY_ZUOLI = [ ['\r\n Class'],[/ifier:\s([\S ]+)/],[/Rule\(s\) : if-match acl (\d+)/], [/[ ]*rule (\d+) (permit|deny) (service-set \S{1,} \((?:group|object|predefined)\)|\w+|)[ ]*(?:source|)([ ]*address-set \S+ \((?:group|object)\)|\s*\d+.\d+.\d+.\d+ [0-9\.]+|)[ ]*(?:destination|)([ ]*address-set \S+ \((?:group|object)\)|\s*\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_ACL_LIST_MESSAGE_DISPLAY = new Array( ['\r\n'], [/[ ]*Advanced[ ]+ACL[ ]+(\d+)/], [/[ ]*rule (\d+) (permit|deny) (service-set \S{1,} \((?:group|object|predefined)\)|\w+|)\s*(?:source|)([ ]*address-set \S+ \((?:group|object)\)|\s*\d+.\d+.\d+.\d+ [0-9\.]+|)\s*(?:destination|)([ ]*address-set \S+ \((?:group|object)\)|\s*\d+.\d+.\d+.\d+ [0-9\.]+|)\s*(?:precedence|)([ ][a-z\-]+|)\s*(?:tos|)([ ][a-z0-9\-]+|)\s*(?:logging|)\s*(?:time-range|)(\s*\S+|)[ ]*\((\d+) times matched\)/]); FW_REGEX_TEMPLATE.ROUTER_POLICY_FINDVPN = /binding with vpn-instance (\S+)/; FW_REGEX_TEMPLATE.LINKAGE_TSM_REPLACERULE = /\r\n\[.*\]/g; FW_REGEX_TEMPLATE.ROUTER_POLICY_ZONE_ZONELISTSUCC_ZUOLI = [['\r\n'], [/vpn:(\S+)\s*zone:(\S+)\s*(?:inbound|----)\s*(outbound|----)/]]; 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.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]+|)[ ]*(?:\(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.VALIDATE_ACLNUMBER_COMBO = /Acl's step is (\d)/; 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.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.GLOBAL_ACL_UNUSED = /The ACL (\d+) is unused/; 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 = /(undo) ip-car enable/; FW_REGEX_VIEW.IPCAR_SPLIT_PAGING_INDEX=/\s+(\d{1,})\s+(\d{1,})/; 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_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+)[ ]+(unassigned|[0-9\.]{7,15})[ ]+(unassigned|[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*network\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=/\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_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|[A-Za-z]+[ ]+\d+[ ]+\d+[ ]+\d+:\d+:\d+[ ]\S+)[ ]+(\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+/; 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_ALL_DIAGONAL=/\\/g; FW_REGEX_UTIL.CHECK_DIAGONAL=/\\/; 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+).*/;