Recent Posts

Pages: 1 2 [3]
21
News / Re: RazWall 1.0 Beta Build
« Last post by razwall on November 25, 2024, 08:30:40 AM »
I created a fork of the Foomuuri project for future reference. Thanks!
22
News / Re: RazWall 1.0 Beta Build
« Last post by razwall on November 25, 2024, 08:24:23 AM »
Welcome and thanks for posting! Any suggestions are welcome. I have added a your feature request for future development board of the forum. I do plan to add everything to Github I just haven't had the time and nothing is stable (everything is changing daily). once I have went through all of the code i will be posting everything.
23
News / Re: RazWall 1.0 Beta Build
« Last post by techdevel on November 23, 2024, 09:39:15 AM »
Hi,
Wonderful work. Thanks for sharing the details of development work. I am not good in the development side however i have used different open source firewall even recent dynfirewall as well.
I am also waiting to test and use the razwall and share my experience with you. I have following suggestions if seems okay to you.
1. It would be good if you share the folloiwng details in the github issues or documents on the main page.
2. IPfire is supporting very good feature list and if you allow me i can make a list of all those feature set which can be incorporated into your fork with some efforts.
3. please have a look on this project page [https://github.com/FoobarOy/foomuuri] because it is using nftables instead of iptables and it will be helpful.

I am sorry for suggestions at this stage of the project.
24
How-To / Get involved!
« Last post by razwall on November 20, 2024, 01:51:46 PM »
Help me get this project off the ground!

How?

Register for an account on this forum.

Just get involved, ask questions, offer input/advice. Anything to help get the project to a point we can release code. i am only one person working on this at the moment.
Once we get some code released, we can allow members to checkout the code and begin growing a community of developers.

Thanks,
Bryan King
25
Requests / iptables -> netfilter
« Last post by razwall on November 20, 2024, 01:35:05 PM »
posting this request as a reminder for myself. upgrade to netfilter in place of iptables. Also, UFW
26
Dev Stuff / RazWall filesystem structure - updated 12/30/2024
« Last post by razwall on November 20, 2024, 01:15:00 PM »
Code: [Select]
/razwall
├── SimpleCurses.pm
├── backups
│   ├── access
│   │   ├── empty
│   │   ├── provider
│   │   ├── scope
│   │   ├── sessions.openvpn
│   │   ├── user
│   │   └── usergroup
│   ├── auth
│   │   ├── empty
│   │   ├── group
│   │   ├── guiuser
│   │   ├── settings
│   │   └── users
│   ├── avengine
│   ├── backup
│   │   ├── empty
│   │   ├── rpms
│   │   ├── settings
│   │   └── settings.old
│   ├── ca
│   │   └── empty
│   ├── clamav
│   │   └── empty
│   ├── console
│   │   └── empty
│   ├── dashboard
│   │   ├── config
│   │   └── empty
│   ├── dbus
│   ├── ddns
│   │   ├── config
│   │   ├── empty
│   │   └── ipcache
│   ├── dhcp
│   │   ├── custom.tpl
│   │   ├── empty
│   │   ├── fixleases
│   │   ├── settings
│   │   └── settings.old
│   ├── dnat
│   │   ├── config
│   │   └── empty
│   ├── dnsmasq
│   │   ├── empty
│   │   ├── hosts
│   │   ├── local_nameserver
│   │   └── settings
│   ├── download
│   │   └── timestamps
│   ├── emi
│   │   └── empty
│   ├── ethernet
│   │   ├── br0
│   │   ├── br1
│   │   ├── br2
│   │   ├── empty
│   │   ├── settings
│   │   ├── settings.old
│   │   ├── vlan_eth0
│   │   └── vlan_eth1
│   ├── eventlog
│   │   ├── config
│   │   └── settings
│   ├── factory
│   │   ├── factory.tar.gz
│   │   └── factory.tar.gz.meta
│   ├── fail2ban
│   ├── firewall
│   │   └── empty
│   ├── frox
│   │   └── empty
│   ├── gui
│   ├── helpers
│   ├── host
│   │   ├── empty
│   │   ├── settings
│   │   └── settings.old
│   ├── httpd
│   │   ├── empty
│   │   └── httpd_ports
│   ├── i18n
│   ├── icap
│   │   └── empty
│   ├── incoming
│   │   ├── config
│   │   └── empty
│   ├── inithooks
│   ├── jobsengine
│   │   ├── empty
│   │   └── endian.restartscripts
│   ├── kernel
│   │   └── empty
│   ├── logging
│   │   ├── default
│   │   ├── empty
│   │   ├── settings
│   │   └── settings.old
│   ├── lost+found
│   ├── main
│   │   ├── empty
│   │   ├── settings
│   │   └── settings.old
│   ├── modem
│   │   └── empty
│   ├── modemmanager
│   ├── monit
│   │   └── empty
│   ├── notifications
│   │   ├── config
│   │   └── settings
│   ├── ntop
│   │   └── settings
│   ├── opentsa
│   │   └── empty
│   ├── openvpn
│   │   ├── dh1024.pem
│   │   ├── empty
│   │   ├── server
│   │   ├── settings
│   │   └── settings.AD-auth
│   ├── openvpnclients
│   │   ├── empty
│   │   └── library2bryan
│   │       ├── ca.pem
│   │       ├── credentials
│   │       ├── data
│   │       ├── settings
│   │       └── settings.old
│   ├── outgoing
│   │   ├── config
│   │   ├── empty
│   │   ├── settings
│   │   └── settings.old
│   ├── p3scan
│   │   └── empty
│   ├── portfw
│   │   └── empty
│   ├── product
│   ├── proxy
│   │   ├── custom.tmpl
│   │   ├── empty
│   │   ├── ncsagroups
│   │   ├── ncsausers
│   │   ├── settings
│   │   ├── settings.old
│   │   ├── viewersettings
│   │   └── viewersettings.old
│   ├── pyzor
│   │   └── empty
│   ├── remote
│   │   ├── empty
│   │   ├── settings
│   │   └── settings.old
│   ├── routing
│   │   ├── config
│   │   └── empty
│   ├── samba
│   │   └── empty
│   ├── sarg
│   │   └── empty
│   ├── shaping
│   │   ├── classes
│   │   ├── config
│   │   ├── devices
│   │   └── empty
│   ├── smtpscan
│   │   ├── conf.d
│   │   ├── domains
│   │   └── empty
│   ├── snat
│   │   ├── config
│   │   └── empty
│   ├── snmp
│   │   └── empty
│   ├── snort
│   │   └── empty
│   ├── spamassassin
│   │   └── empty
│   ├── time
│   │   ├── empty
│   │   └── settings
│   ├── uplinks
│   │   ├── main
│   │   │   ├── active
│   │   │   ├── data
│   │   │   ├── defaultgateway
│   │   │   ├── settings
│   │   │   └── settings.old
│   │   └── uplink1
│   │       ├── active
│   │       ├── data
│   │       ├── settings
│   │       └── settings.old
│   ├── uplinksdaemon
│   │   └── empty
│   ├── urlfilter
│   │   ├── empty
│   │   └── settings
│   ├── vpn
│   │   ├── ca
│   │   │   ├── cacerts
│   │   │   │   └── cacert.pem
│   │   │   ├── certs
│   │   │   │   ├── 1433F2FBCB6D086B16397A6F9A0655E0.pem
│   │   │   │   ├── 24.111.67.50.p12
│   │   │   │   ├── 24.111.67.50cert.pem
│   │   │   │   ├── 24.111.67.50key.pem
│   │   │   │   ├── 2917003c.0
│   │   │   │   ├── 2b243561.0
│   │   │   │   ├── 2b243561.r0
│   │   │   │   ├── index.txt
│   │   │   │   ├── index.txt.old
│   │   │   │   ├── serial
│   │   │   │   └── serial.old
│   │   │   ├── certs.status
│   │   │   ├── crl.pem
│   │   │   ├── crls
│   │   │   │   └── ca.crl
│   │   │   └── private
│   │   │       └── cakey.pem
│   │   ├── empty
│   │   └── settings
│   ├── vpnauthentication
│   │   └── empty
│   ├── vpnfw
│   │   ├── config
│   │   ├── empty
│   │   └── settings
│   ├── webfilter
│   │   ├── empty
│   │   └── profiles
│   ├── wizard
│   │   ├── empty
│   │   ├── settings
│   │   └── settings.old
│   ├── xtaccess
│   │   ├── config
│   │   ├── empty
│   │   └── settings
│   └── zonefw
│       ├── config
│       ├── empty
│       └── settings
├── cache
│   ├── ethconfig
│   │   └── interfaces.json
│   ├── fontconfig
│   │   ├── 3830d5c3ddfd5cd38a049b759396e72e-le64.cache-3
│   │   ├── 94322f4d3cdf1bd54794b691285ca062-le64.cache-3
│   │   └── CACHEDIR.TAG
│   ├── ldconfig
│   │   └── aux-cache
│   ├── logwatch
│   ├── menu
│   │   ├── haslave.json
│   │   └── main.json
│   ├── rpm
│   ├── samba
│   ├── squid
│   ├── var.efw.vpn.ca.cacerts
│   ├── var.efw.vpn.ca.certs
│   ├── var.efw.vpn.ca.crls
│   ├── var.efw.vpn.clients
│   ├── var.efw.vpn.cores
│   └── var.efw.vpn.servers
├── certparams
├── config
│   ├── access
│   │   ├── empty
│   │   ├── provider
│   │   ├── scope
│   │   ├── sessions.openvpn
│   │   ├── user
│   │   └── usergroup
│   ├── auth
│   │   ├── empty
│   │   ├── group
│   │   ├── guiuser
│   │   ├── settings
│   │   └── users
│   ├── avengine
│   ├── backup
│   │   ├── empty
│   │   ├── rpms
│   │   ├── settings
│   │   └── settings.old
│   ├── ca
│   │   └── empty
│   ├── clamav
│   │   └── empty
│   ├── console
│   │   └── empty
│   ├── dashboard
│   │   ├── config
│   │   └── empty
│   ├── dbus
│   ├── ddns
│   │   ├── config
│   │   ├── empty
│   │   └── ipcache
│   ├── dhcp
│   │   ├── custom.tpl
│   │   ├── empty
│   │   ├── fixleases
│   │   ├── settings
│   │   └── settings.old
│   ├── dnat
│   │   ├── config
│   │   └── empty
│   ├── dnsmasq
│   │   ├── empty
│   │   ├── hosts
│   │   ├── local_nameserver
│   │   └── settings
│   ├── download
│   │   └── timestamps
│   ├── emi
│   │   └── empty
│   ├── ethernet
│   │   ├── br0
│   │   ├── br1
│   │   ├── br2
│   │   ├── empty
│   │   ├── settings
│   │   ├── settings.old
│   │   ├── vlan_eth0
│   │   └── vlan_eth1
│   ├── eventlog
│   │   ├── config
│   │   └── settings
│   ├── factory
│   │   ├── factory.tar.gz
│   │   └── factory.tar.gz.meta
│   ├── fail2ban
│   ├── firewall
│   │   └── empty
│   ├── frox
│   │   └── empty
│   ├── gui
│   ├── helpers
│   ├── host
│   │   ├── empty
│   │   ├── settings
│   │   └── settings.old
│   ├── httpd
│   │   ├── empty
│   │   └── httpd_ports
│   ├── i18n
│   ├── icap
│   │   └── empty
│   ├── incoming
│   │   ├── config
│   │   └── empty
│   ├── inithooks
│   ├── jobsengine
│   │   ├── empty
│   │   └── endian.restartscripts
│   ├── kernel
│   │   └── empty
│   ├── logging
│   │   ├── default
│   │   ├── empty
│   │   ├── settings
│   │   └── settings.old
│   ├── lost+found
│   ├── main
│   │   ├── empty
│   │   ├── settings
│   │   └── settings.old
│   ├── modem
│   │   └── empty
│   ├── modemmanager
│   ├── monit
│   │   └── empty
│   ├── notifications
│   │   ├── config
│   │   └── settings
│   ├── ntop
│   │   └── settings
│   ├── opentsa
│   │   └── empty
│   ├── openvpn
│   │   ├── dh1024.pem
│   │   ├── empty
│   │   ├── server
│   │   ├── settings
│   │   └── settings.AD-auth
│   ├── openvpnclients
│   │   ├── empty
│   │   └── library2bryan
│   │       ├── ca.pem
│   │       ├── credentials
│   │       ├── data
│   │       ├── settings
│   │       └── settings.old
│   ├── outgoing
│   │   ├── config
│   │   ├── empty
│   │   ├── settings
│   │   └── settings.old
│   ├── p3scan
│   │   └── empty
│   ├── portfw
│   │   └── empty
│   ├── product
│   ├── proxy
│   │   ├── custom.tmpl
│   │   ├── empty
│   │   ├── ncsagroups
│   │   ├── ncsausers
│   │   ├── settings
│   │   ├── settings.old
│   │   ├── viewersettings
│   │   └── viewersettings.old
│   ├── pyzor
│   │   └── empty
│   ├── remote
│   │   ├── empty
│   │   ├── settings
│   │   └── settings.old
│   ├── routing
│   │   ├── config
│   │   └── empty
│   ├── samba
│   │   └── empty
│   ├── sarg
│   │   └── empty
│   ├── shaping
│   │   ├── classes
│   │   ├── config
│   │   ├── devices
│   │   └── empty
│   ├── smtpscan
│   │   ├── conf.d
│   │   ├── domains
│   │   └── empty
│   ├── snat
│   │   ├── config
│   │   └── empty
│   ├── snmp
│   │   └── empty
│   ├── snort
│   │   └── empty
│   ├── spamassassin
│   │   └── empty
│   ├── time
│   │   ├── empty
│   │   └── settings
│   ├── uplinks
│   │   ├── main
│   │   │   ├── active
│   │   │   ├── data
│   │   │   ├── defaultgateway
│   │   │   ├── settings
│   │   │   └── settings.old
│   │   └── uplink1
│   │       ├── active
│   │       ├── data
│   │       ├── settings
│   │       └── settings.old
│   ├── uplinksdaemon
│   │   └── empty
│   ├── urlfilter
│   │   ├── empty
│   │   └── settings
│   ├── vpn
│   │   ├── ca
│   │   │   ├── cacerts
│   │   │   │   └── cacert.pem
│   │   │   ├── certs
│   │   │   │   ├── 1433F2FBCB6D086B16397A6F9A0655E0.pem
│   │   │   │   ├── 24.111.67.50.p12
│   │   │   │   ├── 24.111.67.50cert.pem
│   │   │   │   ├── 24.111.67.50key.pem
│   │   │   │   ├── 2917003c.0
│   │   │   │   ├── 2b243561.0
│   │   │   │   ├── 2b243561.r0
│   │   │   │   ├── index.txt
│   │   │   │   ├── index.txt.old
│   │   │   │   ├── serial
│   │   │   │   └── serial.old
│   │   │   ├── certs.status
│   │   │   ├── crl.pem
│   │   │   ├── crls
│   │   │   │   └── ca.crl
│   │   │   └── private
│   │   │       └── cakey.pem
│   │   ├── empty
│   │   └── settings
│   ├── vpnauthentication
│   │   └── empty
│   ├── vpnfw
│   │   ├── config
│   │   ├── empty
│   │   └── settings
│   ├── webfilter
│   │   ├── empty
│   │   └── profiles
│   ├── wizard
│   │   ├── empty
│   │   ├── settings
│   │   └── settings.old
│   ├── xtaccess
│   │   ├── config
│   │   ├── empty
│   │   └── settings
│   └── zonefw
│       ├── config
│       ├── empty
│       └── settings
├── defaults
│   ├── access
│   │   ├── provider.config
│   │   └── scope.config
│   ├── auth
│   │   ├── default
│   │   │   ├── settings
│   │   │   └── users
│   │   ├── guiprofile.config
│   │   └── guiuser.config
│   ├── avengine
│   │   └── default
│   │       └── settings
│   ├── backup
│   │   ├── default
│   │   │   └── settings
│   │   ├── exclude.system
│   │   ├── include.dumps
│   │   ├── include.hwdata
│   │   ├── include.logarchives
│   │   ├── include.logs
│   │   ├── include.spamassassin-dumps
│   │   └── include.system
│   ├── ca
│   │   └── default
│   │       └── settings
│   ├── clamav
│   │   └── default
│   │       └── settings
│   ├── console
│   │   ├── default
│   │   │   └── settings
│   │   ├── menu.config
│   │   └── menu.default
│   ├── dashboard
│   │   ├── config.config
│   │   └── config.default
│   ├── dbus
│   ├── ddns
│   │   └── config.config
│   ├── dhcp
│   │   ├── default
│   │   │   └── settings
│   │   └── fixleases.config
│   ├── dnat
│   │   ├── config.config
│   │   └── services
│   ├── dnsmasq
│   │   ├── default
│   │   │   └── settings
│   │   ├── hosts.config
│   │   ├── httpd_ports.base
│   │   ├── httpd_ports.config
│   │   ├── local_nameserver.config
│   │   ├── system_hosts.config
│   │   └── system_local_nameserver.config
│   ├── emi
│   │   └── default
│   │       └── settings
│   ├── ethernet
│   │   └── default
│   │       ├── br0
│   │       ├── networkselectorsettings
│   │       └── settings
│   ├── fail2ban
│   │   └── default
│   │       └── settings
│   ├── firewall
│   │   └── default
│   │       └── settings
│   ├── frox
│   │   └── default
│   │       └── settings
│   ├── gui
│   ├── helpers
│   │   └── default
│   │       └── settings
│   ├── host
│   │   └── default
│   │       └── settings
│   ├── httpd
│   │   ├── default
│   │   │   └── settings
│   │   ├── httpd_ports.base
│   │   └── httpd_ports.config
│   ├── i18n
│   │   ├── ar
│   │   ├── ca
│   │   ├── da
│   │   ├── de
│   │   ├── el
│   │   ├── en
│   │   ├── es
│   │   ├── fi
│   │   ├── fr
│   │   ├── gl
│   │   ├── he
│   │   ├── hr
│   │   ├── hu
│   │   ├── id
│   │   ├── it
│   │   ├── ja
│   │   ├── nb
│   │   ├── nl
│   │   ├── pl
│   │   ├── pt
│   │   ├── pt_BR
│   │   ├── ro
│   │   ├── ru
│   │   ├── sk
│   │   ├── sl
│   │   ├── sr
│   │   ├── sv
│   │   ├── tr
│   │   ├── vi
│   │   └── zh_CN
│   ├── icap
│   │   └── default
│   │       └── settings
│   ├── incoming
│   │   ├── config.config
│   │   ├── default
│   │   │   └── settings
│   │   └── services
│   ├── jobsengine
│   │   └── default
│   │       └── settings
│   ├── kernel
│   │   └── default
│   │       ├── mapping
│   │       └── settings
│   ├── logging
│   │   └── default
│   │       ├── live_settings
│   │       └── settings
│   ├── main
│   │   └── default
│   │       └── settings
│   ├── modem
│   │   └── default
│   │       └── settings
│   ├── modemmanager
│   ├── monit
│   │   └── default
│   │       └── settings
│   ├── notifications
│   │   └── default
│   │       ├── config
│   │       └── settings
│   ├── ntop
│   │   └── default
│   │       └── settings
│   ├── opentsa
│   │   └── default
│   │       └── settings
│   ├── openvpn
│   │   ├── default
│   │   │   └── settings
│   │   ├── server.config
│   │   └── server.default
│   ├── openvpnclients
│   │   └── default
│   │       └── settings
│   ├── outgoing
│   │   ├── config.config
│   │   ├── config.default
│   │   ├── default
│   │   │   └── settings
│   │   └── services
│   ├── p3scan
│   │   └── default
│   │       └── settings
│   ├── portfw
│   ├── product
│   │   └── default
│   │       └── settings.community-x64
│   ├── proxy
│   │   ├── default
│   │   │   ├── settings
│   │   │   └── useragents
│   │   ├── policyrules.config
│   │   └── policyrules.default
│   ├── pyzor
│   │   └── default
│   │       └── settings
│   ├── queuefw
│   │   └── config.config
│   ├── redirect
│   │   └── config.config
│   ├── remote
│   │   └── default
│   │       └── settings
│   ├── routing
│   │   ├── config.config
│   │   └── services
│   ├── samba
│   │   └── default
│   │       └── settings
│   ├── sarg
│   │   └── default
│   │       └── settings
│   ├── shaping
│   │   ├── classes.config
│   │   ├── config.config
│   │   └── devices.config
│   ├── smtpscan
│   │   ├── default
│   │   │   ├── extensions
│   │   │   ├── rbl
│   │   │   └── settings
│   │   ├── domain.config
│   │   └── domainrouting.config
│   ├── snat
│   │   ├── config.config
│   │   └── services
│   ├── snmp
│   │   └── default
│   │       └── settings
│   ├── snort
│   │   ├── default
│   │   │   ├── exceptions
│   │   │   ├── policies
│   │   │   └── settings
│   │   ├── exceptions.config
│   │   └── policies.config
│   ├── spamassassin
│   │   └── default
│   │       └── settings
│   ├── time
│   │   └── default
│   │       ├── settings
│   │       └── timezone_country_mapping
│   ├── uplinks
│   ├── uplinksdaemon
│   │   └── default
│   │       └── settings
│   ├── urlfilter
│   │   ├── blacklists.config
│   │   ├── blacklists.default
│   │   └── default
│   │       └── settings
│   ├── version
│   │   └── default
│   │       └── settings
│   ├── virtualization
│   │   └── smbconfig.config
│   ├── vpn
│   │   ├── config.config
│   │   └── default
│   │       └── settings
│   ├── vpnauthentication
│   ├── vpnfw
│   │   ├── config.config
│   │   ├── default
│   │   │   └── settings
│   │   └── services
│   ├── webfilter
│   │   ├── default
│   │   │   ├── settings
│   │   │   └── settings.urlfilter
│   │   ├── profiles.config
│   │   └── profiles.default
│   ├── wizard
│   │   └── default
│   │       ├── settings
│   │       └── settings.community-x64
│   ├── xtaccess
│   │   ├── config.config
│   │   ├── config.default
│   │   ├── default
│   │   │   └── settings
│   │   └── services
│   └── zonefw
│       ├── config.config
│       ├── config.default
│       ├── default
│       │   └── settings
│       └── services
├── dialog.sh
├── firewall
│   ├── Makefile
│   ├── firewall.conf
│   ├── fwfire.sh
│   ├── fwlog2rule.pl
│   ├── helpers
│   │   ├── apple-ios.conf
│   │   ├── avg.conf
│   │   ├── dhcp.conf
│   │   ├── dhcpv6.conf
│   │   ├── dns.conf
│   │   ├── google-play.conf
│   │   ├── gotomeeting.conf
│   │   ├── icmp.conf
│   │   ├── icmpv6.conf
│   │   ├── l2tp.conf
│   │   ├── mail.conf
│   │   ├── nfs.conf
│   │   ├── pptp.conf
│   │   ├── samba.conf
│   │   ├── snmp.conf
│   │   └── sql.conf
│   ├── interfaces.conf
│   ├── modules
│   │   ├── Basename.pm
│   │   ├── ConfigSimple.pm
│   │   └── OptLong.pm
│   ├── post.d
│   ├── pre.d
│   ├── razwall.pl
│   ├── razwall.pl.OLD
│   ├── rules.conf
│   ├── rules.conf.simple
│   └── rules.conf.standalone
├── gui
│   ├── core
│   │   └── widgets
│   │       ├── accordion.pltmpl
│   │       ├── bubble.pltmpl
│   │       ├── bubble_apply.pltmpl
│   │       ├── button.pltmpl
│   │       ├── category.pltmpl
│   │       ├── checkbox.pltmpl
│   │       ├── editorbox.pltmpl
│   │       ├── empty.pltmpl
│   │       ├── form.pltmpl
│   │       ├── listtable.pltmpl
│   │       ├── main.pltmpl
│   │       ├── multiselect.pltmpl
│   │       ├── password.pltmpl
│   │       ├── radiobutton.pltmpl
│   │       ├── save.pltmpl
│   │       ├── saveform.pltmpl
│   │       ├── select.pltmpl
│   │       ├── slider.pltmpl
│   │       ├── subsection.pltmpl
│   │       ├── switch.pltmpl
│   │       ├── table.pltmpl
│   │       ├── text.pltmpl
│   │       ├── textarea.pltmpl
│   │       └── zonestatus.pltmpl
│   └── proxy
│       └── widgets
│           └── timeframe.pltmpl
├── helpers
│   ├── apple-ios.conf
│   ├── avg.conf
│   ├── dhcp.conf
│   ├── dhcpv6.conf
│   ├── dns.conf
│   ├── gotomeeting.conf
│   ├── icmp.conf
│   ├── icmpv6.conf
│   ├── mail.conf
│   ├── nfs.conf
│   ├── pptp.conf
│   ├── samba.conf
│   ├── snmp.conf
│   └── sql.conf
├── razi.pl
├── scripts
│   └── ethconfig.pl
└── web
    ├── certs
    │   ├── OLD
    │   │   ├── dh4096.pem
    │   │   ├── server.crt
    │   │   ├── server.csr
    │   │   └── server.key
    │   ├── server.crt
    │   ├── server.csr
    │   └── server.key
    ├── cgi-bin
    │   ├── OLD
    │   │   ├── EFWConfig.pm
    │   │   ├── core.pl
    │   │   ├── efw-register.cgi
    │   │   ├── endian_locale.pm
    │   │   ├── endianclamav.pl
    │   │   ├── endianinc.pl
    │   │   ├── ethconfig.pl
    │   │   ├── header.pl.GOOD
    │   │   ├── header23.pl
    │   │   ├── ifacetools.pl
    │   │   ├── index.cgi.py
    │   │   ├── mm-countries-json.cgi.py
    │   │   ├── mm-modems-json.cgi.py
    │   │   ├── netwizard_tools.pl
    │   │   ├── redtools.pl
    │   │   ├── save_settings-ajax.cgi.py
    │   │   └── uplinks-status.cgi.py
    │   ├── alteration_monitor.pl
    │   ├── backup-lib.cgi
    │   ├── backup.cgi
    │   ├── backupschedule.cgi
    │   ├── changepw.cgi
    │   ├── chpasswd.cgi
    │   ├── clamav.cgi
    │   ├── collection.cgi
    │   ├── connections.cgi
    │   ├── core_widgets.pm
    │   ├── dash.pl
    │   ├── dashboard.cgi
    │   ├── ddns.cgi
    │   ├── dial.cgi
    │   ├── dnat.cgi
    │   ├── ethconfig.pl
    │   ├── firewall.pl
    │   ├── frox.cgi
    │   ├── fwlog2rule.pl
    │   ├── graphs.cgi
    │   ├── gui.cgi
    │   ├── header.pl
    │   ├── header23.pl
    │   ├── incoming.cgi
    │   ├── ipinfo.cgi
    │   ├── lever_analog.pl
    │   ├── lever_dhcp.pl
    │   ├── lever_modem.pl
    │   ├── lever_none.pl
    │   ├── lever_pppoe.pl
    │   ├── lever_skel.pl
    │   ├── lever_static.pl
    │   ├── lever_stealth.pl
    │   ├── logout.cgi
    │   ├── logs_clamav.cgi
    │   ├── logs_config.cgi
    │   ├── logs_firewall.cgi
    │   ├── logs_ids.cgi
    │   ├── logs_live-ajax.cgi
    │   ├── logs_live.cgi
    │   ├── logs_live_list.cgi
    │   ├── logs_log.cgi
    │   ├── logs_openvpn.cgi
    │   ├── logs_proxy.cgi
    │   ├── logs_smtp.cgi
    │   ├── logs_summary.cgi
    │   ├── mailgraph.cgi
    │   ├── mailqueue.cgi
    │   ├── menu-json.cgi
    │   ├── menu-openvpnclient.pl
    │   ├── menu-salern.pl
    │   ├── mm-providers-json.cgi.sh
    │   ├── modemtools.pl
    │   ├── monit.cgi
    │   ├── netstatus.cgi
    │   ├── netwiz.cgi
    │   ├── netwizard.cgi
    │   ├── opentsa.pl
    │   ├── openvpnclient.cgi
    │   ├── outgoingfw.cgi
    │   ├── p3scan.cgi
    │   ├── passwd-lib.pl
    │   ├── passwordDialogue-admin.pl
    │   ├── passwordDialogue-root.pl
    │   ├── policy_routing.cgi
    │   ├── proxy.pl
    │   ├── proxyauth.cgi
    │   ├── proxyconfig.cgi
    │   ├── proxygraphs.cgi
    │   ├── proxygroup.cgi
    │   ├── proxypolicy.cgi
    │   ├── proxyuser.cgi
    │   ├── raz_locale.pm
    │   ├── razclamav.pl
    │   ├── razconfig.pm
    │   ├── razinc.pl
    │   ├── routing.cgi
    │   ├── routing.pl
    │   ├── salearn.cgi
    │   ├── sarg.cgi
    │   ├── setup
    │   │   ├── step1
    │   │   │   └── chdefaultpw.cgi
    │   │   ├── step2
    │   │   │   ├── ethconfig.pl
    │   │   │   ├── ifacetools.pl
    │   │   │   ├── lever_analog.pl
    │   │   │   ├── lever_dhcp.pl
    │   │   │   ├── lever_modem.pl
    │   │   │   ├── lever_none.pl
    │   │   │   ├── lever_pppoe.pl
    │   │   │   ├── lever_skel.pl
    │   │   │   ├── lever_static.pl
    │   │   │   ├── lever_stealth.pl
    │   │   │   ├── modemtools.pl
    │   │   │   ├── netwiz.cgi
    │   │   │   ├── netwizard_tools.pl
    │   │   │   ├── redtools.pl
    │   │   │   ├── strings.pl
    │   │   │   ├── wantools.pl
    │   │   │   └── wizard.cgi
    │   │   └── step3
    │   ├── shutdown.cgi
    │   ├── smtpadvanced.cgi
    │   ├── smtpconfig.cgi
    │   ├── smtpdomains.cgi
    │   ├── smtplists.cgi
    │   ├── smtprouting.cgi
    │   ├── smtpscan.pl
    │   ├── snat.cgi
    │   ├── snmp.cgi
    │   ├── socket.pl
    │   ├── spamassassin.cgi
    │   ├── status-amavisd.pl
    │   ├── status-clamd.pl
    │   ├── status-dhcp.pl
    │   ├── status-frox.pl
    │   ├── status-http.pl
    │   ├── status-icap.pl
    │   ├── status-ipsec.pl
    │   ├── status-ntp.pl
    │   ├── status-p3scan.pl
    │   ├── status-snort.pl
    │   ├── status-spamd.pl
    │   ├── status-squid.pl
    │   ├── status-vpn.pl
    │   ├── status.cgi
    │   ├── strings.pl
    │   ├── template.cgi
    │   ├── templates.pl
    │   ├── time.cgi
    │   ├── uplinkType-analog.pl
    │   ├── uplinkType-dhcp.pl
    │   ├── uplinkType-gateway.pl
    │   ├── uplinkType-modem.pl
    │   ├── uplinkType-pppoe.pl
    │   ├── uplinkType-pptp.pl
    │   ├── uplinkType-static.pl
    │   ├── uplinkType-stealth.pl
    │   ├── uplinkeditor.cgi
    │   ├── uplinks-status.cgi
    │   ├── vlanconfig.cgi
    │   ├── vpnfw.cgi
    │   ├── wantools.pl
    │   ├── webshell.pl
    │   ├── xtaccess.cgi
    │   └── zonefw.cgi
    ├── html
    │   ├── css
    │   │   ├── SocketStatus.css
    │   │   ├── autorefreshwrapper.css
    │   │   ├── closeablecontainer.css
    │   │   ├── container.css
    │   │   ├── dark.css
    │   │   ├── dashboardcontainer.css
    │   │   ├── datagrid.css
    │   │   ├── draganddropsort.css
    │   │   ├── fieldselector.css
    │   │   ├── gallery.css
    │   │   ├── global.css
    │   │   ├── grideditor.css
    │   │   ├── hardwareinformationcontent.css
    │   │   ├── input_lock.css
    │   │   ├── light.css
    │   │   ├── lists.css
    │   │   ├── map
    │   │   │   ├── Control.NewWindow.css
    │   │   │   └── multilevellayercontrol.css
    │   │   ├── network_selector.css
    │   │   ├── networkinformationcontent.css
    │   │   ├── notification.css
    │   │   ├── overlaycontainer.css
    │   │   ├── plugin.css
    │   │   ├── search.css
    │   │   ├── separator.css
    │   │   ├── serviceinformationcontent.css
    │   │   ├── serviceselector.css
    │   │   ├── settingseditor.css
    │   │   ├── signaturesinformationcontent.css
    │   │   ├── simpletree.css
    │   │   ├── smoothie.css
    │   │   ├── standalone_wizard.css
    │   │   ├── switch.css
    │   │   ├── systeminformationcontent.css
    │   │   ├── tabcontainer.css
    │   │   ├── tabs.css
    │   │   ├── uplinkinformationcontent.css
    │   │   ├── uploadfield.css
    │   │   ├── vue-components
    │   │   │   ├── dual-listbox.css
    │   │   │   ├── editable-grid.css
    │   │   │   └── labelled-switch-button.css
    │   │   ├── wizard.css
    │   │   └── wizard_settingseditor.css
    │   ├── dnsmasq_blackhole
    │   │   └── index.cgi
    │   ├── errors
    │   │   ├── 404error.cgi
    │   │   ├── 500error.cgi
    │   │   └── 502error.cgi
    │   ├── favicon.ico
    │   ├── graphs
    │   ├── images
    │   │   ├── 200glow.png
    │   │   ├── PC-OFF.png
    │   │   ├── PC-ON.png
    │   │   ├── R.png
    │   │   ├── R2.png
    │   │   ├── RazDC.png
    │   │   ├── RazDC4-2021-black-inverted.png
    │   │   ├── RazDC4-2021-black.png
    │   │   ├── RazDC4-2021-medium-white.png
    │   │   ├── RazDC4-2021-medium.png
    │   │   ├── RazDC4-2021-negblack-round.png
    │   │   ├── RazDC4-2021-negwhite-round.png
    │   │   ├── RazDC4-2021-white-inverted.png
    │   │   ├── RazDC4-2021-white.png
    │   │   ├── RazDC4-2021.png
    │   │   ├── accept.png
    │   │   ├── action_accept.png
    │   │   ├── action_actions.png
    │   │   ├── action_add.png
    │   │   ├── action_alert.png
    │   │   ├── action_archive_action.png
    │   │   ├── action_block.png
    │   │   ├── action_clear.gif
    │   │   ├── action_connected.png
    │   │   ├── action_connection_test.png
    │   │   ├── action_delete.png
    │   │   ├── action_delete_mail.png
    │   │   ├── action_deny.png
    │   │   ├── action_details.png
    │   │   ├── action_disconnected.png
    │   │   ├── action_download.png
    │   │   ├── action_download_encrypted.png
    │   │   ├── action_drop.png
    │   │   ├── action_edit.png
    │   │   ├── action_enable_off.png
    │   │   ├── action_enable_on.png
    │   │   ├── action_filter.png
    │   │   ├── action_forward.png
    │   │   ├── action_help.png
    │   │   ├── action_mail_disabled.png
    │   │   ├── action_mail_enabled.png
    │   │   ├── action_map.png
    │   │   ├── action_moveDown.png
    │   │   ├── action_moveUp.png
    │   │   ├── action_partial.png
    │   │   ├── action_reconnect.png
    │   │   ├── action_reject.png
    │   │   ├── action_release_mail.png
    │   │   ├── action_reload.png
    │   │   ├── action_view_logs.png
    │   │   ├── action_view_mail.png
    │   │   ├── active.png
    │   │   ├── add.png
    │   │   ├── attachment.png
    │   │   ├── background.png
    │   │   ├── bigglow.png
    │   │   ├── blob.png
    │   │   ├── btnglow.png
    │   │   ├── bubble.png
    │   │   ├── bubble_green.png
    │   │   ├── bubble_green_content.png
    │   │   ├── bubble_green_sign.png
    │   │   ├── bubble_red.png
    │   │   ├── bubble_red_bottom.png
    │   │   ├── bubble_red_content.png
    │   │   ├── bubble_red_sign.png
    │   │   ├── bubble_yellow.png
    │   │   ├── bubble_yellow_bottom.png
    │   │   ├── bubble_yellow_content.png
    │   │   ├── bubble_yellow_sign.png
    │   │   ├── cam.png
    │   │   ├── chart_16.png
    │   │   ├── chat.png
    │   │   ├── chosen_sprite.png
    │   │   ├── chosen_sprite_2x.png
    │   │   ├── clear.gif
    │   │   ├── close_16.png
    │   │   ├── closeablecontainer_header_close.png
    │   │   ├── closeablecontainer_header_open.png
    │   │   ├── closed.gif
    │   │   ├── closed.png
    │   │   ├── collapse.png
    │   │   ├── connect_16.png
    │   │   ├── connect_32.png
    │   │   ├── console.png
    │   │   ├── control.png
    │   │   ├── dashboard.png
    │   │   ├── database_add_16.png
    │   │   ├── database_add_32.png
    │   │   ├── delete.png
    │   │   ├── delete_encrypted.png
    │   │   ├── deny.png
    │   │   ├── dialog-warning.png
    │   │   ├── down.png
    │   │   ├── download.png
    │   │   ├── download_16.png
    │   │   ├── download_encrypted.png
    │   │   ├── dragresize-bl.png
    │   │   ├── dragresize-bm.png
    │   │   ├── dragresize-br.png
    │   │   ├── dragresize-ml.png
    │   │   ├── dragresize-mr.png
    │   │   ├── dragresize-tl.png
    │   │   ├── dragresize-tm.png
    │   │   ├── dragresize-tr.png
    │   │   ├── duplicate.png
    │   │   ├── edit.png
    │   │   ├── editoradd.png
    │   │   ├── error_splash.png
    │   │   ├── exit.png
    │   │   ├── expand.png
    │   │   ├── export_16.png
    │   │   ├── firewall_accept.png
    │   │   ├── firewall_drop.png
    │   │   ├── firewall_ips.png
    │   │   ├── firewall_reject.png
    │   │   ├── floppy.png
    │   │   ├── folder_add_16.png
    │   │   ├── folder_add_32.png
    │   │   ├── folder_close_16.png
    │   │   ├── folder_close_32.png
    │   │   ├── forward.png
    │   │   ├── g.png
    │   │   ├── gallery_close.png
    │   │   ├── glass3.png
    │   │   ├── gritter-close-ie6.gif
    │   │   ├── gritter-long.png
    │   │   ├── gritter.png
    │   │   ├── group_16.png
    │   │   ├── header.png
    │   │   ├── header_accordion.png
    │   │   ├── header_content.png
    │   │   ├── header_subtop.png
    │   │   ├── help.png
    │   │   ├── import_16.png
    │   │   ├── inactive.png
    │   │   ├── indicator.gif
    │   │   ├── info.png
    │   │   ├── language2.png
    │   │   ├── left.png
    │   │   ├── linkna.png
    │   │   ├── linknotok.png
    │   │   ├── linkok.png
    │   │   ├── list.gif
    │   │   ├── list3.png
    │   │   ├── loading-small.gif
    │   │   ├── loading-sprite.png
    │   │   ├── loading.gif
    │   │   ├── logo_endian.png
    │   │   ├── logo_endian.png.ORIG
    │   │   ├── logout.png
    │   │   ├── logs.png
    │   │   ├── m.png
    │   │   ├── m2.png
    │   │   ├── main.png
    │   │   ├── map
    │   │   │   ├── icon-newwindow-2x.png
    │   │   │   └── icon-newwindow.png
    │   │   ├── map.png
    │   │   ├── menu_left_selected.png
    │   │   ├── menu_top_selected.png
    │   │   ├── mobile.png
    │   │   ├── mute.png
    │   │   ├── network.png
    │   │   ├── notfound_splash.png
    │   │   ├── notification-container.png
    │   │   ├── notification-indicator.gif
    │   │   ├── notification-overlay.png
    │   │   ├── notification_error.png
    │   │   ├── notification_error_bottom.png
    │   │   ├── notification_error_content.png
    │   │   ├── notification_error_sign.png
    │   │   ├── notification_important.png
    │   │   ├── notification_info.png
    │   │   ├── notification_info_bottom.png
    │   │   ├── notification_info_content.png
    │   │   ├── notification_info_sign.png
    │   │   ├── notify.png
    │   │   ├── null.gif
    │   │   ├── null.png
    │   │   ├── off.png
    │   │   ├── on.png
    │   │   ├── open.gif
    │   │   ├── open.png
    │   │   ├── os_microsoft_windows128x128.png
    │   │   ├── os_microsoft_windows16x16.png
    │   │   ├── os_microsoft_windows24x24.png
    │   │   ├── os_microsoft_windows32x32.png
    │   │   ├── os_microsoft_windows64x64.png
    │   │   ├── os_osx128x128.png
    │   │   ├── os_osx16x16.png
    │   │   ├── os_osx24x24.png
    │   │   ├── os_osx32x32.png
    │   │   ├── os_osx64x64.png
    │   │   ├── overlay.png
    │   │   ├── palette.gif
    │   │   ├── partial.png
    │   │   ├── power.png
    │   │   ├── raz-edit.png
    │   │   ├── reboot_splash.png
    │   │   ├── reconnect.png
    │   │   ├── refresh.png
    │   │   ├── refresh_16.png
    │   │   ├── reload.png
    │   │   ├── remote.png
    │   │   ├── reset.png
    │   │   ├── restart_splash.png
    │   │   ├── return.png
    │   │   ├── right.png
    │   │   ├── rulesgrid_back.png
    │   │   ├── screen_32.png
    │   │   ├── screen_off_16.png
    │   │   ├── screen_on_16.png
    │   │   ├── search.png
    │   │   ├── server.png
    │   │   ├── sflogo.png
    │   │   ├── slider_max.png
    │   │   ├── slider_min.png
    │   │   ├── sound-off.png
    │   │   ├── sound-on.png
    │   │   ├── star_16.png
    │   │   ├── stock_down-16.png
    │   │   ├── stock_ok.png
    │   │   ├── stock_reject.png
    │   │   ├── stock_stop.png
    │   │   ├── stock_up-16.png
    │   │   ├── switch-off.png
    │   │   ├── switch-on.png
    │   │   ├── switch_off.png
    │   │   ├── switch_on.png
    │   │   ├── system.png
    │   │   ├── test_connection.png
    │   │   ├── theme.png
    │   │   ├── trash.png
    │   │   ├── unlock.png
    │   │   ├── unmute.png
    │   │   ├── up.png
    │   │   ├── user_16.png
    │   │   ├── user_32.png
    │   │   ├── user_add_16.png
    │   │   ├── users.png
    │   │   ├── wait-small.gif
    │   │   ├── wait.gif
    │   │   ├── wol.png
    │   │   ├── x.png
    │   │   └── x2.png
    │   ├── include
    │   │   ├── Mini
    │   │   │   ├── overlib_anchor_mini.js
    │   │   │   ├── overlib_centerpopup_mini.js
    │   │   │   ├── overlib_crossframe_mini.js
    │   │   │   ├── overlib_csstyle_mini.js
    │   │   │   ├── overlib_debug_mini.js
    │   │   │   ├── overlib_exclusive_mini.js
    │   │   │   ├── overlib_followscroll_mini.js
    │   │   │   ├── overlib_hideform_mini.js
    │   │   │   ├── overlib_mini.js
    │   │   │   ├── overlib_setonoff_mini.js
    │   │   │   └── overlib_shadow_mini.js
    │   │   ├── accordion.js
    │   │   ├── ajax.js
    │   │   ├── base32.min.js
    │   │   ├── branding.css
    │   │   ├── calendar.css
    │   │   ├── category.js
    │   │   ├── content.css
    │   │   ├── cultures
    │   │   │   ├── kendo.culture.af-ZA.min.js
    │   │   │   ├── kendo.culture.af.min.js
    │   │   │   ├── kendo.culture.am-ET.min.js
    │   │   │   ├── kendo.culture.am.min.js
    │   │   │   ├── kendo.culture.ar-AE.min.js
    │   │   │   ├── kendo.culture.ar-BH.min.js
    │   │   │   ├── kendo.culture.ar-DZ.min.js
    │   │   │   ├── kendo.culture.ar-EG.min.js
    │   │   │   ├── kendo.culture.ar-IQ.min.js
    │   │   │   ├── kendo.culture.ar-JO.min.js
    │   │   │   ├── kendo.culture.ar-KW.min.js
    │   │   │   ├── kendo.culture.ar-LB.min.js
    │   │   │   ├── kendo.culture.ar-LY.min.js
    │   │   │   ├── kendo.culture.ar-MA.min.js
    │   │   │   ├── kendo.culture.ar-OM.min.js
    │   │   │   ├── kendo.culture.ar-QA.min.js
    │   │   │   ├── kendo.culture.ar-SA.min.js
    │   │   │   ├── kendo.culture.ar-SY.min.js
    │   │   │   ├── kendo.culture.ar-TN.min.js
    │   │   │   ├── kendo.culture.ar-YE.min.js
    │   │   │   ├── kendo.culture.ar.min.js
    │   │   │   ├── kendo.culture.arn-CL.min.js
    │   │   │   ├── kendo.culture.arn.min.js
    │   │   │   ├── kendo.culture.as-IN.min.js
    │   │   │   ├── kendo.culture.as.min.js
    │   │   │   ├── kendo.culture.az-Cyrl-AZ.min.js
    │   │   │   ├── kendo.culture.az-Cyrl.min.js
    │   │   │   ├── kendo.culture.az-Latn-AZ.min.js
    │   │   │   ├── kendo.culture.az-Latn.min.js
    │   │   │   ├── kendo.culture.az.min.js
    │   │   │   ├── kendo.culture.ba-RU.min.js
    │   │   │   ├── kendo.culture.ba.min.js
    │   │   │   ├── kendo.culture.be-BY.min.js
    │   │   │   ├── kendo.culture.be.min.js
    │   │   │   ├── kendo.culture.bg-BG.min.js
    │   │   │   ├── kendo.culture.bg.min.js
    │   │   │   ├── kendo.culture.bn-BD.min.js
    │   │   │   ├── kendo.culture.bn-IN.min.js
    │   │   │   ├── kendo.culture.bn.min.js
    │   │   │   ├── kendo.culture.bo-CN.min.js
    │   │   │   ├── kendo.culture.bo.min.js
    │   │   │   ├── kendo.culture.br-FR.min.js
    │   │   │   ├── kendo.culture.br.min.js
    │   │   │   ├── kendo.culture.bs-Cyrl-BA.min.js
    │   │   │   ├── kendo.culture.bs-Cyrl.min.js
    │   │   │   ├── kendo.culture.bs-Latn-BA.min.js
    │   │   │   ├── kendo.culture.bs-Latn.min.js
    │   │   │   ├── kendo.culture.bs.min.js
    │   │   │   ├── kendo.culture.ca-ES.min.js
    │   │   │   ├── kendo.culture.ca.min.js
    │   │   │   ├── kendo.culture.co-FR.min.js
    │   │   │   ├── kendo.culture.co.min.js
    │   │   │   ├── kendo.culture.cs-CZ.min.js
    │   │   │   ├── kendo.culture.cs.min.js
    │   │   │   ├── kendo.culture.cy-GB.min.js
    │   │   │   ├── kendo.culture.cy.min.js
    │   │   │   ├── kendo.culture.da-DK.min.js
    │   │   │   ├── kendo.culture.da.min.js
    │   │   │   ├── kendo.culture.de-AT.min.js
    │   │   │   ├── kendo.culture.de-CH.min.js
    │   │   │   ├── kendo.culture.de-DE.min.js
    │   │   │   ├── kendo.culture.de-LI.min.js
    │   │   │   ├── kendo.culture.de-LU.min.js
    │   │   │   ├── kendo.culture.de.min.js
    │   │   │   ├── kendo.culture.dsb-DE.min.js
    │   │   │   ├── kendo.culture.dsb.min.js
    │   │   │   ├── kendo.culture.dv-MV.min.js
    │   │   │   ├── kendo.culture.dv.min.js
    │   │   │   ├── kendo.culture.el-GR.min.js
    │   │   │   ├── kendo.culture.el.min.js
    │   │   │   ├── kendo.culture.en-029.min.js
    │   │   │   ├── kendo.culture.en-AU.min.js
    │   │   │   ├── kendo.culture.en-BZ.min.js
    │   │   │   ├── kendo.culture.en-CA.min.js
    │   │   │   ├── kendo.culture.en-GB.min.js
    │   │   │   ├── kendo.culture.en-IE.min.js
    │   │   │   ├── kendo.culture.en-IN.min.js
    │   │   │   ├── kendo.culture.en-JM.min.js
    │   │   │   ├── kendo.culture.en-MY.min.js
    │   │   │   ├── kendo.culture.en-NZ.min.js
    │   │   │   ├── kendo.culture.en-PH.min.js
    │   │   │   ├── kendo.culture.en-SG.min.js
    │   │   │   ├── kendo.culture.en-TT.min.js
    │   │   │   ├── kendo.culture.en-US.min.js
    │   │   │   ├── kendo.culture.en-ZA.min.js
    │   │   │   ├── kendo.culture.en-ZW.min.js
    │   │   │   ├── kendo.culture.en.min.js
    │   │   │   ├── kendo.culture.es-AR.min.js
    │   │   │   ├── kendo.culture.es-BO.min.js
    │   │   │   ├── kendo.culture.es-CL.min.js
    │   │   │   ├── kendo.culture.es-CO.min.js
    │   │   │   ├── kendo.culture.es-CR.min.js
    │   │   │   ├── kendo.culture.es-DO.min.js
    │   │   │   ├── kendo.culture.es-EC.min.js
    │   │   │   ├── kendo.culture.es-ES.min.js
    │   │   │   ├── kendo.culture.es-GT.min.js
    │   │   │   ├── kendo.culture.es-HN.min.js
    │   │   │   ├── kendo.culture.es-MX.min.js
    │   │   │   ├── kendo.culture.es-NI.min.js
    │   │   │   ├── kendo.culture.es-PA.min.js
    │   │   │   ├── kendo.culture.es-PE.min.js
    │   │   │   ├── kendo.culture.es-PR.min.js
    │   │   │   ├── kendo.culture.es-PY.min.js
    │   │   │   ├── kendo.culture.es-SV.min.js
    │   │   │   ├── kendo.culture.es-US.min.js
    │   │   │   ├── kendo.culture.es-UY.min.js
    │   │   │   ├── kendo.culture.es-VE.min.js
    │   │   │   ├── kendo.culture.es.min.js
    │   │   │   ├── kendo.culture.et-EE.min.js
    │   │   │   ├── kendo.culture.et.min.js
    │   │   │   ├── kendo.culture.eu-ES.min.js
    │   │   │   ├── kendo.culture.eu.min.js
    │   │   │   ├── kendo.culture.fa-IR.min.js
    │   │   │   ├── kendo.culture.fa.min.js
    │   │   │   ├── kendo.culture.fi-FI.min.js
    │   │   │   ├── kendo.culture.fi.min.js
    │   │   │   ├── kendo.culture.fil-PH.min.js
    │   │   │   ├── kendo.culture.fil.min.js
    │   │   │   ├── kendo.culture.fo-FO.min.js
    │   │   │   ├── kendo.culture.fo.min.js
    │   │   │   ├── kendo.culture.fr-BE.min.js
    │   │   │   ├── kendo.culture.fr-CA.min.js
    │   │   │   ├── kendo.culture.fr-CH.min.js
    │   │   │   ├── kendo.culture.fr-FR.min.js
    │   │   │   ├── kendo.culture.fr-LU.min.js
    │   │   │   ├── kendo.culture.fr-MC.min.js
    │   │   │   ├── kendo.culture.fr.min.js
    │   │   │   ├── kendo.culture.fy-NL.min.js
    │   │   │   ├── kendo.culture.fy.min.js
    │   │   │   ├── kendo.culture.ga-IE.min.js
    │   │   │   ├── kendo.culture.ga.min.js
    │   │   │   ├── kendo.culture.gd-GB.min.js
    │   │   │   ├── kendo.culture.gd.min.js
    │   │   │   ├── kendo.culture.gl-ES.min.js
    │   │   │   ├── kendo.culture.gl.min.js
    │   │   │   ├── kendo.culture.gsw-FR.min.js
    │   │   │   ├── kendo.culture.gsw.min.js
    │   │   │   ├── kendo.culture.gu-IN.min.js
    │   │   │   ├── kendo.culture.gu.min.js
    │   │   │   ├── kendo.culture.ha-Latn-NG.min.js
    │   │   │   ├── kendo.culture.ha-Latn.min.js
    │   │   │   ├── kendo.culture.ha.min.js
    │   │   │   ├── kendo.culture.he-IL.min.js
    │   │   │   ├── kendo.culture.he.min.js
    │   │   │   ├── kendo.culture.hi-IN.min.js
    │   │   │   ├── kendo.culture.hi.min.js
    │   │   │   ├── kendo.culture.hr-BA.min.js
    │   │   │   ├── kendo.culture.hr-HR.min.js
    │   │   │   ├── kendo.culture.hr.min.js
    │   │   │   ├── kendo.culture.hsb-DE.min.js
    │   │   │   ├── kendo.culture.hsb.min.js
    │   │   │   ├── kendo.culture.hu-HU.min.js
    │   │   │   ├── kendo.culture.hu.min.js
    │   │   │   ├── kendo.culture.hy-AM.min.js
    │   │   │   ├── kendo.culture.hy.min.js
    │   │   │   ├── kendo.culture.id-ID.min.js
    │   │   │   ├── kendo.culture.id.min.js
    │   │   │   ├── kendo.culture.ig-NG.min.js
    │   │   │   ├── kendo.culture.ig.min.js
    │   │   │   ├── kendo.culture.ii-CN.min.js
    │   │   │   ├── kendo.culture.ii.min.js
    │   │   │   ├── kendo.culture.is-IS.min.js
    │   │   │   ├── kendo.culture.is.min.js
    │   │   │   ├── kendo.culture.it-CH.min.js
    │   │   │   ├── kendo.culture.it-IT.min.js
    │   │   │   ├── kendo.culture.it.min.js
    │   │   │   ├── kendo.culture.iu-Cans-CA.min.js
    │   │   │   ├── kendo.culture.iu-Cans.min.js
    │   │   │   ├── kendo.culture.iu-Latn-CA.min.js
    │   │   │   ├── kendo.culture.iu-Latn.min.js
    │   │   │   ├── kendo.culture.iu.min.js
    │   │   │   ├── kendo.culture.ja-JP.min.js
    │   │   │   ├── kendo.culture.ja.min.js
    │   │   │   ├── kendo.culture.ka-GE.min.js
    │   │   │   ├── kendo.culture.ka.min.js
    │   │   │   ├── kendo.culture.kk-KZ.min.js
    │   │   │   ├── kendo.culture.kk.min.js
    │   │   │   ├── kendo.culture.kl-GL.min.js
    │   │   │   ├── kendo.culture.kl.min.js
    │   │   │   ├── kendo.culture.km-KH.min.js
    │   │   │   ├── kendo.culture.km.min.js
    │   │   │   ├── kendo.culture.kn-IN.min.js
    │   │   │   ├── kendo.culture.kn.min.js
    │   │   │   ├── kendo.culture.ko-KR.min.js
    │   │   │   ├── kendo.culture.ko.min.js
    │   │   │   ├── kendo.culture.kok-IN.min.js
    │   │   │   ├── kendo.culture.kok.min.js
    │   │   │   ├── kendo.culture.ky-KG.min.js
    │   │   │   ├── kendo.culture.ky.min.js
    │   │   │   ├── kendo.culture.lb-LU.min.js
    │   │   │   ├── kendo.culture.lb.min.js
    │   │   │   ├── kendo.culture.lo-LA.min.js
    │   │   │   ├── kendo.culture.lo.min.js
    │   │   │   ├── kendo.culture.lt-LT.min.js
    │   │   │   ├── kendo.culture.lt.min.js
    │   │   │   ├── kendo.culture.lv-LV.min.js
    │   │   │   ├── kendo.culture.lv.min.js
    │   │   │   ├── kendo.culture.mi-NZ.min.js
    │   │   │   ├── kendo.culture.mi.min.js
    │   │   │   ├── kendo.culture.mk-MK.min.js
    │   │   │   ├── kendo.culture.mk.min.js
    │   │   │   ├── kendo.culture.ml-IN.min.js
    │   │   │   ├── kendo.culture.ml.min.js
    │   │   │   ├── kendo.culture.mn-Cyrl.min.js
    │   │   │   ├── kendo.culture.mn-MN.min.js
    │   │   │   ├── kendo.culture.mn-Mong-CN.min.js
    │   │   │   ├── kendo.culture.mn-Mong.min.js
    │   │   │   ├── kendo.culture.mn.min.js
    │   │   │   ├── kendo.culture.moh-CA.min.js
    │   │   │   ├── kendo.culture.moh.min.js
    │   │   │   ├── kendo.culture.mr-IN.min.js
    │   │   │   ├── kendo.culture.mr.min.js
    │   │   │   ├── kendo.culture.ms-BN.min.js
    │   │   │   ├── kendo.culture.ms-MY.min.js
    │   │   │   ├── kendo.culture.ms.min.js
    │   │   │   ├── kendo.culture.mt-MT.min.js
    │   │   │   ├── kendo.culture.mt.min.js
    │   │   │   ├── kendo.culture.nb-NO.min.js
    │   │   │   ├── kendo.culture.nb.min.js
    │   │   │   ├── kendo.culture.ne-NP.min.js
    │   │   │   ├── kendo.culture.ne.min.js
    │   │   │   ├── kendo.culture.nl-BE.min.js
    │   │   │   ├── kendo.culture.nl-NL.min.js
    │   │   │   ├── kendo.culture.nl.min.js
    │   │   │   ├── kendo.culture.nn-NO.min.js
    │   │   │   ├── kendo.culture.nn.min.js
    │   │   │   ├── kendo.culture.no.min.js
    │   │   │   ├── kendo.culture.nso-ZA.min.js
    │   │   │   ├── kendo.culture.nso.min.js
    │   │   │   ├── kendo.culture.oc-FR.min.js
    │   │   │   ├── kendo.culture.oc.min.js
    │   │   │   ├── kendo.culture.or-IN.min.js
    │   │   │   ├── kendo.culture.or.min.js
    │   │   │   ├── kendo.culture.pa-IN.min.js
    │   │   │   ├── kendo.culture.pa.min.js
    │   │   │   ├── kendo.culture.pl-PL.min.js
    │   │   │   ├── kendo.culture.pl.min.js
    │   │   │   ├── kendo.culture.prs-AF.min.js
    │   │   │   ├── kendo.culture.prs.min.js
    │   │   │   ├── kendo.culture.ps-AF.min.js
    │   │   │   ├── kendo.culture.ps.min.js
    │   │   │   ├── kendo.culture.pt-BR.min.js
    │   │   │   ├── kendo.culture.pt-PT.min.js
    │   │   │   ├── kendo.culture.pt.min.js
    │   │   │   ├── kendo.culture.qut-GT.min.js
    │   │   │   ├── kendo.culture.qut.min.js
    │   │   │   ├── kendo.culture.quz-BO.min.js
    │   │   │   ├── kendo.culture.quz-EC.min.js
    │   │   │   ├── kendo.culture.quz-PE.min.js
    │   │   │   ├── kendo.culture.quz.min.js
    │   │   │   ├── kendo.culture.rm-CH.min.js
    │   │   │   ├── kendo.culture.rm.min.js
    │   │   │   ├── kendo.culture.ro-RO.min.js
    │   │   │   ├── kendo.culture.ro.min.js
    │   │   │   ├── kendo.culture.ru-RU.min.js
    │   │   │   ├── kendo.culture.ru-UA.min.js
    │   │   │   ├── kendo.culture.ru.min.js
    │   │   │   ├── kendo.culture.rw-RW.min.js
    │   │   │   ├── kendo.culture.rw.min.js
    │   │   │   ├── kendo.culture.sa-IN.min.js
    │   │   │   ├── kendo.culture.sa.min.js
    │   │   │   ├── kendo.culture.sah-RU.min.js
    │   │   │   ├── kendo.culture.sah.min.js
    │   │   │   ├── kendo.culture.se-FI.min.js
    │   │   │   ├── kendo.culture.se-NO.min.js
    │   │   │   ├── kendo.culture.se-SE.min.js
    │   │   │   ├── kendo.culture.se.min.js
    │   │   │   ├── kendo.culture.si-LK.min.js
    │   │   │   ├── kendo.culture.si.min.js
    │   │   │   ├── kendo.culture.sk-SK.min.js
    │   │   │   ├── kendo.culture.sk.min.js
    │   │   │   ├── kendo.culture.sl-SI.min.js
    │   │   │   ├── kendo.culture.sl.min.js
    │   │   │   ├── kendo.culture.sma-NO.min.js
    │   │   │   ├── kendo.culture.sma-SE.min.js
    │   │   │   ├── kendo.culture.sma.min.js
    │   │   │   ├── kendo.culture.smj-NO.min.js
    │   │   │   ├── kendo.culture.smj-SE.min.js
    │   │   │   ├── kendo.culture.smj.min.js
    │   │   │   ├── kendo.culture.smn-FI.min.js
    │   │   │   ├── kendo.culture.smn.min.js
    │   │   │   ├── kendo.culture.sms-FI.min.js
    │   │   │   ├── kendo.culture.sms.min.js
    │   │   │   ├── kendo.culture.sq-AL.min.js
    │   │   │   ├── kendo.culture.sq.min.js
    │   │   │   ├── kendo.culture.sr-Cyrl-BA.min.js
    │   │   │   ├── kendo.culture.sr-Cyrl-CS.min.js
    │   │   │   ├── kendo.culture.sr-Cyrl-ME.min.js
    │   │   │   ├── kendo.culture.sr-Cyrl-RS.min.js
    │   │   │   ├── kendo.culture.sr-Cyrl.min.js
    │   │   │   ├── kendo.culture.sr-Latn-BA.min.js
    │   │   │   ├── kendo.culture.sr-Latn-CS.min.js
    │   │   │   ├── kendo.culture.sr-Latn-ME.min.js
    │   │   │   ├── kendo.culture.sr-Latn-RS.min.js
    │   │   │   ├── kendo.culture.sr-Latn.min.js
    │   │   │   ├── kendo.culture.sr.min.js
    │   │   │   ├── kendo.culture.sv-FI.min.js
    │   │   │   ├── kendo.culture.sv-SE.min.js
    │   │   │   ├── kendo.culture.sv.min.js
    │   │   │   ├── kendo.culture.sw-KE.min.js
    │   │   │   ├── kendo.culture.sw.min.js
    │   │   │   ├── kendo.culture.syr-SY.min.js
    │   │   │   ├── kendo.culture.syr.min.js
    │   │   │   ├── kendo.culture.ta-IN.min.js
    │   │   │   ├── kendo.culture.ta.min.js
    │   │   │   ├── kendo.culture.te-IN.min.js
    │   │   │   ├── kendo.culture.te.min.js
    │   │   │   ├── kendo.culture.tg-Cyrl-TJ.min.js
    │   │   │   ├── kendo.culture.tg-Cyrl.min.js
    │   │   │   ├── kendo.culture.tg.min.js
    │   │   │   ├── kendo.culture.th-TH.min.js
    │   │   │   ├── kendo.culture.th.min.js
    │   │   │   ├── kendo.culture.tk-TM.min.js
    │   │   │   ├── kendo.culture.tk.min.js
    │   │   │   ├── kendo.culture.tn-ZA.min.js
    │   │   │   ├── kendo.culture.tn.min.js
    │   │   │   ├── kendo.culture.tr-TR.min.js
    │   │   │   ├── kendo.culture.tr.min.js
    │   │   │   ├── kendo.culture.tt-RU.min.js
    │   │   │   ├── kendo.culture.tt.min.js
    │   │   │   ├── kendo.culture.tzm-Latn-DZ.min.js
    │   │   │   ├── kendo.culture.tzm-Latn.min.js
    │   │   │   ├── kendo.culture.tzm.min.js
    │   │   │   ├── kendo.culture.ug-CN.min.js
    │   │   │   ├── kendo.culture.ug.min.js
    │   │   │   ├── kendo.culture.uk-UA.min.js
    │   │   │   ├── kendo.culture.uk.min.js
    │   │   │   ├── kendo.culture.ur-PK.min.js
    │   │   │   ├── kendo.culture.ur.min.js
    │   │   │   ├── kendo.culture.uz-Cyrl-UZ.min.js
    │   │   │   ├── kendo.culture.uz-Cyrl.min.js
    │   │   │   ├── kendo.culture.uz-Latn-UZ.min.js
    │   │   │   ├── kendo.culture.uz-Latn.min.js
    │   │   │   ├── kendo.culture.uz.min.js
    │   │   │   ├── kendo.culture.vi-VN.min.js
    │   │   │   ├── kendo.culture.vi.min.js
    │   │   │   ├── kendo.culture.wo-SN.min.js
    │   │   │   ├── kendo.culture.wo.min.js
    │   │   │   ├── kendo.culture.xh-ZA.min.js
    │   │   │   ├── kendo.culture.xh.min.js
    │   │   │   ├── kendo.culture.yo-NG.min.js
    │   │   │   ├── kendo.culture.yo.min.js
    │   │   │   ├── kendo.culture.zh-CHS.min.js
    │   │   │   ├── kendo.culture.zh-CHT.min.js
    │   │   │   ├── kendo.culture.zh-CN.min.js
    │   │   │   ├── kendo.culture.zh-HK.min.js
    │   │   │   ├── kendo.culture.zh-Hans.min.js
    │   │   │   ├── kendo.culture.zh-Hant.min.js
    │   │   │   ├── kendo.culture.zh-MO.min.js
    │   │   │   ├── kendo.culture.zh-SG.min.js
    │   │   │   ├── kendo.culture.zh-TW.min.js
    │   │   │   ├── kendo.culture.zh.min.js
    │   │   │   ├── kendo.culture.zu-ZA.min.js
    │   │   │   └── kendo.culture.zu.min.js
    │   │   ├── dnat.js
    │   │   ├── domMenu.js
    │   │   ├── excanvas.min.js
    │   │   ├── fields.js
    │   │   ├── firewall_type.js
    │   │   ├── folding.css
    │   │   ├── folding.js
    │   │   ├── form.js
    │   │   ├── hotspot.css
    │   │   ├── i18n
    │   │   │   ├── jquery-ui-i18n.js
    │   │   │   ├── jquery.ui.datepicker-af.js
    │   │   │   ├── jquery.ui.datepicker-ar-DZ.js
    │   │   │   ├── jquery.ui.datepicker-ar.js
    │   │   │   ├── jquery.ui.datepicker-az.js
    │   │   │   ├── jquery.ui.datepicker-be.js
    │   │   │   ├── jquery.ui.datepicker-bg.js
    │   │   │   ├── jquery.ui.datepicker-bs.js
    │   │   │   ├── jquery.ui.datepicker-ca.js
    │   │   │   ├── jquery.ui.datepicker-cs.js
    │   │   │   ├── jquery.ui.datepicker-cy-GB.js
    │   │   │   ├── jquery.ui.datepicker-da.js
    │   │   │   ├── jquery.ui.datepicker-de.js
    │   │   │   ├── jquery.ui.datepicker-el.js
    │   │   │   ├── jquery.ui.datepicker-en-AU.js
    │   │   │   ├── jquery.ui.datepicker-en-GB.js
    │   │   │   ├── jquery.ui.datepicker-en-NZ.js
    │   │   │   ├── jquery.ui.datepicker-eo.js
    │   │   │   ├── jquery.ui.datepicker-es.js
    │   │   │   ├── jquery.ui.datepicker-et.js
    │   │   │   ├── jquery.ui.datepicker-eu.js
    │   │   │   ├── jquery.ui.datepicker-fa.js
    │   │   │   ├── jquery.ui.datepicker-fi.js
    │   │   │   ├── jquery.ui.datepicker-fo.js
    │   │   │   ├── jquery.ui.datepicker-fr-CA.js
    │   │   │   ├── jquery.ui.datepicker-fr-CH.js
    │   │   │   ├── jquery.ui.datepicker-fr.js
    │   │   │   ├── jquery.ui.datepicker-gl.js
    │   │   │   ├── jquery.ui.datepicker-he.js
    │   │   │   ├── jquery.ui.datepicker-hi.js
    │   │   │   ├── jquery.ui.datepicker-hr.js
    │   │   │   ├── jquery.ui.datepicker-hu.js
    │   │   │   ├── jquery.ui.datepicker-hy.js
    │   │   │   ├── jquery.ui.datepicker-id.js
    │   │   │   ├── jquery.ui.datepicker-is.js
    │   │   │   ├── jquery.ui.datepicker-it.js
    │   │   │   ├── jquery.ui.datepicker-ja.js
    │   │   │   ├── jquery.ui.datepicker-ka.js
    │   │   │   ├── jquery.ui.datepicker-kk.js
    │   │   │   ├── jquery.ui.datepicker-km.js
    │   │   │   ├── jquery.ui.datepicker-ko.js
    │   │   │   ├── jquery.ui.datepicker-ky.js
    │   │   │   ├── jquery.ui.datepicker-lb.js
    │   │   │   ├── jquery.ui.datepicker-lt.js
    │   │   │   ├── jquery.ui.datepicker-lv.js
    │   │   │   ├── jquery.ui.datepicker-mk.js
    │   │   │   ├── jquery.ui.datepicker-ml.js
    │   │   │   ├── jquery.ui.datepicker-ms.js
    │   │   │   ├── jquery.ui.datepicker-nb.js
    │   │   │   ├── jquery.ui.datepicker-nl-BE.js
    │   │   │   ├── jquery.ui.datepicker-nl.js
    │   │   │   ├── jquery.ui.datepicker-nn.js
    │   │   │   ├── jquery.ui.datepicker-no.js
    │   │   │   ├── jquery.ui.datepicker-pl.js
    │   │   │   ├── jquery.ui.datepicker-pt-BR.js
    │   │   │   ├── jquery.ui.datepicker-pt.js
    │   │   │   ├── jquery.ui.datepicker-rm.js
    │   │   │   ├── jquery.ui.datepicker-ro.js
    │   │   │   ├── jquery.ui.datepicker-ru.js
    │   │   │   ├── jquery.ui.datepicker-sk.js
    │   │   │   ├── jquery.ui.datepicker-sl.js
    │   │   │   ├── jquery.ui.datepicker-sq.js
    │   │   │   ├── jquery.ui.datepicker-sr-SR.js
    │   │   │   ├── jquery.ui.datepicker-sr.js
    │   │   │   ├── jquery.ui.datepicker-sv.js
    │   │   │   ├── jquery.ui.datepicker-ta.js
    │   │   │   ├── jquery.ui.datepicker-th.js
    │   │   │   ├── jquery.ui.datepicker-tj.js
    │   │   │   ├── jquery.ui.datepicker-tr.js
    │   │   │   ├── jquery.ui.datepicker-uk.js
    │   │   │   ├── jquery.ui.datepicker-vi.js
    │   │   │   ├── jquery.ui.datepicker-zh-CN.js
    │   │   │   ├── jquery.ui.datepicker-zh-HK.js
    │   │   │   └── jquery.ui.datepicker-zh-TW.js
    │   │   ├── images
    │   │   │   ├── sprite.png
    │   │   │   ├── ui-bg_diagonals-thick_18_b81900_40x40.png
    │   │   │   ├── ui-bg_diagonals-thick_20_666666_40x40.png
    │   │   │   ├── ui-bg_flat_10_000000_40x100.png
    │   │   │   ├── ui-bg_glass_100_dbebdd_1x400.png
    │   │   │   ├── ui-bg_glass_100_f6f6f6_1x400.png
    │   │   │   ├── ui-bg_glass_65_579903_1x400.png
    │   │   │   ├── ui-bg_gloss-wave_35_579903_500x100.png
    │   │   │   ├── ui-bg_highlight-soft_100_eeeeee_1x100.png
    │   │   │   ├── ui-bg_highlight-soft_75_a3c775_1x100.png
    │   │   │   ├── ui-bg_progressbar-err.gif
    │   │   │   ├── ui-bg_progressbar-ok.gif
    │   │   │   ├── ui-bg_progressbar.gif
    │   │   │   ├── ui-icons_000000_256x240.png
    │   │   │   ├── ui-icons_222222_256x240.png
    │   │   │   ├── ui-icons_579903_256x240.png
    │   │   │   ├── ui-icons_ffd27a_256x240.png
    │   │   │   └── ui-icons_ffffff_256x240.png
    │   │   ├── importer.css
    │   │   ├── jquery-chosen.css
    │   │   ├── jquery-datatables.css
    │   │   ├── jquery-gritter.css
    │   │   ├── jquery-jscrollpane.css
    │   │   ├── jquery-multiselect.css
    │   │   ├── jquery-ui-accordion-endian.css
    │   │   ├── jquery-ui-autocomplete.css
    │   │   ├── jquery-ui-button.css
    │   │   ├── jquery-ui-core.css
    │   │   ├── jquery-ui-datepicker.css
    │   │   ├── jquery-ui-dialog.css
    │   │   ├── jquery-ui-jqgrid-endian.css
    │   │   ├── jquery-ui-menu.css
    │   │   ├── jquery-ui-multicheck-endian.css
    │   │   ├── jquery-ui-multiselect-endian.css
    │   │   ├── jquery-ui-progressbar.css
    │   │   ├── jquery-ui-resizeable.css
    │   │   ├── jquery-ui-selectable.css
    │   │   ├── jquery-ui-slider.css
    │   │   ├── jquery-ui-spinner.css
    │   │   ├── jquery-ui-tabs.css
    │   │   ├── jquery-ui-theme.css
    │   │   ├── jquery-ui-tooltip.css
    │   │   ├── jquery.ba-resize.min.js
    │   │   ├── jquery.chosen.min.js
    │   │   ├── jquery.cookie.js
    │   │   ├── jquery.csv.endian.js
    │   │   ├── jquery.dataTables.min.js
    │   │   ├── jquery.easing.js
    │   │   ├── jquery.example.min.js
    │   │   ├── jquery.flot.min.js
    │   │   ├── jquery.form.endian.js
    │   │   ├── jquery.gritter.min.js
    │   │   ├── jquery.highlight.endian.js
    │   │   ├── jquery.ifixpng.js
    │   │   ├── jquery.jBreadCrumb.js
    │   │   ├── jquery.jeditable.min.js
    │   │   ├── jquery.jqGrid.endian.js
    │   │   ├── jquery.jscrollpane.js
    │   │   ├── jquery.livequery.min.js
    │   │   ├── jquery.maskedinput.min.js
    │   │   ├── jquery.migrate.min.js
    │   │   ├── jquery.min.js
    │   │   ├── jquery.mousewheel.js
    │   │   ├── jquery.multiselect.min.js
    │   │   ├── jquery.peity.min.js
    │   │   ├── jquery.selectboxes.js
    │   │   ├── jquery.showpassword.min.js
    │   │   ├── jquery.stalker.js
    │   │   ├── jquery.timer.js
    │   │   ├── jquery.tools.min.js
    │   │   ├── jquery.trunk8.js
    │   │   ├── jquery.ui.accordion.endian.js
    │   │   ├── jquery.ui.autocomplete.min.js
    │   │   ├── jquery.ui.button.min.js
    │   │   ├── jquery.ui.core.min.js
    │   │   ├── jquery.ui.datepicker.min.js
    │   │   ├── jquery.ui.dialog.min.js
    │   │   ├── jquery.ui.draggable.min.js
    │   │   ├── jquery.ui.droppable.min.js
    │   │   ├── jquery.ui.effect-blind.min.js
    │   │   ├── jquery.ui.effect-bounce.min.js
    │   │   ├── jquery.ui.effect-clip.min.js
    │   │   ├── jquery.ui.effect-drop.min.js
    │   │   ├── jquery.ui.effect-explode.min.js
    │   │   ├── jquery.ui.effect-fade.min.js
    │   │   ├── jquery.ui.effect-fold.min.js
    │   │   ├── jquery.ui.effect-highlight.min.js
    │   │   ├── jquery.ui.effect-pulsate.min.js
    │   │   ├── jquery.ui.effect-scale.min.js
    │   │   ├── jquery.ui.effect-shake.min.js
    │   │   ├── jquery.ui.effect-slide.min.js
    │   │   ├── jquery.ui.effect-transfer.min.js
    │   │   ├── jquery.ui.effect.min.js
    │   │   ├── jquery.ui.jalert.js
    │   │   ├── jquery.ui.menu.min.js
    │   │   ├── jquery.ui.mouse.min.js
    │   │   ├── jquery.ui.multicheck.endian.js
    │   │   ├── jquery.ui.multiselect.endian.js
    │   │   ├── jquery.ui.position.min.js
    │   │   ├── jquery.ui.progressbar.min.js
    │   │   ├── jquery.ui.resizable.min.js
    │   │   ├── jquery.ui.search.endian.js
    │   │   ├── jquery.ui.selectable.min.js
    │   │   ├── jquery.ui.slider.min.js
    │   │   ├── jquery.ui.sortable.min.js
    │   │   ├── jquery.ui.spinner.min.js
    │   │   ├── jquery.ui.tabs.min.js
    │   │   ├── jquery.ui.tooltip.min.js
    │   │   ├── jquery.ui.widget.min.js
    │   │   ├── kendo.autocomplete.min.js
    │   │   ├── kendo.binder.min.js
    │   │   ├── kendo.calendar.min.js
    │   │   ├── kendo.colorpicker.min.js
    │   │   ├── kendo.columnmenu.min.js
    │   │   ├── kendo.combobox.min.js
    │   │   ├── kendo.common.endian.css
    │   │   ├── kendo.common.min.css
    │   │   ├── kendo.core.min.js
    │   │   ├── kendo.custom.css
    │   │   ├── kendo.data.min.js
    │   │   ├── kendo.data.odata.min.js
    │   │   ├── kendo.data.xml.min.js
    │   │   ├── kendo.datepicker.min.js
    │   │   ├── kendo.datetimepicker.min.js
    │   │   ├── kendo.draganddrop.min.js
    │   │   ├── kendo.dropdownlist.min.js
    │   │   ├── kendo.editable.min.js
    │   │   ├── kendo.editor.min.js
    │   │   ├── kendo.filtermenu.min.js
    │   │   ├── kendo.fx.min.js
    │   │   ├── kendo.grid.min.js
    │   │   ├── kendo.groupable.min.js
    │   │   ├── kendo.imagebrowser.min.js
    │   │   ├── kendo.list.min.js
    │   │   ├── kendo.listview.min.js
    │   │   ├── kendo.menu.min.js
    │   │   ├── kendo.multiselect.min.js
    │   │   ├── kendo.numerictextbox.min.js
    │   │   ├── kendo.pager.min.js
    │   │   ├── kendo.panelbar.min.js
    │   │   ├── kendo.popup.min.js
    │   │   ├── kendo.reorderable.min.js
    │   │   ├── kendo.resizable.min.js
    │   │   ├── kendo.router.min.js
    │   │   ├── kendo.selectable.min.js
    │   │   ├── kendo.slider.min.js
    │   │   ├── kendo.sortable.min.js
    │   │   ├── kendo.splitter.min.js
    │   │   ├── kendo.tabstrip.min.js
    │   │   ├── kendo.timepicker.min.js
    │   │   ├── kendo.tooltip.min.js
    │   │   ├── kendo.treeview.min.js
    │   │   ├── kendo.upload.min.js
    │   │   ├── kendo.userevents.min.js
    │   │   ├── kendo.validator.min.js
    │   │   ├── kendo.view.min.js
    │   │   ├── kendo.web.min.js
    │   │   ├── kendo.window.min.js
    │   │   ├── live_log_data.js
    │   │   ├── live_logs.js
    │   │   ├── log_renderer.js
    │   │   ├── log_renderer_clamav.js
    │   │   ├── log_renderer_commtouchweb.js
    │   │   ├── log_renderer_firewall.js
    │   │   ├── log_renderer_panda.js
    │   │   ├── log_renderer_system.js
    │   │   ├── logs.css
    │   │   ├── logs_ie.css
    │   │   ├── logs_list.js
    │   │   ├── makemini.pl
    │   │   ├── menu.css
    │   │   ├── miniportal.css
    │   │   ├── modemmanager.js
    │   │   ├── overlib.js
    │   │   ├── overlib_anchor.js
    │   │   ├── overlib_centerpopup.js
    │   │   ├── overlib_crossframe.js
    │   │   ├── overlib_cssstyle.js
    │   │   ├── overlib_debug.js
    │   │   ├── overlib_exclusive.js
    │   │   ├── overlib_followscroll.js
    │   │   ├── overlib_hideform.js
    │   │   ├── overlib_mini.js
    │   │   ├── overlib_setonoff.js
    │   │   ├── overlib_shadow.js
    │   │   ├── portal.css
    │   │   ├── portal.ie7.css
    │   │   ├── qrcode.min.js
    │   │   ├── selectbox.js
    │   │   ├── service-notifications.css
    │   │   ├── services_selector.js
    │   │   ├── servicesubscriber.js
    │   │   ├── serviceswitch.js
    │   │   ├── style.css
    │   │   ├── switchVisibility.js
    │   │   ├── textures
    │   │   │   ├── brushed-metal.png
    │   │   │   ├── dots1.png
    │   │   │   ├── dots10.png
    │   │   │   ├── dots11.png
    │   │   │   ├── dots12.png
    │   │   │   ├── dots13.png
    │   │   │   ├── dots2.png
    │   │   │   ├── dots3.png
    │   │   │   ├── dots4.png
    │   │   │   ├── dots5.png
    │   │   │   ├── dots6.png
    │   │   │   ├── dots7.png
    │   │   │   ├── dots8.png
    │   │   │   ├── dots9.png
    │   │   │   ├── glass-lighter.png
    │   │   │   ├── glass.png
    │   │   │   ├── highlight.png
    │   │   │   ├── hsv-gradient.png
    │   │   │   ├── hue.png
    │   │   │   ├── leather1.png
    │   │   │   ├── leather2.png
    │   │   │   ├── noise.png
    │   │   │   ├── stripe1.png
    │   │   │   ├── stripe2.png
    │   │   │   ├── stripe3.png
    │   │   │   ├── stripe4.png
    │   │   │   ├── stripe5.png
    │   │   │   ├── stripe6.png
    │   │   │   ├── transparency.png
    │   │   │   └── transtexture.png
    │   │   ├── toastr.css
    │   │   ├── toastr.js
    │   │   ├── tooltip.endian.css
    │   │   ├── tooltip.endian.js
    │   │   ├── updates.css
    │   │   ├── uplink.js
    │   │   ├── uplinkeditor.js
    │   │   └── uplinks-status.css
    │   ├── index.html
    │   ├── js
    │   │   ├── autorefreshwrapper.js
    │   │   ├── blocks.js
    │   │   ├── calls.js
    │   │   ├── consolelogger.js
    │   │   ├── container.js
    │   │   ├── cookie.js
    │   │   ├── datagrid.js
    │   │   ├── drag.js
    │   │   ├── draganddropsort.js
    │   │   ├── emiRequest
    │   │   │   ├── README.md
    │   │   │   └── emiRequest.js
    │   │   ├── fieldselector.js
    │   │   ├── grid.locale-en.js
    │   │   ├── hardwareinformationplugin.js
    │   │   ├── input_lock.js
    │   │   ├── jobsinformationplugin.js
    │   │   ├── jquery.datatables.editable.js
    │   │   ├── jquery.emi.apply.js
    │   │   ├── jquery.emi.gridaction.js
    │   │   ├── jquery.emi.notification.js
    │   │   ├── jquery.emi.switch.js
    │   │   ├── jquery.emi.toast.js
    │   │   ├── jsonhandle.js
    │   │   ├── map
    │   │   │   ├── iconlayercontrol.js
    │   │   │   ├── map.js
    │   │   │   ├── multilevellayercontrol.js
    │   │   │   ├── newwindowcontrol.js
    │   │   │   └── treenode.js
    │   │   ├── md5.js
    │   │   ├── network_selector.js
    │   │   ├── networkinformationplugin.js
    │   │   ├── otp.js
    │   │   ├── plaxlib.js
    │   │   ├── serviceinformationplugin.js
    │   │   ├── serviceselector.js
    │   │   ├── signaturesinformationplugin.js
    │   │   ├── simpletreemenu.js
    │   │   ├── smoothie.js
    │   │   ├── socket.js
    │   │   ├── sorttable.js
    │   │   ├── systeminformationplugin.js
    │   │   ├── tabs.js
    │   │   ├── uplinkinformationplugin.js
    │   │   ├── validators.js
    │   │   ├── vue-components
    │   │   │   ├── container
    │   │   │   │   └── container.js
    │   │   │   ├── dual-listbox
    │   │   │   │   └── dual-listbox.js
    │   │   │   ├── editable-grid
    │   │   │   │   ├── README.md
    │   │   │   │   └── editable-grid.js
    │   │   │   ├── labelled-switch-button
    │   │   │   │   ├── demo.html
    │   │   │   │   └── labelled-switch-button.js
    │   │   │   ├── password-editor
    │   │   │   │   ├── README.md
    │   │   │   │   ├── demo.html
    │   │   │   │   └── password-editor.js
    │   │   │   └── toggle-button-bar
    │   │   │       ├── demo.html
    │   │   │       └── toggle-button-bar.js
    │   │   ├── websocket.js
    │   │   ├── win.js
    │   │   └── wizard.js
    │   ├── manage
    │   │   ├── dashboard.OLD
    │   │   │   └── index.html
    │   │   ├── dnsmasq
    │   │   │   └── hosts
    │   │   │       └── index.html
    │   │   └── openssh
    │   ├── palette.html
    │   ├── palette_hl.html
    │   ├── sgraph
    │   ├── sounds
    │   │   ├── index.html
    │   │   ├── license.txt
    │   │   ├── sound_1.mp3
    │   │   ├── sound_2.mp3
    │   │   ├── sound_3.mp3
    │   │   ├── sound_4.mp3
    │   │   ├── sound_5.mp3
    │   │   └── sound_6.mp3
    │   ├── static
    │   │   ├── css
    │   │   │   ├── autorefreshwrapper.css
    │   │   │   ├── closeablecontainer.css
    │   │   │   ├── container.css
    │   │   │   ├── dashboardcontainer.css
    │   │   │   ├── datagrid.css
    │   │   │   ├── draganddropsort.css
    │   │   │   ├── fieldselector.css
    │   │   │   ├── gallery.css
    │   │   │   ├── grideditor.css
    │   │   │   ├── hardwareinformationcontent.css
    │   │   │   ├── input_lock.css
    │   │   │   ├── network_selector.css
    │   │   │   ├── networkinformationcontent.css
    │   │   │   ├── notification.css
    │   │   │   ├── overlaycontainer.css
    │   │   │   ├── plugin.css
    │   │   │   ├── separator.css
    │   │   │   ├── serviceinformationcontent.css
    │   │   │   ├── serviceselector.css
    │   │   │   ├── settingseditor.css
    │   │   │   ├── signaturesinformationcontent.css
    │   │   │   ├── standalone_wizard.css
    │   │   │   ├── switch.css
    │   │   │   ├── systeminformationcontent.css
    │   │   │   ├── tabcontainer.css
    │   │   │   ├── uplinkinformationcontent.css
    │   │   │   ├── uploadfield.css
    │   │   │   ├── wizard.css
    │   │   │   └── wizard_settingseditor.css
    │   │   ├── images
    │   │   │   ├── action_accept.png
    │   │   │   ├── action_actions.png
    │   │   │   ├── action_add.png
    │   │   │   ├── action_alert.png
    │   │   │   ├── action_archive_action.png
    │   │   │   ├── action_block.png
    │   │   │   ├── action_clear.gif
    │   │   │   ├── action_connected.png
    │   │   │   ├── action_connection_test.png
    │   │   │   ├── action_delete.png
    │   │   │   ├── action_delete_mail.png
    │   │   │   ├── action_deny.png
    │   │   │   ├── action_details.png
    │   │   │   ├── action_disconnected.png
    │   │   │   ├── action_download.png
    │   │   │   ├── action_download_encrypted.png
    │   │   │   ├── action_drop.png
    │   │   │   ├── action_edit.png
    │   │   │   ├── action_enable_off.png
    │   │   │   ├── action_enable_on.png
    │   │   │   ├── action_filter.png
    │   │   │   ├── action_forward.png
    │   │   │   ├── action_help.png
    │   │   │   ├── action_mail_disabled.png
    │   │   │   ├── action_mail_enabled.png
    │   │   │   ├── action_map.png
    │   │   │   ├── action_moveDown.png
    │   │   │   ├── action_moveUp.png
    │   │   │   ├── action_partial.png
    │   │   │   ├── action_reconnect.png
    │   │   │   ├── action_reject.png
    │   │   │   ├── action_release_mail.png
    │   │   │   ├── action_reload.png
    │   │   │   ├── action_view_logs.png
    │   │   │   ├── action_view_mail.png
    │   │   │   ├── closeablecontainer_header_close.png
    │   │   │   ├── closeablecontainer_header_open.png
    │   │   │   ├── gallery_close.png
    │   │   │   ├── gritter-close-ie6.gif
    │   │   │   ├── gritter-long.png
    │   │   │   ├── gritter.png
    │   │   │   ├── loading.gif
    │   │   │   ├── notification_error.png
    │   │   │   ├── notification_error_bottom.png
    │   │   │   ├── notification_error_content.png
    │   │   │   ├── notification_error_sign.png
    │   │   │   ├── notification_important.png
    │   │   │   ├── notification_info.png
    │   │   │   ├── notification_info_bottom.png
    │   │   │   ├── notification_info_content.png
    │   │   │   ├── notification_info_sign.png
    │   │   │   ├── os_microsoft_windows128x128.png
    │   │   │   ├── os_microsoft_windows16x16.png
    │   │   │   ├── os_microsoft_windows24x24.png
    │   │   │   ├── os_microsoft_windows32x32.png
    │   │   │   ├── os_microsoft_windows64x64.png
    │   │   │   ├── os_osx128x128.png
    │   │   │   ├── os_osx16x16.png
    │   │   │   ├── os_osx24x24.png
    │   │   │   ├── os_osx32x32.png
    │   │   │   ├── os_osx64x64.png
    │   │   │   ├── rulesgrid_back.png
    │   │   │   ├── slider_max.png
    │   │   │   ├── slider_min.png
    │   │   │   ├── switch_off.png
    │   │   │   ├── switch_on.png
    │   │   │   └── wait-small.gif
    │   │   ├── javascript
    │   │   │   ├── jquery.cookie.js
    │   │   │   ├── jquery.js
    │   │   │   └── jquery.selectboxes.js
    │   │   └── js
    │   │       ├── autorefreshwrapper.js
    │   │       ├── consolelogger.js
    │   │       ├── container.js
    │   │       ├── datagrid.js
    │   │       ├── draganddropsort.js
    │   │       ├── fieldselector.js
    │   │       ├── grid.locale-en.js
    │   │       ├── hardwareinformationplugin.js
    │   │       ├── input_lock.js
    │   │       ├── jobsinformationplugin.js
    │   │       ├── jquery.emi.apply.js
    │   │       ├── jquery.emi.gridaction.js
    │   │       ├── jquery.emi.notification.js
    │   │       ├── jquery.emi.switch.js
    │   │       ├── network_selector.js
    │   │       ├── networkinformationplugin.js
    │   │       ├── otp.js
    │   │       ├── serviceinformationplugin.js
    │   │       ├── serviceselector.js
    │   │       ├── signaturesinformationplugin.js
    │   │       ├── systeminformationplugin.js
    │   │       ├── uplinkinformationplugin.js
    │   │       ├── validators.js
    │   │       └── wizard.js
    │   └── toscawidgets
    │       └── resources
    │           ├── endian
    │           ├── endian.emi
    │           │   └── static
    │           │       ├── css
    │           │       │   ├── autorefreshwrapper.css
    │           │       │   ├── closeablecontainer.css
    │           │       │   ├── container.css
    │           │       │   ├── datagrid.css
    │           │       │   ├── draganddropsort.css
    │           │       │   ├── fieldselector.css
    │           │       │   ├── gallery.css
    │           │       │   ├── grideditor.css
    │           │       │   ├── input_lock.css
    │           │       │   ├── network_selector.css
    │           │       │   ├── notification.css
    │           │       │   ├── overlaycontainer.css
    │           │       │   ├── plugin.css
    │           │       │   ├── separator.css
    │           │       │   ├── serviceselector.css
    │           │       │   ├── settingseditor.css
    │           │       │   ├── standalone_wizard.css
    │           │       │   ├── switch.css
    │           │       │   ├── tabcontainer.css
    │           │       │   ├── uploadfield.css
    │           │       │   ├── wizard.css
    │           │       │   └── wizard_settingseditor.css
    │           │       ├── images
    │           │       │   ├── action_accept.png
    │           │       │   ├── action_actions.png
    │           │       │   ├── action_add.png
    │           │       │   ├── action_alert.png
    │           │       │   ├── action_archive_action.png
    │           │       │   ├── action_block.png
    │           │       │   ├── action_clear.gif
    │           │       │   ├── action_connected.png
    │           │       │   ├── action_connection_test.png
    │           │       │   ├── action_delete.png
    │           │       │   ├── action_delete_mail.png
    │           │       │   ├── action_deny.png
    │           │       │   ├── action_details.png
    │           │       │   ├── action_disconnected.png
    │           │       │   ├── action_download.png
    │           │       │   ├── action_download_encrypted.png
    │           │       │   ├── action_drop.png
    │           │       │   ├── action_edit.png
    │           │       │   ├── action_enable_off.png
    │           │       │   ├── action_enable_on.png
    │           │       │   ├── action_filter.png
    │           │       │   ├── action_forward.png
    │           │       │   ├── action_help.png
    │           │       │   ├── action_mail_disabled.png
    │           │       │   ├── action_mail_enabled.png
    │           │       │   ├── action_map.png
    │           │       │   ├── action_moveDown.png
    │           │       │   ├── action_moveUp.png
    │           │       │   ├── action_partial.png
    │           │       │   ├── action_reconnect.png
    │           │       │   ├── action_reject.png
    │           │       │   ├── action_release_mail.png
    │           │       │   ├── action_reload.png
    │           │       │   ├── action_view_logs.png
    │           │       │   ├── action_view_mail.png
    │           │       │   ├── closeablecontainer_header_close.png
    │           │       │   ├── closeablecontainer_header_open.png
    │           │       │   ├── gallery_close.png
    │           │       │   ├── gritter-close-ie6.gif
    │           │       │   ├── gritter-long.png
    │           │       │   ├── gritter.png
    │           │       │   ├── loading.gif
    │           │       │   ├── notification_error.png
    │           │       │   ├── notification_error_bottom.png
    │           │       │   ├── notification_error_content.png
    │           │       │   ├── notification_error_sign.png
    │           │       │   ├── notification_important.png
    │           │       │   ├── notification_info.png
    │           │       │   ├── notification_info_bottom.png
    │           │       │   ├── notification_info_content.png
    │           │       │   ├── notification_info_sign.png
    │           │       │   ├── os_microsoft_windows128x128.png
    │           │       │   ├── os_microsoft_windows16x16.png
    │           │       │   ├── os_microsoft_windows24x24.png
    │           │       │   ├── os_microsoft_windows32x32.png
    │           │       │   ├── os_microsoft_windows64x64.png
    │           │       │   ├── os_osx128x128.png
    │           │       │   ├── os_osx16x16.png
    │           │       │   ├── os_osx24x24.png
    │           │       │   ├── os_osx32x32.png
    │           │       │   ├── os_osx64x64.png
    │           │       │   ├── rulesgrid_back.png
    │           │       │   ├── slider_max.png
    │           │       │   ├── slider_min.png
    │           │       │   ├── switch_off.png
    │           │       │   ├── switch_on.png
    │           │       │   └── wait-small.gif
    │           │       └── js
    │           │           ├── autorefreshwrapper.js
    │           │           ├── consolelogger.js
    │           │           ├── container.js
    │           │           ├── datagrid.js
    │           │           ├── draganddropsort.js
    │           │           ├── fieldselector.js
    │           │           ├── grid.locale-en.js
    │           │           ├── input_lock.js
    │           │           ├── jquery.emi.apply.js
    │           │           ├── jquery.emi.gridaction.js
    │           │           ├── jquery.emi.notification.js
    │           │           ├── jquery.emi.switch.js
    │           │           ├── network_selector.js
    │           │           ├── otp.js
    │           │           ├── serviceselector.js
    │           │           ├── validators.js
    │           │           └── wizard.js
    │           └── static
    │               ├── css
    │               │   ├── autorefreshwrapper.css
    │               │   ├── closeablecontainer.css
    │               │   ├── container.css
    │               │   ├── dashboardcontainer.css
    │               │   ├── datagrid.css
    │               │   ├── draganddropsort.css
    │               │   ├── fieldselector.css
    │               │   ├── gallery.css
    │               │   ├── grideditor.css
    │               │   ├── hardwareinformationcontent.css
    │               │   ├── input_lock.css
    │               │   ├── network_selector.css
    │               │   ├── networkinformationcontent.css
    │               │   ├── notification.css
    │               │   ├── overlaycontainer.css
    │               │   ├── plugin.css
    │               │   ├── separator.css
    │               │   ├── serviceinformationcontent.css
    │               │   ├── serviceselector.css
    │               │   ├── settingseditor.css
    │               │   ├── signaturesinformationcontent.css
    │               │   ├── standalone_wizard.css
    │               │   ├── switch.css
    │               │   ├── systeminformationcontent.css
    │               │   ├── tabcontainer.css
    │               │   ├── uplinkinformationcontent.css
    │               │   ├── uploadfield.css
    │               │   ├── wizard.css
    │               │   └── wizard_settingseditor.css
    │               ├── images
    │               │   ├── action_accept.png
    │               │   ├── action_actions.png
    │               │   ├── action_add.png
    │               │   ├── action_alert.png
    │               │   ├── action_archive_action.png
    │               │   ├── action_block.png
    │               │   ├── action_clear.gif
    │               │   ├── action_connected.png
    │               │   ├── action_connection_test.png
    │               │   ├── action_delete.png
    │               │   ├── action_delete_mail.png
    │               │   ├── action_deny.png
    │               │   ├── action_details.png
    │               │   ├── action_disconnected.png
    │               │   ├── action_download.png
    │               │   ├── action_download_encrypted.png
    │               │   ├── action_drop.png
    │               │   ├── action_edit.png
    │               │   ├── action_enable_off.png
    │               │   ├── action_enable_on.png
    │               │   ├── action_filter.png
    │               │   ├── action_forward.png
    │               │   ├── action_help.png
    │               │   ├── action_mail_disabled.png
    │               │   ├── action_mail_enabled.png
    │               │   ├── action_map.png
    │               │   ├── action_moveDown.png
    │               │   ├── action_moveUp.png
    │               │   ├── action_partial.png
    │               │   ├── action_reconnect.png
    │               │   ├── action_reject.png
    │               │   ├── action_release_mail.png
    │               │   ├── action_reload.png
    │               │   ├── action_view_logs.png
    │               │   ├── action_view_mail.png
    │               │   ├── closeablecontainer_header_close.png
    │               │   ├── closeablecontainer_header_open.png
    │               │   ├── gallery_close.png
    │               │   ├── gritter-close-ie6.gif
    │               │   ├── gritter-long.png
    │               │   ├── gritter.png
    │               │   ├── loading.gif
    │               │   ├── notification_error.png
    │               │   ├── notification_error_bottom.png
    │               │   ├── notification_error_content.png
    │               │   ├── notification_error_sign.png
    │               │   ├── notification_important.png
    │               │   ├── notification_info.png
    │               │   ├── notification_info_bottom.png
    │               │   ├── notification_info_content.png
    │               │   ├── notification_info_sign.png
    │               │   ├── os_microsoft_windows128x128.png
    │               │   ├── os_microsoft_windows16x16.png
    │               │   ├── os_microsoft_windows24x24.png
    │               │   ├── os_microsoft_windows32x32.png
    │               │   ├── os_microsoft_windows64x64.png
    │               │   ├── os_osx128x128.png
    │               │   ├── os_osx16x16.png
    │               │   ├── os_osx24x24.png
    │               │   ├── os_osx32x32.png
    │               │   ├── os_osx64x64.png
    │               │   ├── rulesgrid_back.png
    │               │   ├── slider_max.png
    │               │   ├── slider_min.png
    │               │   ├── switch_off.png
    │               │   ├── switch_on.png
    │               │   └── wait-small.gif
    │               └── js
    │                   ├── autorefreshwrapper.js
    │                   ├── consolelogger.js
    │                   ├── container.js
    │                   ├── datagrid.js
    │                   ├── draganddropsort.js
    │                   ├── fieldselector.js
    │                   ├── grid.locale-en.js
    │                   ├── hardwareinformationplugin.js
    │                   ├── input_lock.js
    │                   ├── jobsinformationplugin.js
    │                   ├── jquery.emi.apply.js
    │                   ├── jquery.emi.gridaction.js
    │                   ├── jquery.emi.notification.js
    │                   ├── jquery.emi.switch.js
    │                   ├── jquery.emi.toast.js
    │                   ├── network_selector.js
    │                   ├── networkinformationplugin.js
    │                   ├── otp.js
    │                   ├── serviceinformationplugin.js
    │                   ├── serviceselector.js
    │                   ├── signaturesinformationplugin.js
    │                   ├── systeminformationplugin.js
    │                   ├── uplinkinformationplugin.js
    │                   ├── validators.js
    │                   └── wizard.js
    ├── json
    ├── logs
    │   ├── blackhole_error_log
    │   ├── blackhole_httpd_access
    │   ├── blackhole_ssl_request_log
    │   ├── error_log
    │   ├── httpd_access
    │   └── ssl_request_log
    ├── menus
    │   ├── cache
    │   │   ├── cache.json
    │   │   ├── haslave.json
    │   │   ├── hotspot.json
    │   │   └── main.json
    │   ├── haslave
    │   │   ├── menu-37adjoin.pl
    │   │   └── menu-50shell.pl
    │   ├── hotspot
    │   └── main
    │       ├── addons
    │       ├── menu-00oldstyle.pl
    │       ├── menu-01include-cgibin.pl
    │       ├── menu-avengine00-clamav.pl
    │       ├── menu-ca.pl
    │       ├── menu-dashboard.pl
    │       ├── menu-dhcp.pl
    │       ├── menu-diagram.pl
    │       ├── menu-dnsmasq.pl
    │       ├── menu-eal.pl
    │       ├── menu-efw-register.pl
    │       ├── menu-ftpproxy.pl
    │       ├── menu-interfaceeditor.pl
    │       ├── menu-ips.pl
    │       ├── menu-ipsec00.pl
    │       ├── menu-nat.pl
    │       ├── menu-notifications.pl
    │       ├── menu-ntop.pl
    │       ├── menu-opentsa.pl
    │       ├── menu-openvpnserver.pl
    │       ├── menu-outgoingfw.pl
    │       ├── menu-proxy00.pl
    │       ├── menu-proxy01-urlfilter.pl
    │       ├── menu-qos.pl
    │       ├── menu-routing.pl
    │       ├── menu-shell.pl
    │       ├── menu-smtpproxy.pl
    │       ├── menu-snmp.pl
    │       ├── menu-vpn-authentication.pl
    │       ├── menu-vpnfw.pl
    │       ├── menu-xtaccess.pl
    │       └── menu-zonefw.pl
    └── netwizard
        ├── netwiz1.tmpl
        ├── netwiz2.tmpl
        ├── netwiz3.tmpl
        ├── netwiz4_analog_1.tmpl
        ├── netwiz4_analog_2.tmpl
        ├── netwiz4_dhcp_1.tmpl
        ├── netwiz4_modem_1.tmpl
        ├── netwiz4_modem_2.tmpl
        ├── netwiz4_none_1.tmpl
        ├── netwiz4_pppoe_1.tmpl
        ├── netwiz4_static_1.tmpl
        ├── netwiz4_stealth_1.tmpl
        ├── netwiz5.tmpl
        ├── netwiz6.tmpl
        ├── netwiz7.tmpl
        ├── netwiz8.tmpl
        └── netwiz_zone.tmpl

370 directories, 2199 files
27
Dev Stuff / EMI Proxy Requests and JSON Responses
« Last post by razwall on November 20, 2024, 12:50:57 PM »
Code: [Select]
https://192.168.19.1:10443/manage/status/status.dashboard.hardware

{"cached": false, "time": 1731600469.0089741, "storage": [{"USAGE": "3", "TOTAL": "15993 MB", "NAME": "Memory", "KEY": "memory"}, {"USAGE": "0", "TOTAL": "15991 MB", "NAME": "Swap", "KEY": "swap"}, {"USAGE": "19", "TOTAL": "4.8G", "NAME": "Main disk", "KEY": "df-root"}, {"USAGE": "16", "TOTAL": "117.8G", "NAME": "Data disk", "KEY": "df-var"}, {"USAGE": "8", "TOTAL": "120M", "NAME": "Configuration disk", "KEY": "df-var/efw"}, {"USAGE": "5", "TOTAL": "78.5G", "NAME": "Log disk", "KEY": "df-var/log"}], "cpustat": {"global": {"system": 487798, "cpu_id": "global", "idle": 197231268, "user": 1720558, "total": 199439624, "nice": 0}, "1": {"system": 59522, "cpu_id": "1", "idle": 24677804, "user": 204225, "total": 24941551, "nice": 0}, "0": {"system": 58756, "cpu_id": "0", "idle": 24606690, "user": 241307, "total": 24906753, "nice": 0}, "3": {"system": 58025, "cpu_id": "3", "idle": 24693697, "user": 187583, "total": 24939305, "nice": 0}, "2": {"system": 60161, "cpu_id": "2", "idle": 24660268, "user": 205603, "total": 24926032, "nice": 0}, "5": {"system": 65200, "cpu_id": "5", "idle": 24647361, "user": 210924, "total": 24923485, "nice": 0}, "4": {"system": 65501, "cpu_id": "4", "idle": 24638473, "user": 232284, "total": 24936258, "nice": 0}, "7": {"system": 59403, "cpu_id": "7", "idle": 24656967, "user": 200100, "total": 24916470, "nice": 0}, "6": {"system": 61230, "cpu_id": "6", "idle": 24650008, "user": 238532, "total": 24949770, "nice": 0}}}

https://192.168.19.1:10443/manage/status/status.uplinksdaemon.data?timeout=2

{"cacheHitAt": 1731600455.4530821, "cachedOn": 1731600454.6696789, "time": 1731600454.66975, "uplinks": [{"status": "ACTIVE", "defaultGatewayTimestamp": 1731349117.8499999, "managed": "on", "shouldBeUp": true, "canStart": true, "isLinkAlive": true, "data": {"name": "'Main uplink'", "ip": "x.x.x.x", "last_retry": "", "interface": "eth3", "type": "STATIC", "gateway": "x.x.x.x"}, "defaultGateway": true, "uptime": "2d 21h 50m 14s", "name": "main", "isLinkActive": true, "enabled": "on", "autostart": "on", "hasChanged": true}, {"status": "ACTIVE", "defaultGatewayTimestamp": -1, "managed": "on", "shouldBeUp": true, "canStart": true, "isLinkAlive": true, "data": {"name": "'IT WAN'", "ip": "x.x.x.x", "last_retry": "", "interface": "eth2", "type": "DHCP", "gateway": "x.x.x.x"}, "defaultGateway": false, "uptime": "2d 21h 49m 37s", "name": "uplink1", "isLinkActive": true, "enabled": "on", "autostart": "on", "hasChanged": true}], "cached": true}

https://192.168.19.1:10443/manage/status/status.collectd.singlevalues?timeout=4&plugin=service

{"cacheHitAt": 1731600439.1212721, "tail-smtp/connections-virus": {"value": 0.0}, "tail-smtp/connections-spam": {"value": 0.0}, "tail-pop/connections-virus": {"value": 0.0}, "tail-smtp/connections-noqueue": {"value": 0.0}, "tail-http/connections-denied": {}, "cached": true, "tail-pop/connections-scanned": {"value": 0.0}, "tail-smtp/connections-clean": {"value": 0.0}, "time": 1731600436.315294, "tail-smtp/connections-incoming": {"value": 0.0}, "memory/memory-used": {"value": 521613300.0}, "tail-http/connections-hit": {}, "tail-http/connections-miss": {}, "tail-pop/connections-spam": {"value": 0.0}, "tail-http/connections-virus": {}, "cachedOn": 1731600436.315212, "filecount-postfix_queue/files": {"value": 0.0}, "tail-smtp/connections-sent": {"value": 0.0}}

https://192.168.19.1:10443/manage/status/status.collectd.singlevalues?timeout=4&plugin=network

{"cacheHitAt": 1731600420.5669689, "cachedOn": 1731600420.5669119, "cached": false, "time": 1731600420.566998}

https://192.168.19.1:10443/manage/status/status.dashboard.system

{"kernel": 0, "uptime": "2d 21h 49m", "cached": false, "kernel_value": "4.4.145.e7.4", "register": "bryan.donarski@gflibrary.com", "appliance": "Community", "version": "3.3.27", "time": 1731600403.7565579}

https://192.168.19.1:10443/manage/status/status.dashboard.signatures

{"cached": false, "signatures": {"Urlfilter blacklist": "2016.08.30 10:55", "Anti-spyware lists": "2024.11.13 12:17"}, "no_signatures_msg": "No recent signature updates found", "time": 1731600380.9465301}

https://192.168.19.1:10443/manage/vpnauthentication/connection/json_grid?controllername=connection&

{"records": 0, "total": 1, "data": [], "page": 1}

https://192.168.19.1:10443/manage/password/web/json_grid?controllername=&

{"records": 1, "total": 1, "data": [{"remark": " ", "ID": "<input type=\"checkbox\" name=\"ID\"  value=\"1\" />", "actions": "<span>\n<a id=\"action__edit_1\" class=\"gridaction\" name=\"action\" href=\"?ACTION=edit&CONTROLLERNAME=&ID=1\" title=\"Edit\" onclick=\"\" >\n    <img class=\"\" width=\"16\" height=\"16\" src=\"/toscawidgets/resources/endian.emi/static/images/action_edit.png\" alt=\"Edit\" border=\"0\" />\n</a>\n</span>", "name": "admin"}], "page": 1}

https://192.168.19.1:10443/manage/openssh/json_grid?controllername=&

{"records": 3, "total": 1, "data": [{"size": "256", "key": "/etc/ssh/ssh_host_ecdsa_key.pub (ECDSA)", "fingerprint": "SHA256:p970+OfT/LwDvYE22sYNvzCuhMsiXYunsX+qWS814TM"}, {"size": "1024", "key": "/etc/ssh/ssh_host_rsa_key.pub (RSA2)", "fingerprint": "SHA256:ZvLosSGKNL7H+INbmEU+2yu7GCBC+hiZ9M8tE+Wvg8o"}, {"size": "1024", "key": "/etc/ssh/ssh_host_dsa_key.pub (DSA)", "fingerprint": "SHA256:vjakzcOiHSQzlz4gGtR8Dnzi361ZM6XgwOZ8oXK2mLg"}], "page": 1}

https://192.168.19.1:10443/manage/dnsmasq/hosts/json_grid?controllername=hosts&

{"records": 4, "total": 1, "data": [{"remark": "", "domainname": "test.local", "ip": "192.168.19.1", "hostname": "endian", "actions": "<span><a id=\"action_hosts_enable_2\" class=\"gridaction\" name=\"action\" href=\"#\" title=\"Disable\" onclick=\" jQuery('#action_hosts_enable_2').emigridaction({ request_type: 'GET', gridid: 'hosts_datagrid', idfield: 'ID', controllername: 'hosts', link: '/manage/dnsmasq/hosts/json?ACTION=enable&CONTROLLERNAME=hosts&ID=2&enabled=off', errormessage: 'Action could not be performed.', beforeExecute: null, onExecute: null, onSuccess: null, onError: null, onComplete: null, multi: false, all: false}, {}); return false;\" >\n    <img class=\"\" width=\"16\" height=\"16\" src=\"/toscawidgets/resources/endian.emi/static/images/action_enable_on.png\" alt=\"Disable\" border=\"0\" />\n</a>\n<a id=\"action_hosts_edit_2\" class=\"gridaction\" name=\"action\" href=\"?ACTION=edit&CONTROLLERNAME=hosts&ID=2\" title=\"Edit\" onclick=\"\" >\n    <img class=\"\" width=\"16\" height=\"16\" src=\"/toscawidgets/resources/endian.emi/static/images/action_edit.png\" alt=\"Edit\" border=\"0\" />\n</a>\n<a id=\"action_hosts_delete_2\" class=\"gridaction\" name=\"action\" href=\"#\" title=\"Delete\" onclick=\"if (! confirm('Do you want to delete this record?')) {return false}; jQuery('#action_hosts_delete_2').emigridaction({ request_type: 'GET', gridid: 'hosts_datagrid', idfield: 'ID', controllername: 'hosts', link: '/manage/dnsmasq/hosts/json?ACTION=delete&CONTROLLERNAME=hosts&ID=2', errormessage: 'Action could not be performed.', beforeExecute: null, onExecute: null, onSuccess: null, onError: null, onComplete: null, multi: false, all: false}, {}); return false;\" >\n    <img class=\"\" width=\"16\" height=\"16\" src=\"/toscawidgets/resources/endian.emi/static/images/action_delete.png\" alt=\"Delete\" border=\"0\" />\n</a></span>", "ID": "<input type=\"checkbox\" name=\"ID\"  value=\"2\" />"}, {"remark": "", "domainname": "", "ip": "192.168.19.10", "hostname": "gfplserver", "actions": "<span><a id=\"action_hosts_enable_3\" class=\"gridaction\" name=\"action\" href=\"#\" title=\"Disable\" onclick=\" jQuery('#action_hosts_enable_3').emigridaction({ request_type: 'GET', gridid: 'hosts_datagrid', idfield: 'ID', controllername: 'hosts', link: '/manage/dnsmasq/hosts/json?ACTION=enable&CONTROLLERNAME=hosts&ID=3&enabled=off', errormessage: 'Action could not be performed.', beforeExecute: null, onExecute: null, onSuccess: null, onError: null, onComplete: null, multi: false, all: false}, {}); return false;\" >\n    <img class=\"\" width=\"16\" height=\"16\" src=\"/toscawidgets/resources/endian.emi/static/images/action_enable_on.png\" alt=\"Disable\" border=\"0\" />\n</a>\n<a id=\"action_hosts_edit_3\" class=\"gridaction\" name=\"action\" href=\"?ACTION=edit&CONTROLLERNAME=hosts&ID=3\" title=\"Edit\" onclick=\"\" >\n    <img class=\"\" width=\"16\" height=\"16\" src=\"/toscawidgets/resources/endian.emi/static/images/action_edit.png\" alt=\"Edit\" border=\"0\" />\n</a>\n<a id=\"action_hosts_delete_3\" class=\"gridaction\" name=\"action\" href=\"#\" title=\"Delete\" onclick=\"if (! confirm('Do you want to delete this record?')) {return false}; jQuery('#action_hosts_delete_3').emigridaction({ request_type: 'GET', gridid: 'hosts_datagrid', idfield: 'ID', controllername: 'hosts', link: '/manage/dnsmasq/hosts/json?ACTION=delete&CONTROLLERNAME=hosts&ID=3', errormessage: 'Action could not be performed.', beforeExecute: null, onExecute: null, onSuccess: null, onError: null, onComplete: null, multi: false, all: false}, {}); return false;\" >\n    <img class=\"\" width=\"16\" height=\"16\" src=\"/toscawidgets/resources/endian.emi/static/images/action_delete.png\" alt=\"Delete\" border=\"0\" />\n</a></span>", "ID": "<input type=\"checkbox\" name=\"ID\"  value=\"3\" />"}, {"remark": "", "domainname": "gflibrary.com", "ip": "192.168.19.14", "hostname": "web", "actions": "<span><a id=\"action_hosts_enable_1\" class=\"gridaction\" name=\"action\" href=\"#\" title=\"Disable\" onclick=\" jQuery('#action_hosts_enable_1').emigridaction({ request_type: 'GET', gridid: 'hosts_datagrid', idfield: 'ID', controllername: 'hosts', link: '/manage/dnsmasq/hosts/json?ACTION=enable&CONTROLLERNAME=hosts&ID=1&enabled=off', errormessage: 'Action could not be performed.', beforeExecute: null, onExecute: null, onSuccess: null, onError: null, onComplete: null, multi: false, all: false}, {}); return false;\" >\n    <img class=\"\" width=\"16\" height=\"16\" src=\"/toscawidgets/resources/endian.emi/static/images/action_enable_on.png\" alt=\"Disable\" border=\"0\" />\n</a>\n<a id=\"action_hosts_edit_1\" class=\"gridaction\" name=\"action\" href=\"?ACTION=edit&CONTROLLERNAME=hosts&ID=1\" title=\"Edit\" onclick=\"\" >\n    <img class=\"\" width=\"16\" height=\"16\" src=\"/toscawidgets/resources/endian.emi/static/images/action_edit.png\" alt=\"Edit\" border=\"0\" />\n</a>\n<a id=\"action_hosts_delete_1\" class=\"gridaction\" name=\"action\" href=\"#\" title=\"Delete\" onclick=\"if (! confirm('Do you want to delete this record?')) {return false}; jQuery('#action_hosts_delete_1').emigridaction({ request_type: 'GET', gridid: 'hosts_datagrid', idfield: 'ID', controllername: 'hosts', link: '/manage/dnsmasq/hosts/json?ACTION=delete&CONTROLLERNAME=hosts&ID=1', errormessage: 'Action could not be performed.', beforeExecute: null, onExecute: null, onSuccess: null, onError: null, onComplete: null, multi: false, all: false}, {}); return false;\" >\n    <img class=\"\" width=\"16\" height=\"16\" src=\"/toscawidgets/resources/endian.emi/static/images/action_delete.png\" alt=\"Delete\" border=\"0\" />\n</a></span>", "ID": "<input type=\"checkbox\" name=\"ID\"  value=\"1\" />"}, {"remark": "DEEP FREEZE", "domainname": "", "ip": "192.168.19.34", "hostname": "deepfreeze", "actions": "<span><a id=\"action_hosts_enable_4\" class=\"gridaction\" name=\"action\" href=\"#\" title=\"Disable\" onclick=\" jQuery('#action_hosts_enable_4').emigridaction({ request_type: 'GET', gridid: 'hosts_datagrid', idfield: 'ID', controllername: 'hosts', link: '/manage/dnsmasq/hosts/json?ACTION=enable&CONTROLLERNAME=hosts&ID=4&enabled=off', errormessage: 'Action could not be performed.', beforeExecute: null, onExecute: null, onSuccess: null, onError: null, onComplete: null, multi: false, all: false}, {}); return false;\" >\n    <img class=\"\" width=\"16\" height=\"16\" src=\"/toscawidgets/resources/endian.emi/static/images/action_enable_on.png\" alt=\"Disable\" border=\"0\" />\n</a>\n<a id=\"action_hosts_edit_4\" class=\"gridaction\" name=\"action\" href=\"?ACTION=edit&CONTROLLERNAME=hosts&ID=4\" title=\"Edit\" onclick=\"\" >\n    <img class=\"\" width=\"16\" height=\"16\" src=\"/toscawidgets/resources/endian.emi/static/images/action_edit.png\" alt=\"Edit\" border=\"0\" />\n</a>\n<a id=\"action_hosts_delete_4\" class=\"gridaction\" name=\"action\" href=\"#\" title=\"Delete\" onclick=\"if (! confirm('Do you want to delete this record?')) {return false}; jQuery('#action_hosts_delete_4').emigridaction({ request_type: 'GET', gridid: 'hosts_datagrid', idfield: 'ID', controllername: 'hosts', link: '/manage/dnsmasq/hosts/json?ACTION=delete&CONTROLLERNAME=hosts&ID=4', errormessage: 'Action could not be performed.', beforeExecute: null, onExecute: null, onSuccess: null, onError: null, onComplete: null, multi: false, all: false}, {}); return false;\" >\n    <img class=\"\" width=\"16\" height=\"16\" src=\"/toscawidgets/resources/endian.emi/static/images/action_delete.png\" alt=\"Delete\" border=\"0\" />\n</a></span>", "ID": "<input type=\"checkbox\" name=\"ID\"  value=\"4\" />"}], "page": 1}

https://192.168.19.1:10443/manage/dnsmasq/hosts/json_grid?controllername=systemhosts&

{"records": 4, "total": 1, "data": [{"ip": "127.0.0.1", "remark": "", "hostname": "localhost", "domainname": "localhost"}, {"ip": "192.168.19.1", "remark": "firewall's GREEN", "hostname": "endian", "domainname": "test.local"}, {"ip": "192.168.19.1", "remark": "spam auto-training host", "hostname": "spam", "domainname": "spam"}, {"ip": "192.168.19.1", "remark": "ham auto-training host", "hostname": "ham", "domainname": "ham"}], "page": 1}

https://192.168.19.1:10443/manage/dnsmasq/localdomains/json_grid?controllername=localdomains&

{"records": 0, "total": 1, "data": [], "page": 1}

https://192.168.19.1:10443/manage/dnsmasq/localdomains/json_grid?controllername=systemlocaldomains&

{"records": 0, "total": 1, "data": [], "page": 1}

https://192.168.19.1:10443/manage/ipsec/json_grid?controllername=connection&

{"records": 0, "total": 1, "data": [], "page": 1}

https://192.168.19.1:10443/manage/vpnauthentication/user/json_grid?controllername=user&

{"records": 10, "total": 1, "data": [{"remark": "GW2GWUSER", "ID": "<input type=\"checkbox\" name=\"ID\"  value=\"11\" />", "actions": "<span><a id=\"action_user_enable_11\" class=\"gridaction\" name=\"action\" href=\"#\" title=\"Enable\" onclick=\" jQuery('#action_user_enable_11').emigridaction({ request_type: 'GET', gridid: 'user_datagrid', idfield: 'ID', controllername: 'user', link: '/manage/vpnauthentication/user/json?ACTION=enable&CONTROLLERNAME=user&ID=11&enabled=on', errormessage: 'Action could not be performed.', beforeExecute: null, onExecute: null, onSuccess: null, onError: null, onComplete: null, multi: false, all: false}, {}); return false;\" >\n    <img class=\"\" width=\"16\" height=\"16\" src=\"/toscawidgets/resources/endian.emi/static/images/action_enable_off.png\" alt=\"Enable\" border=\"0\" />\n</a>\n<a id=\"action_user_edit_11\" class=\"gridaction\" name=\"action\" href=\"?ACTION=edit&CONTROLLERNAME=user&ID=11\" title=\"Edit\" onclick=\"\" >\n    <img class=\"\" width=\"16\" height=\"16\" src=\"/toscawidgets/resources/endian.emi/static/images/action_edit.png\" alt=\"Edit\" border=\"0\" />\n</a>\n<a id=\"action_user_delete_11\" class=\"gridaction\" name=\"action\" href=\"#\" title=\"Delete\" onclick=\"if (! confirm('Do you want to delete this record?')) {return false}; jQuery('#action_user_delete_11').emigridaction({ request_type: 'GET', gridid: 'user_datagrid', idfield: 'ID', controllername: 'user', link: '/manage/vpnauthentication/user/json?ACTION=delete&CONTROLLERNAME=user&ID=11', errormessage: 'Action could not be performed.', beforeExecute: null, onExecute: null, onSuccess: null, onError: null, onComplete: null, multi: false, all: false}, {}); return false;\" >\n    <img class=\"\" width=\"16\" height=\"16\" src=\"/toscawidgets/resources/endian.emi/static/images/action_delete.png\" alt=\"Delete\" border=\"0\" />\n</a>\n</span>", "name": "TUNNEL"}, {"remark": "Marketing", "ID": "<input type=\"checkbox\" name=\"ID\"  value=\"8\" />", "actions": "<span><a id=\"action_user_enable_8\" class=\"gridaction\" name=\"action\" href=\"#\" title=\"Disable\" onclick=\" jQuery('#action_user_enable_8').emigridaction({ request_type: 'GET', gridid: 'user_datagrid', idfield: 'ID', controllername: 'user', link: '/manage/vpnauthentication/user/json?ACTION=enable&CONTROLLERNAME=user&ID=8&enabled=off', errormessage: 'Action could not be performed.', beforeExecute: null, onExecute: null, onSuccess: null, onError: null, onComplete: null, multi: false, all: false}, {}); return false;\" >\n    <img class=\"\" width=\"16\" height=\"16\" src=\"/toscawidgets/resources/endian.emi/static/images/action_enable_on.png\" alt=\"Disable\" border=\"0\" />\n</a>\n<a id=\"action_user_edit_8\" class=\"gridaction\" name=\"action\" href=\"?ACTION=edit&CONTROLLERNAME=user&ID=8\" title=\"Edit\" onclick=\"\" >\n    <img class=\"\" width=\"16\" height=\"16\" src=\"/toscawidgets/resources/endian.emi/static/images/action_edit.png\" alt=\"Edit\" border=\"0\" />\n</a>\n<a id=\"action_user_delete_8\" class=\"gridaction\" name=\"action\" href=\"#\" title=\"Delete\" onclick=\"if (! confirm('Do you want to delete this record?')) {return false}; jQuery('#action_user_delete_8').emigridaction({ request_type: 'GET', gridid: 'user_datagrid', idfield: 'ID', controllername: 'user', link: '/manage/vpnauthentication/user/json?ACTION=delete&CONTROLLERNAME=user&ID=8', errormessage: 'Action could not be performed.', beforeExecute: null, onExecute: null, onSuccess: null, onError: null, onComplete: null, multi: false, all: false}, {}); return false;\" >\n    <img class=\"\" width=\"16\" height=\"16\" src=\"/toscawidgets/resources/endian.emi/static/images/action_delete.png\" alt=\"Delete\" border=\"0\" />\n</a>\n</span>", "name": "alaxdal"}, {"remark": "-", "ID": "<input type=\"checkbox\" name=\"ID\"  value=\"7\" />", "actions": "<span><a id=\"action_user_enable_7\" class=\"gridaction\" name=\"action\" href=\"#\" title=\"Disable\" onclick=\" jQuery('#action_user_enable_7').emigridaction({ request_type: 'GET', gridid: 'user_datagrid', idfield: 'ID', controllername: 'user', link: '/manage/vpnauthentication/user/json?ACTION=enable&CONTROLLERNAME=user&ID=7&enabled=off', errormessage: 'Action could not be performed.', beforeExecute: null, onExecute: null, onSuccess: null, onError: null, onComplete: null, multi: false, all: false}, {}); return false;\" >\n    <img class=\"\" width=\"16\" height=\"16\" src=\"/toscawidgets/resources/endian.emi/static/images/action_enable_on.png\" alt=\"Disable\" border=\"0\" />\n</a>\n<a id=\"action_user_edit_7\" class=\"gridaction\" name=\"action\" href=\"?ACTION=edit&CONTROLLERNAME=user&ID=7\" title=\"Edit\" onclick=\"\" >\n    <img class=\"\" width=\"16\" height=\"16\" src=\"/toscawidgets/resources/endian.emi/static/images/action_edit.png\" alt=\"Edit\" border=\"0\" />\n</a>\n<a id=\"action_user_delete_7\" class=\"gridaction\" name=\"action\" href=\"#\" title=\"Delete\" onclick=\"if (! confirm('Do you want to delete this record?')) {return false}; jQuery('#action_user_delete_7').emigridaction({ request_type: 'GET', gridid: 'user_datagrid', idfield: 'ID', controllername: 'user', link: '/manage/vpnauthentication/user/json?ACTION=delete&CONTROLLERNAME=user&ID=7', errormessage: 'Action could not be performed.', beforeExecute: null, onExecute: null, onSuccess: null, onError: null, onComplete: null, multi: false, all: false}, {}); return false;\" >\n    <img class=\"\" width=\"16\" height=\"16\" src=\"/toscawidgets/resources/endian.emi/static/images/action_delete.png\" alt=\"Delete\" border=\"0\" />\n</a>\n</span>", "name": "bryank"}, {"remark": "-", "ID": "<input type=\"checkbox\" name=\"ID\"  value=\"13\" />", "actions": "<span><a id=\"action_user_enable_13\" class=\"gridaction\" name=\"action\" href=\"#\" title=\"Disable\" onclick=\" jQuery('#action_user_enable_13').emigridaction({ request_type: 'GET', gridid: 'user_datagrid', idfield: 'ID', controllername: 'user', link: '/manage/vpnauthentication/user/json?ACTION=enable&CONTROLLERNAME=user&ID=13&enabled=off', errormessage: 'Action could not be performed.', beforeExecute: null, onExecute: null, onSuccess: null, onError: null, onComplete: null, multi: false, all: false}, {}); return false;\" >\n    <img class=\"\" width=\"16\" height=\"16\" src=\"/toscawidgets/resources/endian.emi/static/images/action_enable_on.png\" alt=\"Disable\" border=\"0\" />\n</a>\n<a id=\"action_user_edit_13\" class=\"gridaction\" name=\"action\" href=\"?ACTION=edit&CONTROLLERNAME=user&ID=13\" title=\"Edit\" onclick=\"\" >\n    <img class=\"\" width=\"16\" height=\"16\" src=\"/toscawidgets/resources/endian.emi/static/images/action_edit.png\" alt=\"Edit\" border=\"0\" />\n</a>\n<a id=\"action_user_delete_13\" class=\"gridaction\" name=\"action\" href=\"#\" title=\"Delete\" onclick=\"if (! confirm('Do you want to delete this record?')) {return false}; jQuery('#action_user_delete_13').emigridaction({ request_type: 'GET', gridid: 'user_datagrid', idfield: 'ID', controllername: 'user', link: '/manage/vpnauthentication/user/json?ACTION=delete&CONTROLLERNAME=user&ID=13', errormessage: 'Action could not be performed.', beforeExecute: null, onExecute: null, onSuccess: null, onError: null, onComplete: null, multi: false, all: false}, {}); return false;\" >\n    <img class=\"\" width=\"16\" height=\"16\" src=\"/toscawidgets/resources/endian.emi/static/images/action_delete.png\" alt=\"Delete\" border=\"0\" />\n</a>\n</span>", "name": "gneubert"}, {"remark": "-", "ID": "<input type=\"checkbox\" name=\"ID\"  value=\"9\" />", "actions": "<span><a id=\"action_user_enable_9\" class=\"gridaction\" name=\"action\" href=\"#\" title=\"Disable\" onclick=\" jQuery('#action_user_enable_9').emigridaction({ request_type: 'GET', gridid: 'user_datagrid', idfield: 'ID', controllername: 'user', link: '/manage/vpnauthentication/user/json?ACTION=enable&CONTROLLERNAME=user&ID=9&enabled=off', errormessage: 'Action could not be performed.', beforeExecute: null, onExecute: null, onSuccess: null, onError: null, onComplete: null, multi: false, all: false}, {}); return false;\" >\n    <img class=\"\" width=\"16\" height=\"16\" src=\"/toscawidgets/resources/endian.emi/static/images/action_enable_on.png\" alt=\"Disable\" border=\"0\" />\n</a>\n<a id=\"action_user_edit_9\" class=\"gridaction\" name=\"action\" href=\"?ACTION=edit&CONTROLLERNAME=user&ID=9\" title=\"Edit\" onclick=\"\" >\n    <img class=\"\" width=\"16\" height=\"16\" src=\"/toscawidgets/resources/endian.emi/static/images/action_edit.png\" alt=\"Edit\" border=\"0\" />\n</a>\n<a id=\"action_user_delete_9\" class=\"gridaction\" name=\"action\" href=\"#\" title=\"Delete\" onclick=\"if (! confirm('Do you want to delete this record?')) {return false}; jQuery('#action_user_delete_9').emigridaction({ request_type: 'GET', gridid: 'user_datagrid', idfield: 'ID', controllername: 'user', link: '/manage/vpnauthentication/user/json?ACTION=delete&CONTROLLERNAME=user&ID=9', errormessage: 'Action could not be performed.', beforeExecute: null, onExecute: null, onSuccess: null, onError: null, onComplete: null, multi: false, all: false}, {}); return false;\" >\n    <img class=\"\" width=\"16\" height=\"16\" src=\"/toscawidgets/resources/endian.emi/static/images/action_delete.png\" alt=\"Delete\" border=\"0\" />\n</a>\n</span>", "name": "jbailey"}, {"remark": "CR Outreach", "ID": "<input type=\"checkbox\" name=\"ID\"  value=\"14\" />", "actions": "<span><a id=\"action_user_enable_14\" class=\"gridaction\" name=\"action\" href=\"#\" title=\"Disable\" onclick=\" jQuery('#action_user_enable_14').emigridaction({ request_type: 'GET', gridid: 'user_datagrid', idfield: 'ID', controllername: 'user', link: '/manage/vpnauthentication/user/json?ACTION=enable&CONTROLLERNAME=user&ID=14&enabled=off', errormessage: 'Action could not be performed.', beforeExecute: null, onExecute: null, onSuccess: null, onError: null, onComplete: null, multi: false, all: false}, {}); return false;\" >\n    <img class=\"\" width=\"16\" height=\"16\" src=\"/toscawidgets/resources/endian.emi/static/images/action_enable_on.png\" alt=\"Disable\" border=\"0\" />\n</a>\n<a id=\"action_user_edit_14\" class=\"gridaction\" name=\"action\" href=\"?ACTION=edit&CONTROLLERNAME=user&ID=14\" title=\"Edit\" onclick=\"\" >\n    <img class=\"\" width=\"16\" height=\"16\" src=\"/toscawidgets/resources/endian.emi/static/images/action_edit.png\" alt=\"Edit\" border=\"0\" />\n</a>\n<a id=\"action_user_delete_14\" class=\"gridaction\" name=\"action\" href=\"#\" title=\"Delete\" onclick=\"if (! confirm('Do you want to delete this record?')) {return false}; jQuery('#action_user_delete_14').emigridaction({ request_type: 'GET', gridid: 'user_datagrid', idfield: 'ID', controllername: 'user', link: '/manage/vpnauthentication/user/json?ACTION=delete&CONTROLLERNAME=user&ID=14', errormessage: 'Action could not be performed.', beforeExecute: null, onExecute: null, onSuccess: null, onError: null, onComplete: null, multi: false, all: false}, {}); return false;\" >\n    <img class=\"\" width=\"16\" height=\"16\" src=\"/toscawidgets/resources/endian.emi/static/images/action_delete.png\" alt=\"Delete\" border=\"0\" />\n</a>\n</span>", "name": "kcooper"}, {"remark": "-", "ID": "<input type=\"checkbox\" name=\"ID\"  value=\"10\" />", "actions": "<span><a id=\"action_user_enable_10\" class=\"gridaction\" name=\"action\" href=\"#\" title=\"Disable\" onclick=\" jQuery('#action_user_enable_10').emigridaction({ request_type: 'GET', gridid: 'user_datagrid', idfield: 'ID', controllername: 'user', link: '/manage/vpnauthentication/user/json?ACTION=enable&CONTROLLERNAME=user&ID=10&enabled=off', errormessage: 'Action could not be performed.', beforeExecute: null, onExecute: null, onSuccess: null, onError: null, onComplete: null, multi: false, all: false}, {}); return false;\" >\n    <img class=\"\" width=\"16\" height=\"16\" src=\"/toscawidgets/resources/endian.emi/static/images/action_enable_on.png\" alt=\"Disable\" border=\"0\" />\n</a>\n<a id=\"action_user_edit_10\" class=\"gridaction\" name=\"action\" href=\"?ACTION=edit&CONTROLLERNAME=user&ID=10\" title=\"Edit\" onclick=\"\" >\n    <img class=\"\" width=\"16\" height=\"16\" src=\"/toscawidgets/resources/endian.emi/static/images/action_edit.png\" alt=\"Edit\" border=\"0\" />\n</a>\n<a id=\"action_user_delete_10\" class=\"gridaction\" name=\"action\" href=\"#\" title=\"Delete\" onclick=\"if (! confirm('Do you want to delete this record?')) {return false}; jQuery('#action_user_delete_10').emigridaction({ request_type: 'GET', gridid: 'user_datagrid', idfield: 'ID', controllername: 'user', link: '/manage/vpnauthentication/user/json?ACTION=delete&CONTROLLERNAME=user&ID=10', errormessage: 'Action could not be performed.', beforeExecute: null, onExecute: null, onSuccess: null, onError: null, onComplete: null, multi: false, all: false}, {}); return false;\" >\n    <img class=\"\" width=\"16\" height=\"16\" src=\"/toscawidgets/resources/endian.emi/static/images/action_delete.png\" alt=\"Delete\" border=\"0\" />\n</a>\n</span>", "name": "tpalmer"}, {"remark": "-", "ID": "<input type=\"checkbox\" name=\"ID\"  value=\"12\" />", "actions": "<span><a id=\"action_user_enable_12\" class=\"gridaction\" name=\"action\" href=\"#\" title=\"Disable\" onclick=\" jQuery('#action_user_enable_12').emigridaction({ request_type: 'GET', gridid: 'user_datagrid', idfield: 'ID', controllername: 'user', link: '/manage/vpnauthentication/user/json?ACTION=enable&CONTROLLERNAME=user&ID=12&enabled=off', errormessage: 'Action could not be performed.', beforeExecute: null, onExecute: null, onSuccess: null, onError: null, onComplete: null, multi: false, all: false}, {}); return false;\" >\n    <img class=\"\" width=\"16\" height=\"16\" src=\"/toscawidgets/resources/endian.emi/static/images/action_enable_on.png\" alt=\"Disable\" border=\"0\" />\n</a>\n<a id=\"action_user_edit_12\" class=\"gridaction\" name=\"action\" href=\"?ACTION=edit&CONTROLLERNAME=user&ID=12\" title=\"Edit\" onclick=\"\" >\n    <img class=\"\" width=\"16\" height=\"16\" src=\"/toscawidgets/resources/endian.emi/static/images/action_edit.png\" alt=\"Edit\" border=\"0\" />\n</a>\n<a id=\"action_user_delete_12\" class=\"gridaction\" name=\"action\" href=\"#\" title=\"Delete\" onclick=\"if (! confirm('Do you want to delete this record?')) {return false}; jQuery('#action_user_delete_12').emigridaction({ request_type: 'GET', gridid: 'user_datagrid', idfield: 'ID', controllername: 'user', link: '/manage/vpnauthentication/user/json?ACTION=delete&CONTROLLERNAME=user&ID=12', errormessage: 'Action could not be performed.', beforeExecute: null, onExecute: null, onSuccess: null, onError: null, onComplete: null, multi: false, all: false}, {}); return false;\" >\n    <img class=\"\" width=\"16\" height=\"16\" src=\"/toscawidgets/resources/endian.emi/static/images/action_delete.png\" alt=\"Delete\" border=\"0\" />\n</a>\n</span>", "name": "wbyzewski"}, {"remark": "facility manager", "ID": "<input type=\"checkbox\" name=\"ID\"  value=\"6\" />", "actions": "<span><a id=\"action_user_enable_6\" class=\"gridaction\" name=\"action\" href=\"#\" title=\"Disable\" onclick=\" jQuery('#action_user_enable_6').emigridaction({ request_type: 'GET', gridid: 'user_datagrid', idfield: 'ID', controllername: 'user', link: '/manage/vpnauthentication/user/json?ACTION=enable&CONTROLLERNAME=user&ID=6&enabled=off', errormessage: 'Action could not be performed.', beforeExecute: null, onExecute: null, onSuccess: null, onError: null, onComplete: null, multi: false, all: false}, {}); return false;\" >\n    <img class=\"\" width=\"16\" height=\"16\" src=\"/toscawidgets/resources/endian.emi/static/images/action_enable_on.png\" alt=\"Disable\" border=\"0\" />\n</a>\n<a id=\"action_user_edit_6\" class=\"gridaction\" name=\"action\" href=\"?ACTION=edit&CONTROLLERNAME=user&ID=6\" title=\"Edit\" onclick=\"\" >\n    <img class=\"\" width=\"16\" height=\"16\" src=\"/toscawidgets/resources/endian.emi/static/images/action_edit.png\" alt=\"Edit\" border=\"0\" />\n</a>\n<a id=\"action_user_delete_6\" class=\"gridaction\" name=\"action\" href=\"#\" title=\"Delete\" onclick=\"if (! confirm('Do you want to delete this record?')) {return false}; jQuery('#action_user_delete_6').emigridaction({ request_type: 'GET', gridid: 'user_datagrid', idfield: 'ID', controllername: 'user', link: '/manage/vpnauthentication/user/json?ACTION=delete&CONTROLLERNAME=user&ID=6', errormessage: 'Action could not be performed.', beforeExecute: null, onExecute: null, onSuccess: null, onError: null, onComplete: null, multi: false, all: false}, {}); return false;\" >\n    <img class=\"\" width=\"16\" height=\"16\" src=\"/toscawidgets/resources/endian.emi/static/images/action_delete.png\" alt=\"Delete\" border=\"0\" />\n</a>\n</span>", "name": "wspringer"}, {"remark": "-", "ID": "<input type=\"checkbox\" name=\"ID\"  value=\"3\" />", "actions": "<span><a id=\"action_user_enable_3\" class=\"gridaction\" name=\"action\" href=\"#\" title=\"Disable\" onclick=\" jQuery('#action_user_enable_3').emigridaction({ request_type: 'GET', gridid: 'user_datagrid', idfield: 'ID', controllername: 'user', link: '/manage/vpnauthentication/user/json?ACTION=enable&CONTROLLERNAME=user&ID=3&enabled=off', errormessage: 'Action could not be performed.', beforeExecute: null, onExecute: null, onSuccess: null, onError: null, onComplete: null, multi: false, all: false}, {}); return false;\" >\n    <img class=\"\" width=\"16\" height=\"16\" src=\"/toscawidgets/resources/endian.emi/static/images/action_enable_on.png\" alt=\"Disable\" border=\"0\" />\n</a>\n<a id=\"action_user_edit_3\" class=\"gridaction\" name=\"action\" href=\"?ACTION=edit&CONTROLLERNAME=user&ID=3\" title=\"Edit\" onclick=\"\" >\n    <img class=\"\" width=\"16\" height=\"16\" src=\"/toscawidgets/resources/endian.emi/static/images/action_edit.png\" alt=\"Edit\" border=\"0\" />\n</a>\n<a id=\"action_user_delete_3\" class=\"gridaction\" name=\"action\" href=\"#\" title=\"Delete\" onclick=\"if (! confirm('Do you want to delete this record?')) {return false}; jQuery('#action_user_delete_3').emigridaction({ request_type: 'GET', gridid: 'user_datagrid', idfield: 'ID', controllername: 'user', link: '/manage/vpnauthentication/user/json?ACTION=delete&CONTROLLERNAME=user&ID=3', errormessage: 'Action could not be performed.', beforeExecute: null, onExecute: null, onSuccess: null, onError: null, onComplete: null, multi: false, all: false}, {}); return false;\" >\n    <img class=\"\" width=\"16\" height=\"16\" src=\"/toscawidgets/resources/endian.emi/static/images/action_delete.png\" alt=\"Delete\" border=\"0\" />\n</a>\n</span>", "name": "wwendt"}], "page": 1}

https://192.168.19.1:10443/manage/ca/certificate/json_grid?controllername=&

{"records": 1, "total": 1, "data": [{"not_after": "2026-06-06", "ca_name": "ca", "description": "24.111.67.50", "actions": "<span><a id=\"action__info_24.111.67.50cert.pem\" class=\"gridaction\" name=\"action\" href=\"info?ID=24.111.67.50cert.pem\" title=\"View details\" onclick=\"\" >\n    <img class=\"\" width=\"16\" height=\"16\" src=\"/images/info.png\" alt=\"View details\" border=\"0\" />\n</a>\n<a id=\"action__pem_24.111.67.50cert.pem\" class=\"gridaction\" name=\"action\" href=\"pem?ID=24.111.67.50cert.pem\" title=\"Download certificate\" onclick=\"\" >\n    <img class=\"\" width=\"16\" height=\"16\" src=\"/images/download.png\" alt=\"Download certificate\" border=\"0\" />\n</a>\n<a id=\"action__p12_24.111.67.50cert.pem\" class=\"gridaction\" name=\"action\" href=\"p12?ID=24.111.67.50cert.pem\" title=\"Download PKCS12 file\" onclick=\"\" >\n    <img class=\"\" width=\"16\" height=\"16\" src=\"/images/download_encrypted.png\" alt=\"Download PKCS12 file\" border=\"0\" />\n</a>\n<a id=\"action__delete_private_key_24.111.67.50cert.pem\" class=\"gridaction\" name=\"action\" href=\"?ACTION=delete_private_key&CONTROLLERNAME=&ID=24.111.67.50cert.pem\" title=\"Delete the private key\" onclick=\"if (! confirm('Are you sure to delete the private key?')) {return false};\" >\n    <img class=\"\" width=\"16\" height=\"16\" src=\"/images/delete_encrypted.png\" alt=\"Delete the private key\" border=\"0\" />\n</a>\n\n<a id=\"action__delete_24.111.67.50cert.pem\" class=\"gridaction\" name=\"action\" href=\"?ACTION=delete&CONTROLLERNAME=&ID=24.111.67.50cert.pem\" title=\"Revoke the certificate\" onclick=\"if (! confirm('Are you sure to revoke the certificate?')) {return false};\" >\n    <img class=\"\" width=\"16\" height=\"16\" src=\"/images/linknotok.png\" alt=\"Revoke the certificate\" border=\"0\" />\n</a></span>", "subject": "C=IT O=efw CN=24.111.67.50"}], "page": 1}

https://192.168.19.1:10443/manage/ca/certificate_authority/json_grid?controllername=&

{"records": 1, "total": 1, "data": [{"not_after": "2026-06-06", "description": "efw CA (default)", "actions": "<span><a id=\"action__info_cacert.pem\" class=\"gridaction\" name=\"action\" href=\"info?ID=cacert.pem\" title=\"View details\" onclick=\"\" >\n    <img class=\"\" width=\"16\" height=\"16\" src=\"/images/info.png\" alt=\"View details\" border=\"0\" />\n</a>\n<a id=\"action__pem_cacert.pem\" class=\"gridaction\" name=\"action\" href=\"pem?ID=cacert.pem\" title=\"Download certificate\" onclick=\"\" >\n    <img class=\"\" width=\"16\" height=\"16\" src=\"/images/download.png\" alt=\"Download certificate\" border=\"0\" />\n</a>\n<a id=\"action__delete_cacert.pem\" class=\"gridaction\" name=\"action\" href=\"?ACTION=delete&CONTROLLERNAME=&ID=cacert.pem\" title=\"Remove CA certificate\" onclick=\"if (! confirm('ATTENTION: By deleting CA certificate associated certificates are deleted as well!')) {return false};\" >\n    <img class=\"\" width=\"16\" height=\"16\" src=\"/images/delete.png\" alt=\"Remove CA certificate\" border=\"0\" />\n</a></span>", "subject": "C=IT O=efw CN=efw CA"}], "page": 1}

https://192.168.19.1:10443/manage/ca/revoked_certificate/json_grid?controllername=&

{"records": 0, "total": 1, "data": [], "page": 1}

https://192.168.19.1:10443/manage/ca/crl/json_grid?controllername=&

{"records": 1, "total": 1, "data": [{"last_update": "", "name": "ca", "actions": "<span><a id=\"action__info_ca.crl\" class=\"gridaction\" name=\"action\" href=\"info?ID=ca.crl\" title=\"View details\" onclick=\"\" >\n    <img class=\"\" width=\"16\" height=\"16\" src=\"/images/info.png\" alt=\"View details\" border=\"0\" />\n</a>\n<a id=\"action__crl_ca.crl\" class=\"gridaction\" name=\"action\" href=\"crl?ID=ca.crl\" title=\"Download CRL file\" onclick=\"\" >\n    <img class=\"\" width=\"16\" height=\"16\" src=\"/images/download.png\" alt=\"Download CRL file\" border=\"0\" />\n</a></span>", "issuer": ""}], "page": 1}

28
Dev Stuff / Canned Perl based Dashboard JSON XHR Request Data Responses
« Last post by razwall on November 20, 2024, 12:44:56 PM »
Code: [Select]
#!/usr/bin/perl -W

#print "Content-Type: Text/HTML\n\n";

if ($ENV{'REQUEST_METHOD'} eq 'GET') {
      $in = $ENV{'QUERY_STRING'};
}
if ($ENV{'REQUEST_METHOD'} eq 'POST') {
$in = <STDIN>;
}

@in = split(/&/, $in);
foreach(@in) {
($k,$v) = split(/=/,$_);
$k =~ tr/+/ /;
$k =~ s/%([a-fA-F0-9][a-fA-F0-9])/pack("C", hex($1))/eg;
$k =~ s/\+/ /g;
$v =~ tr/+/ /;
$v =~ s/%([a-fA-F0-9][a-fA-F0-9])/pack("C", hex($1))/eg;
$v =~ s/\+/ /g;
#$v =~ s///g;
${$k} = $v;
#print "$k = $v\n";
}

print "Content-Type: application/json\n\n";


if($plugin eq  "hardware") {
print qq~
{"cached": false, "time": 1731600469.0089741, "storage": [{"USAGE": "3", "TOTAL": "15993 MB", "NAME": "Memory", "KEY":
"memory"}, {"USAGE": "0", "TOTAL": "15991 MB", "NAME": "Swap", "KEY": "swap"}, {"USAGE": "19", "TOTAL": "4.8G", "NAME":
"Main disk", "KEY": "df-root"}, {"USAGE": "16", "TOTAL": "117.8G", "NAME": "Data disk", "KEY": "df-var"}, {"USAGE": "8",
"TOTAL": "120M", "NAME": "Configuration disk", "KEY": "df-var/efw"}, {"USAGE": "5", "TOTAL": "78.5G", "NAME": "Log disk",
"KEY": "df-var/log"}], "cpustat": {"global": {"system": 487798, "cpu_id": "global", "idle": 197231268, "user": 1720558,
"total": 199439624, "nice": 0}, "1": {"system": 59522, "cpu_id": "1", "idle": 24677804, "user": 204225, "total": 24941551,
"nice": 0}, "0": {"system": 58756, "cpu_id": "0", "idle": 24606690, "user": 241307, "total": 24906753, "nice": 0}, "3":
{"system": 58025, "cpu_id": "3", "idle": 24693697, "user": 187583, "total": 24939305, "nice": 0}, "2": {"system": 60161,
"cpu_id": "2", "idle": 24660268, "user": 205603, "total": 24926032, "nice": 0}, "5": {"system": 65200, "cpu_id": "5",
"idle": 24647361, "user": 210924, "total": 24923485, "nice": 0}, "4": {"system": 65501, "cpu_id": "4", "idle": 24638473,
"user": 232284, "total": 24936258, "nice": 0}, "7": {"system": 59403, "cpu_id": "7", "idle": 24656967, "user": 200100,
"total": 24916470, "nice": 0}, "6": {"system": 61230, "cpu_id": "6", "idle": 24650008, "user": 238532, "total": 24949770,
"nice": 0}}}
~;
}

if($plugin eq "uplinks") {
print qq~
{"cacheHitAt": 1731600455.4530821, "cachedOn": 1731600454.6696789, "time": 1731600454.66975, "uplinks": [{"status":
"ACTIVE", "defaultGatewayTimestamp": 1731349117.8499999, "managed": "on", "shouldBeUp": true, "canStart": true,
"isLinkAlive": true, "data": {"name": "'Main uplink'", "ip": "x.x.x.x", "last_retry": "", "interface": "eth3", "type":
"STATIC", "gateway": "x.x.x.x"}, "defaultGateway": true, "uptime": "2d 21h 50m 14s", "name": "main", "isLinkActive":
true, "enabled": "on", "autostart": "on", "hasChanged": true}, {"status": "ACTIVE", "defaultGatewayTimestamp": -1,
"managed": "on", "shouldBeUp": true, "canStart": true, "isLinkAlive": true, "data": {"name": "'ITD WAN'", "ip":
"X.x.x.x", "last_retry": "", "interface": "eth2", "type": "DHCP", "gateway": "x.x.x.x"}, "defaultGateway": false,
"uptime": "2d 21h 49m 37s", "name": "uplink1", "isLinkActive": true, "enabled": "on", "autostart": "on", "hasChanged":
true}], "cached": true}
~;
}

if($plugin eq "service") {
print qq~
{"cacheHitAt": 1731600439.1212721, "tail-smtp/connections-virus": {"value": 0.0}, "tail-smtp/connections-spam": {"value":
0.0}, "tail-pop/connections-virus": {"value": 0.0}, "tail-smtp/connections-noqueue": {"value": 0.0},
"tail-http/connections-denied": {}, "cached": true, "tail-pop/connections-scanned": {"value": 0.0},
"tail-smtp/connections-clean": {"value": 0.0}, "time": 1731600436.315294, "tail-smtp/connections-incoming": {"value": 0.0},
"memory/memory-used": {"value": 521613300.0}, "tail-http/connections-hit": {}, "tail-http/connections-miss": {},
"tail-pop/connections-spam": {"value": 0.0}, "tail-http/connections-virus": {}, "cachedOn": 1731600436.315212,
"filecount-postfix_queue/files": {"value": 0.0}, "tail-smtp/connections-sent": {"value": 0.0}}
~;
}

if($plugin eq "network") {
print qq~
{"cached": false, "interfaces": {"collectd": {"netlink-br1/if_octets": {"rx": 1614897.0, "tx": 2907912.0}, "netlink-br0/if_octets": {"rx": 101043.5, "tx": 2187896.0}, "netlink-eth3/if_octets": {"rx": 5233503.0, "tx": 1751013.0}, "netlink-eth0.600/if_octets": {"rx": 0.0, "tx": 0.0}, "netlink-eth0.1/if_octets": {"rx": 103100.10000000001, "tx": 2187875.0}, "netlink-eth1.200/if_octets": {"rx": 1616984.0, "tx": 2907913.0}, "netlink-eth1.500/if_octets": {"rx": 0.0, "tx": 4781.5600000000004}, "netlink-eth2/if_octets": {"rx": 0.0, "tx": 0.0}, "netlink-eth0.700/if_octets": {"rx": 20.399819999999998, "tx": 248.39779999999999}, "netlink-br2/if_octets": {"rx": 0.0, "tx": 0.0}}, "devices": {"eth2": {"STATUS": "Up", "BRIDGE": false, "CHECKED": "checked", "CLASS": "red", "LINK": "Up", "IN": "", "DEVICE": "eth2", "TYPE": "ethernet", "DISPLAY": "eth2", "OUT": ""}, "eth3": {"STATUS": "Up", "BRIDGE": false, "CHECKED": "checked", "CLASS": "red", "LINK": "Up", "IN": "", "DEVICE": "eth3", "TYPE": "ethernet", "DISPLAY": "eth3", "OUT": ""}, "br2": {"STATUS": "Up", "BRIDGE": true, "CHECKED": "checked", "CLASS": "blue", "LINK": "Up", "IN": "", "DEVICE": "br2", "PHYSICAL": [{"STATUS": "Up", "CHECKED": "", "LINK": "Up", "IN": "", "DEVICE": "eth0.600", "TYPE": "ethernet", "DISPLAY": "eth0_600", "OUT": ""}], "TYPE": "ethernet", "DISPLAY": "br2", "OUT": ""}, "br1": {"STATUS": "Up", "BRIDGE": true, "CHECKED": "checked", "CLASS": "orange", "LINK": "Up", "IN": "", "DEVICE": "br1", "PHYSICAL": [{"STATUS": "Up", "CHECKED": "", "LINK": "Up", "IN": "", "DEVICE": "eth1.200", "TYPE": "ethernet", "DISPLAY": "eth1_200", "OUT": ""}, {"STATUS": "Up", "CHECKED": "", "LINK": "Up", "IN": "", "DEVICE": "eth1.500", "TYPE": "ethernet", "DISPLAY": "eth1_500", "OUT": ""}], "TYPE": "ethernet", "DISPLAY": "br1", "OUT": ""}, "br0": {"STATUS": "Up", "BRIDGE": true, "CHECKED": "checked", "CLASS": "green", "LINK": "Up", "IN": "", "DEVICE": "br0", "PHYSICAL": [{"STATUS": "Up", "CHECKED": "", "LINK": "Up", "IN": "", "DEVICE": "eth0.700", "TYPE": "ethernet", "DISPLAY": "eth0_700", "OUT": ""}, {"STATUS": "Up", "CHECKED": "", "LINK": "Up", "IN": "", "DEVICE": "eth0.1", "TYPE": "ethernet", "DISPLAY": "eth0_1", "OUT": ""}], "TYPE": "ethernet", "DISPLAY": "br0", "OUT": ""}}}, "names": ["collectd", "devices"], "time": 1731969100.4881721}
~;
}

if($plugin eq "system") {
print qq~
{"kernel": 0, "uptime": "2d 21h 49m", "cached": false, "kernel_value": "4.4.145.e7.4", "":
"", "appliance": "RazWall", "version": "1.0.0", "time": 1731600403.7565579}
~;
}

if($plugin eq "signatures") {
print qq~
{"cached": false, "signatures": {"Urlfilter blacklist": "2016.08.30 10:55", "Anti-spyware lists": "2024.11.13 12:17"},
"no_signatures_msg": "No recent signature updates found", "time": 1731600380.9465301}
~;
}



29
News / RazWall 1.0 Beta Build
« Last post by razwall on November 20, 2024, 12:07:01 PM »
Here is just a quick update on the fork of EndianCFW to RazWall.

A lot of things are still in the works. I will be cleaning up the files and structures to create the first github upload very soon. I hope people will arrive and assist in this process as things begin to pick up.
Here is the done list:

Dev Unit 1:
Remove EMI and related proprietary code. (remnants remain but are not used)
Replace efw-console I have implemented a very crude Perl based replacement
updated dashboard & overall theme
Added websocket service on Port 4000 on 127.0.0.1
Updated httpd configs and templates for proxy_wstunnel - Web socket gets proxy pass from wss://IP:10443/ws -> ws://127.0.0.1:4000
Step through code and remove all usage and mention of color zones (GREEN,BLUE,ORANGE,RED)
Step through code and replace colored zones with dynamic naming convention
Step through code and convert colored zone rules to named rules (GREEN,BLUE,ORANGE,RED) -> (LAN,WIFI,DMZ,WAN)

Dev unit 2:
Re organize all of the files structures to work primarily out of the /razwall directory
remove all path and mentions of Endian

Here is the to-do list:
Consolidate all the changes from Dev unit 1 and Dev unit 2
Re-work code to expand the DHCP scopes per naming zones
Add a section to create new rule sets so instead of just LAN,WIFI,DMZ,WAN we can add custom rulesets
Figure out a packaging routine
Figure out how to rework the ISO/USB packer routine/build environment
Figure out new setup/installer scripts/programs

I hope to get some volunteers to work on some of these projects, but i know I need to publish the code first!

Here are a few screenshots of my progress:

Dashboard/Theme, Console (simple for now), Zone Setup
30
General Discussion / RazWall will be an Endian Community Fork
« Last post by razwall on November 15, 2024, 03:49:44 PM »
Welcome to the birth of RazWall!
RazWall will be a open-source fork of the Endian Community Firewall project. While Endian has been a great piece of software it seems to have fallen behind. My goal is to rekindle the excitement Endian once created by removing the proprietary code and replace it with open source adaptations while also providing some much needed upgrades. Once we have some functional code, it will be published for the world to checkout, modify, and commit changes via Githiub. Let's build something great together!

-Bryan King
"The RazWall Guy"
Pages: 1 2 [3]