@@ -176,22 +176,10 @@ H
I
+
+P
+
+
+ - pluginctl (class in opnsense_helper.commands.commands)
-
- opnsense_helper.commands
+ python.autodocs.auth.add_user
-
- opnsense_helper.commands.commands
+ python.autodocs.auth.list_group_members
-
- opnsense_helper.config_manager
+ python.autodocs.dhcp.cleanup_leases4
-
- opnsense_helper.config_manager.config_manager
+ python.autodocs.dhcp.cleanup_leases6
-
- opnsense_helper.opnsense_helper
+ python.autodocs.dhcp.dnsmasq_watcher
- |
-
-
- opnsense_helper.scripts
+ python.autodocs.dhcp.get_kea_leases
-
- opnsense_helper.scripts.scripts
+ python.autodocs.dhcp.prefixes
-
- opnsense_helper.utils
+ python.autodocs.dns.query_dns
-
- opnsense_helper.utils.baseclass
+ python.autodocs.filter.kill_states
-
- opnsense_helper.utils.exec_class
+ python.autodocs.filter.list_states
-
- opnsense_helper.utils.frontend_utils
+ python.autodocs.filter.rollback_cancel
-
- opnsense_helper.utils.utils
+ python.autodocs.filter.rollback_timer
- |
-
+ -
+ python.autodocs.filter.update_bogons
-
P
-
- |
-
+ -
+ python.autodocs.firmware.changelog
+
+
|
-
+
+
+ python.autodocs.firmware.config
-R
-
- |
-
+
+ python.autodocs.firmware.connection
+
+
+
+ python.autodocs.firmware.details
+
+ |
-
+
+
+ python.autodocs.firmware.health
-S
-
- |
-
+
+ python.autodocs.firmware.launcher
+
+
+
+ python.autodocs.firmware.license
+
+
+
+ python.autodocs.firmware.lock
+
+
+
+ python.autodocs.firmware.plugin
+
+ |
-
+
+
+ python.autodocs.firmware.product
-U
-
+
+
+ python.autodocs.firmware.query
-V
-
-
- - Vlan (class in opnsense_helper.config_manager.config_manager)
+
+ -
+ python.autodocs.firmware.read
+
+
+ -
+ python.autodocs.firmware.reboot
+
+
+ -
+ python.autodocs.firmware.register
+
+
+ -
+ python.autodocs.firmware.reinstall
+
+
+ -
+ python.autodocs.firmware.remove
+
+
+ -
+ python.autodocs.firmware.resync
+
+
+ -
+ python.autodocs.firmware.running
+
+
+ -
+ python.autodocs.firmware.security
+
+
+ -
+ python.autodocs.firmware.sync
+
+
+ -
+ python.autodocs.firmware.unlock
+
+
+ -
+ python.autodocs.firmware.update
+
+
+ -
+ python.autodocs.firmware.upgrade
+
+
+ -
+ python.autodocs.health.updaterrd
+
+
+ -
+ python.autodocs.interfaces.carp_global_status
+
+
+ -
+ python.autodocs.interfaces.carp_set_status
+
+
+ -
+ python.autodocs.interfaces.ifctl
+
+
+ -
+ python.autodocs.interfaces.reconfigure_gifs
+
+
+ -
+ python.autodocs.interfaces.reconfigure_gres
+
+
+ -
+ python.autodocs.interfaces.reconfigure_laggs
+
+
+ |
+
+ -
+ python.autodocs.interfaces.reconfigure_neighbors
+
+
+ -
+ python.autodocs.interfaces.reconfigure_vips
+
+
+ -
+ python.autodocs.interfaces.reconfigure_vlans
+
+
+ -
+ python.autodocs.interfaces.rtsold_resolvconf
+
+
+ -
+ python.autodocs.interfaces.traffic_stats
+
+
+ -
+ python.autodocs.ipsec.get_legacy_vti
+
+
+ -
+ python.autodocs.netflow.flush_all
+
+
+ -
+ python.autodocs.openvpn.client_connect
+
+
+ -
+ python.autodocs.openvpn.client_disconnect
+
+
+ -
+ python.autodocs.openvpn.ovpn_service_control
+
+
+ -
+ python.autodocs.openvpn.tls_verify
+
+
+ -
+ python.autodocs.openvpn.user_pass_verify
+
+
+ -
+ python.autodocs.repos.FreeBSD
+
+
+ -
+ python.autodocs.repos.OPNsense
+
+
+ -
+ python.autodocs.routes.del_route
+
+
+ -
+ python.autodocs.routes.gateway_status
+
+
+ -
+ python.autodocs.routes.gateway_watcher
+
+
+ -
+ python.autodocs.routes.gateways
+
+
+ -
+ python.autodocs.shell.banner
+
+
+ -
+ python.autodocs.shell.defaults
+
+
+ -
+ python.autodocs.shell.firmware
+
+
+ -
+ python.autodocs.shell.halt
+
+
+ -
+ python.autodocs.shell.password
+
+
+ -
+ python.autodocs.shell.ping
+
+
+ -
+ python.autodocs.shell.reboot
+
+
+ -
+ python.autodocs.shell.restore
+
+
+ -
+ python.autodocs.shell.setaddr
+
+
+ -
+ python.autodocs.shell.setports
+
+
+ -
+ python.autodocs.suricata.listRuleMetadata
+
+
+ -
+ python.autodocs.suricata.setup
+
+
+ -
+ python.autodocs.syslog.clearlog
+
+
+ -
+ python.autodocs.syslog.list_applications
+
+
+ -
+ python.autodocs.syslog.queryLog
+
+
+ -
+ python.autodocs.syslog.streamLog
+
+
+ -
+ python.autodocs.system.cpu
+
+
+ -
+ python.autodocs.system.nameservers
+
+
+ -
+ python.autodocs.system.remote_backup
+
+
+ -
+ python.autodocs.system.ssl_ciphers
+
+
+ -
+ python.autodocs.system.status
+
+
+ -
+ python.autodocs.system.sysctl
+
+
+ -
+ python.autodocs.system.temperature
+
+
+ -
+ python.autodocs.unbound.cache
+
+
+ -
+ python.autodocs.unbound.logger
+
+
+ -
+ python.autodocs.unbound.restore_db
+
+
+ -
+ python.autodocs.unbound.start
+
+
+ -
+ python.autodocs.unbound.stats
+
+
+ -
+ python.autodocs.unbound.wrapper
+
+
+ |
+
+
+R
+
+
+S
+
+
+U
+
diff --git a/.docs/_build/html/index.html b/.docs/_build/html/index.html
index 977ba55..5728646 100644
--- a/.docs/_build/html/index.html
+++ b/.docs/_build/html/index.html
@@ -54,6 +54,30 @@
coonfig_manager
commands
scripts
+
+opnsense-scripts-autodocs
+
@@ -117,11 +141,7 @@ coonfig_manager
-coonfig_manager
+opnsense-scripts-autodocs
+
@@ -223,346 +223,8 @@ class Opnsense_Helper
Config_Manager class lets you assign configurations, by passing arrays of the corresponding Instances.
Config_Manager will parse those objects to xml and automatically reconfigure your devices.
-
--
-class opnsense_helper.config_manager.config_manager.Config_Manager(base, init)
-Bases: object
-Creates a Config_Manager object
-
--
-close_con()
-
-
-
--
-get_all(element)
-Get all objects of a given type from the in-memory xml data.
-This method returns a dictionary containing all objects of this type. The dictionary keys are the tags
-of the elements, and the values are dictionaries containing the
-attributes and subelements of the elements.
-Parameters
-
-
-- elementstr
The type of the objects to retrieve. Can be “dhcpd”, “interfaces”,
-or “vlans”.
-
-
-
-
-Returns
-
-
-- dict
A dictionary containing all objects of the given type.
-
-
-
-
-
-
-
--
-get_conf(_from=None, _to=None)
-Get the config file from the remote host and save it to a file.
-Parameters
-
-- _fromstr
The path to the file on the remote host.
-
-- _tostr
The path to the file on the local host. If None, the file is saved
-to the location specified in self.temp_path.
-
-
-
-
-
--
-get_dif()
-
-
-
--
-get_item(type, item)
-Retrieve a specific item from the in-memory XML data.
-This method retrieves an item of a specified type from the in-memory XML data, removes its ‘attr’ attribute,
-and returns the remaining attributes of the item.
-Parameters
-
-
-- typestr
The type of the item to retrieve. Can be “dhcpd”, “interfaces”, or “vlans”.
-
-
-
-
-- itemstr
The tag of the item to retrieve.
-
-
-
-
-Returns
-
-
-- dict
A dictionary containing the remaining attributes of the item after removing the ‘attr’ attribute.
-If the item is not found, prints a message and returns None.
-
-
-
-
-
-
-
--
-initialize()
-Initialize the configuration.
-This method reads the configuration from the in-memory configuration.
-The configuration is read from the
-remote host via the SSH protocol or the opnsense API.
-Either run get_backup() or get_conf() before calling this method.
-This method is not called automatically when the class is instantiated, so you need to get the conf file before and then call this method.
-
-
-
--
-put_file(_from=None, _to=None)
-Apply the configuration.
-Transfer a file from the local host to the remote host.
-Parameters
-
-
-- _fromstr
The path to the file on the local host.
-default: self.temp_path
-
-
-
-
-- _tostr
The destination path on the remote host where the file should be stored.
-default: self.conf_path
-
-
-
-
-
-
-
--
-remove_items(type, items, init=True, apply=True)
-
-
-
--
-save(output, put=True)
-Save the current configuration to a file.
-This method takes the current in-memory configuration and saves it to a
-file specified by the output parameter. The file is written in XML
-format.
-Parameters
-
-
-- outputstr
The path to the file to which the configuration should be written.
-default: self.temp_path
-
-
-
-
-- put: bool
Automatically copies the configuration to the firewall
-
-
-
-
-
-
-
--
-set(type, data)
-Set objects of a given type to the in-memory xml data.
-This method adds all objects given in the data parameter to the in-memory
-xml data. The objects are stored in the self.objects dictionary.
-Parameters
-
-
-- typestr
The type of the objects to add. Can be “dhcpd”, “interfaces”,
-or “vlans”.
-
-
-
-
-- datadict
A dictionary containing the objects to add. The keys are the tags of
-the elements, and the values are dictionaries containing the
-attributes and subelements of the elements.
-
-
-
-
-Returns
-None
-
-
-
-
-
--
-class opnsense_helper.config_manager.config_manager.Dhcpd(id=None, enable=None, range=None, ddnsdomainalgorithm='hmac-md')
-Bases: object
-
-class Dhcpd
-Creates a dhcp object
-Usage
-
-from opnsense_helper.config_manager.config_manager import Dhcpd
-dhcpd=Dhcpd(id="vlan", enable="1", range={"_from":"237.84.2.178","_to":"244.178.44.111"})
-
-
-
-
-
-Req params
-
-- idstr
the id of the object and identifier of the corresponding interface
-
-- enablestr
“1” or “0”
-
-- range: dict{_from:str,_to:str}
the range of ip addresses
-
-
-
-
-Defaults
-
-- ddnsdomainalgorithmstr
Domain Generation Algorithm - default = “hmac-md”
-
-
-
--
-initialize(parent)
-This method parses the xml parent and updates the class attributes
-
-
-
-
-
-
--
-class opnsense_helper.config_manager.config_manager.Interface(id=None, descr=None, interface=None, enable=None, ipaddr=None, subnet='32', spoofmac=None)
-Bases: object
-
-class Interface
-Creates a Interface object
-The ID is the technical identifier.
-This is required and you need to find out which “opt” to use,
-because rn there is no function that provides that.
-The interface key in the xml are the identifiers, in this case the class id`s.
-Im not sure if they have a certain naming convention
-Usage
-
-from opnsense_helper.config_manager.config_manager import Interface
-interface=Interface(id="vlan", descr="vlan", interface="vlan", enable="1", ipaddr="38.0.101.76", subnet="32", spoofmac="00:00:00:00:00:00")
-
-
-
-Required Args
-
-
-- idstr
the technical identifier
-
-
-
-
-- interfacestr
target interface
-
-
-
-
-- enablestr
1, or 0 for disable or disable
-
-
-
-
-- descrstr
description, or name
-
-
-
-
-Defaults
-
-
-- subnetstr
CIDR notation, default=”32”
-
-
-
-
-- ipaddrstr
the ipv4 address, default=None
-
-
-
-
-- spoofmac: str
the spoofed mac, default=None
-
-
-
-
-
--
-initialize(parent)
-This method parses the xml parent and updates the class attributes.
-It is used in the config_manager to initialize the class with the data from the xml.
-The parent element of the xml tree is passed as an argument.
-
-
-
-
-
-
--
-class opnsense_helper.config_manager.config_manager.Vlan(id=None, parentinterface=None, tag=None, vlanif=None, pcp='0', descr=None)
-Bases: object
-
-class Vlan
-Creates a vlan object
-Usage
-
-from opnsense_helper.config_manager.config_manager import Vlan
-vlan=Vlan(id="vlan", tag="1", pcp="1", descr="vlan", vlanif="vlan0.1")
-
+
-
- Required Args
-
-
-- id: str
the identifier needed for storage, since the technical identifier is always the same (“vlan”)
-
-
-
-
-- tag: str
the tag of the vlan
-
-
-
-
- Defaults
-
-
-- pcp: str
the priority code point, default = 0
-
-
-
-
-- descr: str
the description, default = $id
-
-
-
-
-- vlanif: str
the interface, default = “vlan0.”+tag
-
-
-
-
-
--
-initialize(parent)
-This method parses the xml parent and updates the class attributes.
-
-
-
-
-
commands
@@ -1669,6 +1331,7 @@
diff --git a/.docs/_build/html/search.html b/.docs/_build/html/search.html
index 0aaa2b9..b52bfd2 100644
--- a/.docs/_build/html/search.html
+++ b/.docs/_build/html/search.html
@@ -55,6 +55,30 @@
- coonfig_manager
- commands
- scripts
+
+opnsense-scripts-autodocs
+
diff --git a/.docs/_build/html/searchindex.js b/.docs/_build/html/searchindex.js
index 3ae9bb4..726edd1 100644
--- a/.docs/_build/html/searchindex.js
+++ b/.docs/_build/html/searchindex.js
@@ -1 +1 @@
-Search.setIndex({"alltitles": {"About:": [[1, null]], "Defaults": [[15, "defaults"]], "Example": [[0, "example"]], "Frontend Api": [[0, "frontend-api"]], "Opnsense-Helper": [[1, null], [15, null]], "Python API-Dokumentation": [[1, null]], "Req params": [[15, "req-params"]], "Result": [[0, "result"]], "about opnsense-helper": [[0, null]], "assign the config": [[0, "assign-the-config"]], "clas firmware": [[15, "clas-firmware"]], "class auth": [[15, "class-auth"]], "class Commands": [[15, "class-commands"]], "class Dhcpd": [[15, "class-dhcpd"]], "class Interface": [[15, "class-interface"]], "class Opnsense_Helper": [[15, "class-opnsense-helper"]], "class Scripts": [[15, "class-scripts"]], "class Shaper": [[15, "class-shaper"]], "class Shell": [[15, "class-shell"]], "class Vlan": [[15, "class-vlan"]], "class Wireguard": [[15, "class-wireguard"]], "class configctl": [[15, "class-configctl"]], "class dhcp": [[15, "class-dhcp"]], "class dns": [[15, "class-dns"]], "class filter": [[15, "class-filter"]], "class heatlh": [[15, "class-heatlh"]], "class interfaces": [[15, "class-interfaces"]], "class ipsec": [[15, "class-ipsec"]], "class netflow": [[15, "class-netflow"]], "class openssh": [[15, "class-openssh"]], "class openvpn": [[15, "class-openvpn"]], "class pluginctl": [[15, "class-pluginctl"]], "class reconfigure": [[15, "class-reconfigure"]], "class routes": [[15, "class-routes"]], "class suricata": [[15, "class-suricata"]], "class syslog": [[15, "class-syslog"]], "class system": [[15, "class-system"]], "class unbound": [[15, "class-unbound"]], "commands": [[15, "commands"]], "config_manager": [[0, "config-manager"]], "config_manager manual usage": [[0, "config-manager-manual-usage"]], "contribute": [[0, "contribute"]], "coonfig_manager": [[15, "coonfig-manager"]], "create the module objects": [[0, "create-the-module-objects"]], "install": [[0, "install"]], "motivation": [[0, "motivation"]], "opnsense_helper": [[2, null]], "opnsense_helper.commands": [[3, null]], "opnsense_helper.commands.commands": [[4, null]], "opnsense_helper.config_manager": [[5, null]], "opnsense_helper.config_manager.config_manager": [[6, null]], "opnsense_helper.opnsense_helper": [[7, null]], "opnsense_helper.scripts": [[8, null]], "opnsense_helper.scripts.scripts": [[9, null]], "opnsense_helper.utils": [[10, null]], "opnsense_helper.utils.baseclass": [[11, null]], "opnsense_helper.utils.exec_class": [[12, null]], "opnsense_helper.utils.frontend_utils": [[13, null]], "opnsense_helper.utils.utils": [[14, null]], "pip": [[0, "pip"]], "required variables": [[0, "required-variables"]], "scripts": [[15, "scripts"]], "scripts and commands": [[0, "scripts-and-commands"]], "usage": [[0, "usage"]]}, "docnames": ["README", "index", "opnsense_helper/opnsense_helper", "opnsense_helper/opnsense_helper.commands", "opnsense_helper/opnsense_helper.commands.commands", "opnsense_helper/opnsense_helper.config_manager", "opnsense_helper/opnsense_helper.config_manager.config_manager", "opnsense_helper/opnsense_helper.opnsense_helper", "opnsense_helper/opnsense_helper.scripts", "opnsense_helper/opnsense_helper.scripts.scripts", "opnsense_helper/opnsense_helper.utils", "opnsense_helper/opnsense_helper.utils.baseclass", "opnsense_helper/opnsense_helper.utils.exec_class", "opnsense_helper/opnsense_helper.utils.frontend_utils", "opnsense_helper/opnsense_helper.utils.utils", "python_package"], "envversion": {"sphinx": 62, "sphinx.domains.c": 3, "sphinx.domains.changeset": 1, "sphinx.domains.citation": 1, "sphinx.domains.cpp": 9, "sphinx.domains.index": 1, "sphinx.domains.javascript": 3, "sphinx.domains.math": 2, "sphinx.domains.python": 4, "sphinx.domains.rst": 2, "sphinx.domains.std": 2}, "filenames": ["README.md", "index.rst", "opnsense_helper/opnsense_helper.rst", "opnsense_helper/opnsense_helper.commands.rst", "opnsense_helper/opnsense_helper.commands.commands.rst", "opnsense_helper/opnsense_helper.config_manager.rst", "opnsense_helper/opnsense_helper.config_manager.config_manager.rst", "opnsense_helper/opnsense_helper.opnsense_helper.rst", "opnsense_helper/opnsense_helper.scripts.rst", "opnsense_helper/opnsense_helper.scripts.scripts.rst", "opnsense_helper/opnsense_helper.utils.rst", "opnsense_helper/opnsense_helper.utils.baseclass.rst", "opnsense_helper/opnsense_helper.utils.exec_class.rst", "opnsense_helper/opnsense_helper.utils.frontend_utils.rst", "opnsense_helper/opnsense_helper.utils.utils.rst", "python_package.rst"], "indexentries": {}, "objects": {"": [[2, 0, 0, "-", "opnsense_helper"]], "opnsense_helper": [[3, 0, 0, "-", "commands"], [5, 0, 0, "-", "config_manager"], [7, 0, 0, "-", "opnsense_helper"], [8, 0, 0, "-", "scripts"], [10, 0, 0, "-", "utils"]], "opnsense_helper.commands": [[15, 0, 0, "-", "commands"]], "opnsense_helper.commands.commands": [[15, 1, 1, "", "Commands"], [15, 1, 1, "", "configctl"], [15, 1, 1, "", "pluginctl"], [15, 1, 1, "", "reconfigure"]], "opnsense_helper.config_manager": [[15, 0, 0, "-", "config_manager"]], "opnsense_helper.config_manager.config_manager": [[15, 1, 1, "", "Config_Manager"], [15, 1, 1, "", "Dhcpd"], [15, 1, 1, "", "Interface"], [15, 1, 1, "", "Vlan"]], "opnsense_helper.config_manager.config_manager.Config_Manager": [[15, 2, 1, "", "close_con"], [15, 2, 1, "", "get_all"], [15, 2, 1, "", "get_conf"], [15, 2, 1, "", "get_dif"], [15, 2, 1, "", "get_item"], [15, 2, 1, "", "initialize"], [15, 2, 1, "", "put_file"], [15, 2, 1, "", "remove_items"], [15, 2, 1, "", "save"], [15, 2, 1, "", "set"]], "opnsense_helper.config_manager.config_manager.Dhcpd": [[15, 2, 1, "", "initialize"]], "opnsense_helper.config_manager.config_manager.Interface": [[15, 2, 1, "", "initialize"]], "opnsense_helper.config_manager.config_manager.Vlan": [[15, 2, 1, "", "initialize"]], "opnsense_helper.opnsense_helper": [[15, 1, 1, "", "Opnsense_Helper"]], "opnsense_helper.scripts": [[15, 0, 0, "-", "scripts"]], "opnsense_helper.scripts.scripts": [[15, 1, 1, "", "Scripts"], [15, 1, 1, "", "Wireguard"], [15, 1, 1, "", "auth"], [15, 1, 1, "", "dhcp"], [15, 1, 1, "", "dns"], [15, 1, 1, "", "filter"], [15, 1, 1, "", "firmware"], [15, 1, 1, "", "health"], [15, 1, 1, "", "interfaces"], [15, 1, 1, "", "ipsec"], [15, 1, 1, "", "netflow"], [15, 1, 1, "", "openssh"], [15, 1, 1, "", "openvpn"], [15, 1, 1, "", "routes"], [15, 1, 1, "", "shaper"], [15, 1, 1, "", "shell"], [15, 1, 1, "", "suricata"], [15, 1, 1, "", "syslog"], [15, 1, 1, "", "system"], [15, 1, 1, "", "unbound"]], "opnsense_helper.utils": [[11, 0, 0, "-", "baseclass"], [12, 0, 0, "-", "exec_class"], [13, 0, 0, "-", "frontend_utils"], [14, 0, 0, "-", "utils"]]}, "objnames": {"0": ["py", "module", "Python module"], "1": ["py", "class", "Python class"], "2": ["py", "method", "Python method"]}, "objtypes": {"0": "py:module", "1": "py:class", "2": "py:method"}, "terms": {"": [0, 15], "0": [0, 15], "00": [0, 15], "01": 0, "02": 0, "03": 0, "0tnitdbolveqvd9fu8wfedo3d3dy5wrutf": 0, "1": [0, 15], "10": [], "100": 0, "101": 15, "103": 0, "111": 15, "1500": 0, "16072": 0, "16384": 0, "168": 0, "1731025409": 0, "178": 15, "192": 0, "2": [0, 15], "200": 0, "237": 15, "24": 0, "244": 15, "25": 0, "3": 0, "32": 15, "38": 15, "4": [0, 15], "44": 15, "5": 0, "5jvvgoatpbaaa": 0, "6": 0, "64": 0, "7": 0, "76": 15, "80": [0, 1, 15], "84": 15, "A": 15, "If": 15, "It": 15, "No": 0, "Not": [0, 1], "The": [0, 1, 15], "There": 0, "__init__": 15, "_configur": 15, "_from": 15, "_to": [0, 15], "activ": 15, "add": [0, 15], "add_item": 0, "add_us": 15, "add_vlan": [], "address": [0, 15], "after": [0, 1, 15], "algorithm": 15, "all": [0, 1, 15], "also": [0, 15], "alwai": 15, "an": 15, "ani": 0, "anoth": 15, "ansibl": [], "answer": 0, "api": 15, "api_auth": [0, 15], "api_kei": [0, 15], "api_secret": [0, 15], "appli": [0, 1, 15], "ar": 15, "arg": 15, "argument": [0, 15], "arnl": 0, "around": [0, 1, 15], "arr": 0, "arrai": 15, "assign": [1, 15], "associ": 15, "attr": 15, "attribut": 15, "auth": [0, 1], "authent": 15, "automat": [0, 1, 15], "avail": 15, "back": 0, "backend": [0, 1], "banner": 15, "base": [0, 15], "base_class": 15, "bdist_wheel": 0, "becaus": 15, "befor": 15, "below": 15, "besid": 0, "bit": 0, "block": [], "blocklist": 15, "bool": 15, "build": 0, "c": [0, 15], "cach": 15, "call": [0, 1, 15], "can": [0, 1, 15], "captiveport": 15, "captur": 15, "carp_global_statu": 15, "carp_set_statu": 15, "case": 15, "cd": 0, "certain": 15, "certctl": 15, "chang": 0, "changelog": 15, "check": 15, "cidr": 15, "class": [0, 4, 6, 7, 9, 11, 12], "cleanup_leases4": 15, "cleanup_leases6": 15, "clearlog": 15, "client_connect": 15, "client_disconnect": 15, "clone": 0, "close_con": [0, 15], "code": 15, "collect": 0, "com": 0, "command": 1, "conf": [0, 15], "conf_path": [0, 15], "config": [1, 15], "config_manag": [1, 15], "configctl": [0, 1], "configd": 15, "configur": [0, 1, 15], "connect": 15, "contain": 15, "contribut": 1, "control": [0, 15], "convent": 15, "coonfig_manag": 1, "copi": [0, 15], "core": 0, "correspond": 15, "couldnt": 0, "crash_report": 0, "crashreport": 0, "creat": [1, 15], "cron": 15, "csv": 15, "current": [0, 15], "d": 15, "damn": 0, "data": 15, "ddnsdomainalgorithm": 15, "debug": [0, 15], "decid": 0, "def": 0, "default": 0, "defin": 0, "del_rout": 15, "delete_t": 15, "descr": [0, 15], "descript": 15, "destin": [0, 15], "detail": 15, "detect": 0, "devic": [0, 15], "device_info": 15, "dhclient": 15, "dhcp": [0, 1], "dhcpd": [0, 1], "dhcpd6": 15, "dhcpv4": 0, "diagnost": 0, "dict": 15, "dictionari": 15, "directli": 0, "directori": 15, "disabl": 15, "disconnect": 15, "dn": 1, "dnsmasq_watch": 15, "do": 0, "doc": [0, 15], "doe": 0, "doesnt": 0, "domain": 15, "done": 0, "download": 0, "download_geoip": 15, "dropalertlog": 15, "dummynet_stat": 15, "dump": 15, "dump_log": 15, "dynam": 15, "e": 15, "each": 15, "either": 15, "ejl4fiu9yfnk": 0, "element": 15, "empti": 15, "enabl": [0, 1, 15], "error": 0, "everi": 0, "exampl": 15, "exec_class": 15, "execut": 15, "exist": 0, "expir": 0, "export_detail": 15, "f": 15, "fals": [0, 15], "fe80": 0, "fetchdata": 15, "ffrom": [], "file": [0, 15], "filepath": 0, "filter": 1, "find": [0, 15], "find_table_refer": 15, "firewal": [0, 15], "firmwar": 1, "first": [], "flag": [0, 15], "flowctl_stat": 15, "flowd_aggreg": 15, "flowd_aggregate_metadata": 15, "flush": 15, "flush_al": 15, "flush_rrd": 15, "follow": 15, "forc": 0, "fork": 0, "format": 15, "found": [0, 15], "fozldqy92": 0, "framework": [], "from": [0, 15], "fron": [], "frontend": 1, "function": [13, 14, 15], "g": 15, "gaqmpk": 0, "gatewai": [0, 15], "gateway_statu": 15, "gateway_watch": 15, "gen_keypair": 15, "gener": 15, "generate_cert": 15, "get": 15, "get_al": 15, "get_backup": 15, "get_conf": [0, 15], "get_dif": 15, "get_item": 15, "get_kea_leas": 15, "get_leas": 15, "get_leases6": 15, "get_legacy_vti": 15, "get_timeseri": 15, "get_top_usag": 15, "git": 0, "github": 0, "given": [0, 15], "god": 0, "ha": 0, "halt": 15, "have": [0, 15], "health": [1, 15], "hmac": 15, "hook": 15, "host": [0, 15], "hostnam": 15, "how": [], "howev": 0, "i": [0, 1, 15], "id": 15, "identifi": 15, "if_reg": 15, "ifconfig": 15, "ifctl": 15, "im": 15, "import": [0, 15], "info": 15, "inherit": 15, "init": [0, 15], "init_config_manag": 15, "initi": [0, 15], "instal": [1, 15], "installrul": 15, "instanc": 15, "instanti": 15, "int": [], "interfac": [0, 1], "invok": 15, "ip": 15, "ipaddr": 15, "ipfw": 15, "ipsec": 1, "ipv4": [0, 15], "ipv6": 0, "item": [0, 15], "its": [0, 15], "just": [0, 15], "kea": 15, "kei": 15, "kill_sess": 15, "kill_stat": 15, "kill_tabl": 15, "lan": [0, 1], "latest": 15, "launcher": 15, "let": [0, 15], "lib": 15, "librari": 15, "libvirt": 0, "licens": 15, "line": 0, "link": 0, "linkdown": 15, "linkup": 15, "list": 15, "list_appl": 15, "list_arp": 15, "list_group_memb": 15, "list_leas": 15, "list_macdb": 15, "list_ndp": 15, "list_osfp": 15, "list_pfsync": 15, "list_rule_id": 15, "list_sad": 15, "list_sockstat": 15, "list_spd": 15, "list_stat": 15, "list_statu": 15, "list_tabl": 15, "listalertlog": 15, "listinstallableruleset": 15, "listreport": 15, "listrulemetadata": 15, "lo0": 0, "load": 0, "local": [0, 15], "localhost": 0, "locat": 15, "lock": 15, "lockout_handl": 15, "log": 0, "log_arch": 15, "logformat": 15, "logger": 15, "loginterfac": 0, "logloc": 0, "look": [], "m": 0, "mac": 15, "macinfo": 15, "made": 0, "mai": 0, "main": 0, "make": 0, "matter": 0, "md": 15, "me": 0, "memori": 15, "messag": [0, 15], "metadata": 15, "method": [0, 15], "modul": [2, 3, 5, 8, 10], "monit": 15, "motiv": 1, "mpd": 15, "mself": 0, "mtu": 0, "must": 15, "my": 0, "myservic": 15, "n": 0, "name": 15, "nameserv": 15, "necessari": 15, "need": [0, 15], "netflow": 1, "netif": 0, "network": 0, "nhop": 0, "none": [0, 15], "notat": 15, "null": 0, "object": 15, "onc": [0, 1], "one": 0, "onsense_help": 15, "openssh": 1, "openvpn": 1, "oper": 15, "opnsense_help": [0, 1], "opt": 15, "opt1": 0, "opt2": 0, "opt3": 0, "opt4": 0, "option": 15, "other": [0, 1], "out": 15, "output": [0, 15], "ovpn_ev": 15, "ovpn_service_control": 15, "ovpn_statu": 15, "packag": [0, 15], "param": [], "paramet": 15, "parent": 15, "parentinterfac": 15, "pars": [0, 15], "pass": 15, "passw": [0, 15], "password": 15, "path": 15, "pcp": [0, 15], "pfstatist": 15, "pftablecount": 15, "pftop": 15, "phisic": 0, "php": [0, 15], "phy": [0, 1], "pid": 0, "ping": 15, "pip": [1, 15], "pleas": [], "plugin": 15, "pluginctl": [0, 1], "pod": 0, "point": 15, "portprob": 15, "ppp": 15, "prefix": 15, "primari": 15, "print": 15, "prioriti": 15, "problem": 0, "product": 15, "project": 0, "properti": 15, "proto": 0, "protocol": 15, "provid": [0, 15], "pull": 0, "put": 15, "put_fil": [0, 15], "py": [0, 15], "pypi": 0, "python": 0, "python3": 0, "queri": 15, "query_dn": 15, "queryalertlog": 15, "queryinstalledrul": 15, "querylog": 15, "question": 0, "r": 15, "rang": 15, "raw": 15, "rc": 0, "read": [0, 15], "read_log": 15, "realli": 0, "reboot": 15, "reconfigur": [0, 1], "reconfigure_lagg": 15, "reconfigure_neighbor": 15, "reconfigure_vip": 15, "reconfigure_vlan": 15, "regist": 15, "registr": 15, "reinstal": 15, "remain": 15, "remot": 15, "remote_backup": 15, "remov": 15, "remove_item": [0, 15], "renam": 15, "repli": 0, "repo": 0, "request": 0, "requir": [1, 15], "reresolv": 15, "restart": 15, "restor": 15, "restore_db": 15, "resync": 15, "retriev": 15, "return": 15, "rfc5246_cipher_suit": 15, "right": 0, "rn": 15, "rollback_cancel": 15, "rollback_tim": 15, "root": 0, "rout": [0, 1], "router": 0, "rqia15f1yx1snikgciel2qnojwhbekrawie0anryceh9hey5ifgzlf3da4yj": 0, "rrd_pfstate_info": 15, "rtsold_resolvconf": 15, "rule": [0, 15], "rule_stat": 15, "run": [0, 15], "run_unittest": 15, "runtim": [0, 1], "saddelet": 15, "same": 15, "save": [0, 15], "script": 1, "secur": 15, "see": 15, "self": 15, "servic": [0, 15], "service_dump": 15, "set": [0, 15], "set_vlan": [], "setaddr": 15, "setport": 15, "setup": [0, 15], "sh": [0, 15], "shaper": 1, "shell": 1, "shh": [0, 1], "shop": 0, "should": 15, "show_rout": [0, 15], "sinc": 15, "singl": 0, "snippet": 0, "so": [0, 15], "soon": 0, "spddelet": 15, "specif": 15, "specifi": 15, "spoof": 15, "spoofmac": 15, "ssh": [0, 15], "ssh_auth": [0, 15], "ssh_queri": 15, "ssl": [0, 15], "ssl_cipher": 15, "start": [0, 15], "stat": 15, "statist": 15, "statu": [0, 15], "statuscod": 0, "storag": 15, "store": 15, "str": [0, 15], "string": 15, "stuff": [0, 1], "subel": 15, "subnet": 15, "subr": 15, "support": 0, "sure": [0, 15], "suricata": 1, "sync": 15, "syntax": 0, "sysctl": 15, "syslog": 1, "system": [0, 1], "t6srlmkd1": 0, "tag": [0, 15], "take": 15, "target": 15, "technic": 15, "temp": 15, "temp_path": [0, 15], "temperatur": 15, "templat": 15, "temporari": 15, "terraform": 0, "thei": 15, "them": 0, "thi": [0, 15], "those": 15, "timestamp": 0, "tls_verifi": 15, "tmp": 0, "todo": [], "tracerout": 15, "traffic_stat": 15, "traffic_top": 15, "transfer": 15, "tree": 15, "trigger_config_changed_ev": 15, "true": [0, 15], "try": [], "type": 15, "u": 0, "ubound": [], "ug": 0, "uh": 0, "ui": 0, "unbound": 1, "unbound_watch": 15, "unlock": 15, "up": 15, "updat": 15, "update_bogon": 15, "update_t": 15, "updown_ev": 15, "upgrad": [0, 15], "uptim": 15, "us": [0, 1, 15], "usag": [1, 15], "user": [0, 15], "user_pass_verifi": 15, "using_api": 0, "usr": 0, "valu": 15, "var": [], "variabl": 1, "variou": 15, "verbos": [0, 15], "verifi": [0, 15], "via": [0, 1, 15], "virtual": [], "vlan": [0, 1], "vlan0": [0, 15], "vlan1": 0, "vlan2": 0, "vlan3": 0, "vlanif": [0, 15], "vlans_api": 0, "vm": 0, "vtnet0": 0, "vtnet1": 0, "want": 0, "webgui": 15, "well": 0, "were": 0, "wg": 15, "wg_show": 15, "when": [0, 15], "where": 15, "which": 15, "wireguard": 1, "wrapper": 15, "written": 15, "xml": [0, 15], "yi8ka9": 0, "you": [0, 1, 15], "your": [0, 1, 15], "zf": 15}, "titles": ["about opnsense-helper", "Opnsense-Helper", "opnsense_helper", "opnsense_helper.commands", "opnsense_helper.commands.commands", "opnsense_helper.config_manager", "opnsense_helper.config_manager.config_manager", "opnsense_helper.opnsense_helper", "opnsense_helper.scripts", "opnsense_helper.scripts.scripts", "opnsense_helper.utils", "opnsense_helper.utils.baseclass", "opnsense_helper.utils.exec_class", "opnsense_helper.utils.frontend_utils", "opnsense_helper.utils.utils", "Opnsense-Helper"], "titleterms": {"about": [0, 1], "api": [0, 1], "arg": [], "assign": 0, "auth": 15, "baseclass": 11, "cla": 15, "class": 15, "command": [0, 3, 4, 15], "config": 0, "config_manag": [0, 5, 6], "configctl": 15, "contribut": 0, "coonfig_manag": 15, "creat": 0, "default": 15, "dhcp": 15, "dhcpd": 15, "dn": 15, "dokument": 1, "exampl": 0, "exec_class": 12, "filter": 15, "firmwar": 15, "frontend": 0, "frontend_util": 13, "heatlh": 15, "helper": [0, 1, 15], "instal": 0, "interfac": 15, "ipsec": 15, "manual": 0, "modul": 0, "motiv": 0, "netflow": 15, "object": 0, "openssh": 15, "openvpn": 15, "opnsens": [0, 1, 15], "opnsense_help": [2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15], "param": 15, "pip": 0, "pluginctl": 15, "python": 1, "reconfigur": 15, "req": 15, "requir": 0, "result": 0, "rout": 15, "script": [0, 8, 9, 15], "shaper": 15, "shell": 15, "suricata": 15, "syslog": 15, "system": 15, "unbound": 15, "usag": 0, "util": [10, 11, 12, 13, 14], "variabl": 0, "vlan": 15, "wireguard": 15}})
\ No newline at end of file
+Search.setIndex({"alltitles": {"About:": [[1, null]], "Example": [[0, "example"]], "Frontend Api": [[0, "frontend-api"]], "Opnsense-Helper": [[1, null], [3, null]], "Python API-Dokumentation": [[1, null]], "Result": [[0, "result"]], "Wireguard": [[2, "wireguard"]], "about opnsense-helper": [[0, null]], "assign the config": [[0, "assign-the-config"]], "auth": [[2, null]], "clas firmware": [[3, "clas-firmware"]], "class auth": [[3, "class-auth"]], "class Commands": [[3, "class-commands"]], "class Opnsense_Helper": [[3, "class-opnsense-helper"]], "class Scripts": [[3, "class-scripts"]], "class Shaper": [[3, "class-shaper"]], "class Shell": [[3, "class-shell"]], "class Wireguard": [[3, "class-wireguard"]], "class configctl": [[3, "class-configctl"]], "class dhcp": [[3, "class-dhcp"]], "class dns": [[3, "class-dns"]], "class filter": [[3, "class-filter"]], "class heatlh": [[3, "class-heatlh"]], "class interfaces": [[3, "class-interfaces"]], "class ipsec": [[3, "class-ipsec"]], "class netflow": [[3, "class-netflow"]], "class openssh": [[3, "class-openssh"]], "class openvpn": [[3, "class-openvpn"]], "class pluginctl": [[3, "class-pluginctl"]], "class reconfigure": [[3, "class-reconfigure"]], "class routes": [[3, "class-routes"]], "class suricata": [[3, "class-suricata"]], "class syslog": [[3, "class-syslog"]], "class system": [[3, "class-system"]], "class unbound": [[3, "class-unbound"]], "commands": [[3, "commands"]], "config_manager": [[0, "config-manager"]], "config_manager manual usage": [[0, "config-manager-manual-usage"]], "contribute": [[0, "contribute"]], "coonfig_manager": [[3, "coonfig-manager"]], "create the module objects": [[0, "create-the-module-objects"]], "definitions": [[2, "definitions"]], "dhcp": [[2, "module-python.autodocs.dhcp.cleanup_leases4"]], "dns": [[2, "module-python.autodocs.dns.query_dns"]], "filter": [[2, "module-python.autodocs.filter.kill_states"]], "firmware": [[2, "module-python.autodocs.firmware.changelog"]], "health": [[2, "module-python.autodocs.health.updaterrd"]], "install": [[0, "install"]], "interfaces": [[2, "module-python.autodocs.interfaces.carp_global_status"]], "ipsec": [[2, "module-python.autodocs.ipsec.get_legacy_vti"]], "motivation": [[0, "motivation"]], "netflow": [[2, "module-python.autodocs.netflow.flush_all"]], "openssh": [[2, "openssh"]], "openvpn": [[2, "module-python.autodocs.openvpn.client_connect"]], "opnsense-scripts-autodocs": [[1, null]], "pip": [[0, "pip"]], "repos": [[2, "module-python.autodocs.repos.FreeBSD"]], "required variables": [[0, "required-variables"]], "routes": [[2, "module-python.autodocs.routes.del_route"]], "script FreeBSD.php": [[2, "script-freebsd-php"]], "script OPNsense.php": [[2, "script-opnsense-php"]], "script add_user.php": [[2, "script-add-user-php"]], "script banner.php": [[2, "script-banner-php"]], "script cache.sh": [[2, "script-cache-sh"]], "script carp_global_status.php": [[2, "script-carp-global-status-php"]], "script carp_set_status.php": [[2, "script-carp-set-status-php"]], "script changelog.sh": [[2, "script-changelog-sh"]], "script cleanup_leases4.php": [[2, "script-cleanup-leases4-php"]], "script cleanup_leases6.php": [[2, "script-cleanup-leases6-php"]], "script clearlog.php": [[2, "script-clearlog-php"]], "script client_connect.php": [[2, "script-client-connect-php"]], "script client_disconnect.sh": [[2, "script-client-disconnect-sh"]], "script connection.sh": [[2, "script-connection-sh"]], "script cpu.py": [[2, "script-cpu-py"]], "script defaults.php": [[2, "script-defaults-php"]], "script del_route.py": [[2, "script-del-route-py"]], "script details.sh": [[2, "script-details-sh"]], "script dnsmasq_watcher.py": [[2, "script-dnsmasq-watcher-py"]], "script env_init.sh": [[2, "script-env-init-sh"]], "script firmware.sh": [[2, "script-firmware-sh"]], "script firmware_runner.sh": [[2, "script-firmware-runner-sh"]], "script flush_all.sh": [[2, "script-flush-all-sh"]], "script gateway_status.php": [[2, "script-gateway-status-php"]], "script gateway_watcher.php": [[2, "script-gateway-watcher-php"]], "script gateways.php": [[2, "script-gateways-php"]], "script get_kea_leases.py": [[2, "script-get-kea-leases-py"]], "script get_legacy_vti.php": [[2, "script-get-legacy-vti-php"]], "script halt.php": [[2, "script-halt-php"]], "script health.sh": [[2, "script-health-sh"]], "script hostnames.sh": [[2, "script-hostnames-sh"]], "script ifctl.sh": [[2, "script-ifctl-sh"]], "script install.sh": [[2, "script-install-sh"]], "script kill_states.py": [[2, "script-kill-states-py"]], "script latest.php": [[2, "script-latest-php"]], "script license.sh": [[2, "script-license-sh"]], "script listRuleMetadata.py": [[2, "script-listrulemetadata-py"]], "script list_applications.php": [[2, "script-list-applications-php"]], "script list_group_members.php": [[2, "script-list-group-members-php"]], "script list_states.py": [[2, "script-list-states-py"]], "script lock.sh": [[2, "script-lock-sh"]], "script logger.py": [[2, "script-logger-py"]], "script nameservers.php": [[2, "script-nameservers-php"]], "script netboot.php": [[2, "script-netboot-php"]], "script ovpn_service_control.php": [[2, "script-ovpn-service-control-php"]], "script password.php": [[2, "script-password-php"]], "script ping.php": [[2, "script-ping-php"]], "script plugin.sh": [[2, "script-plugin-sh"]], "script prefixes.sh": [[2, "script-prefixes-sh"], [2, "module-0"]], "script product.php": [[2, "script-product-php"]], "script query.sh": [[2, "script-query-sh"]], "script queryLog.py": [[2, "script-querylog-py"]], "script query_dns.py": [[2, "script-query-dns-py"]], "script read.sh": [[2, "script-read-sh"]], "script reboot.sh": [[2, "script-reboot-sh"]], "script reconfigure_gifs.php": [[2, "script-reconfigure-gifs-php"]], "script reconfigure_gres.php": [[2, "script-reconfigure-gres-php"]], "script reconfigure_laggs.php": [[2, "script-reconfigure-laggs-php"]], "script reconfigure_neighbors.php": [[2, "script-reconfigure-neighbors-php"]], "script reconfigure_vips.php": [[2, "script-reconfigure-vips-php"]], "script reconfigure_vlans.php": [[2, "script-reconfigure-vlans-php"]], "script register.php": [[2, "script-register-php"]], "script reinstall.sh": [[2, "script-reinstall-sh"]], "script remote_backup.php": [[2, "script-remote-backup-php"]], "script remove.sh": [[2, "script-remove-sh"]], "script restore.sh": [[2, "script-restore-sh"]], "script restore_db.py": [[2, "script-restore-db-py"]], "script resync.sh": [[2, "script-resync-sh"]], "script rollback_cancle.php": [[2, "script-rollback-cancle-php"]], "script rollback_timer.php": [[2, "script-rollback-timer-php"]], "script rtsold_resolvconf.sh": [[2, "script-rtsold-resolvconf-sh"]], "script running.sh": [[2, "script-running-sh"]], "script script setaddr.php": [[2, "script-script-setaddr-php"]], "script security.sh": [[2, "script-security-sh"]], "script setports.php": [[2, "script-setports-php"]], "script ssl_ciphers.py": [[2, "script-ssl-ciphers-py"]], "script start.sh": [[2, "script-start-sh"]], "script stats.py": [[2, "script-stats-py"]], "script status.php": [[2, "script-status-php"]], "script streamLog.py": [[2, "script-streamlog-py"]], "script suricata_setup.sh": [[2, "script-suricata-setup-sh"]], "script sync.sh": [[2, "script-sync-sh"]], "script sysctl.py": [[2, "script-sysctl-py"]], "script temperature.sh": [[2, "script-temperature-sh"]], "script tls_verify.php": [[2, "script-tls-verify-php"]], "script traffic_stats.php": [[2, "script-traffic-stats-php"]], "script unlock.sh": [[2, "script-unlock-sh"]], "script update.sh": [[2, "script-update-sh"]], "script update_bogons.sh": [[2, "script-update-bogons-sh"]], "script updaterrd.php": [[2, "script-updaterrd-php"]], "script upgrade.sh": [[2, "script-upgrade-sh"]], "script user_pass_verify.php": [[2, "script-user-pass-verify-php"]], "script wrapper.py": [[2, "script-wrapper-py"]], "scripts": [[3, "scripts"]], "scripts and commands": [[0, "scripts-and-commands"]], "shaper": [[2, "shaper"]], "shell": [[2, "module-python.autodocs.shell.banner"]], "suricata": [[2, "module-python.autodocs.suricata.listRuleMetadata"]], "syslog": [[2, "module-python.autodocs.syslog.clearlog"]], "system": [[2, "module-python.autodocs.system.cpu"]], "unbound": [[2, "module-python.autodocs.unbound.cache"]], "usage": [[0, "usage"]]}, "docnames": ["README", "index", "opnsense-scripts", "python_package"], "envversion": {"sphinx": 62, "sphinx.domains.c": 3, "sphinx.domains.changeset": 1, "sphinx.domains.citation": 1, "sphinx.domains.cpp": 9, "sphinx.domains.index": 1, "sphinx.domains.javascript": 3, "sphinx.domains.math": 2, "sphinx.domains.python": 4, "sphinx.domains.rst": 2, "sphinx.domains.std": 2}, "filenames": ["README.md", "index.rst", "opnsense-scripts.rst", "python_package.rst"], "indexentries": {"auth (class in opnsense_helper.scripts.scripts)": [[3, "opnsense_helper.scripts.scripts.auth", false]], "commands (class in opnsense_helper.commands.commands)": [[3, "opnsense_helper.commands.commands.Commands", false]], "configctl (class in opnsense_helper.commands.commands)": [[3, "opnsense_helper.commands.commands.configctl", false]], "dhcp (class in opnsense_helper.scripts.scripts)": [[3, "opnsense_helper.scripts.scripts.dhcp", false]], "dns (class in opnsense_helper.scripts.scripts)": [[3, "opnsense_helper.scripts.scripts.dns", false]], "filter (class in opnsense_helper.scripts.scripts)": [[3, "opnsense_helper.scripts.scripts.filter", false]], "firmware (class in opnsense_helper.scripts.scripts)": [[3, "opnsense_helper.scripts.scripts.firmware", false]], "health (class in opnsense_helper.scripts.scripts)": [[3, "opnsense_helper.scripts.scripts.health", false]], "interfaces (class in opnsense_helper.scripts.scripts)": [[3, "opnsense_helper.scripts.scripts.interfaces", false]], "ipsec (class in opnsense_helper.scripts.scripts)": [[3, "opnsense_helper.scripts.scripts.ipsec", false]], "module": [[2, "module-0", false], [2, "module-python.autodocs.auth.add_user", false], [2, "module-python.autodocs.auth.list_group_members", false], [2, "module-python.autodocs.dhcp.cleanup_leases4", false], [2, "module-python.autodocs.dhcp.cleanup_leases6", false], [2, "module-python.autodocs.dhcp.dnsmasq_watcher", false], [2, "module-python.autodocs.dhcp.get_kea_leases", false], [2, "module-python.autodocs.dhcp.prefixes", false], [2, "module-python.autodocs.dns.query_dns", false], [2, "module-python.autodocs.filter.kill_states", false], [2, "module-python.autodocs.filter.list_states", false], [2, "module-python.autodocs.filter.rollback_cancel", false], [2, "module-python.autodocs.filter.rollback_timer", false], [2, "module-python.autodocs.filter.update_bogons", false], [2, "module-python.autodocs.firmware.changelog", false], [2, "module-python.autodocs.firmware.config", false], [2, "module-python.autodocs.firmware.connection", false], [2, "module-python.autodocs.firmware.details", false], [2, "module-python.autodocs.firmware.health", false], [2, "module-python.autodocs.firmware.hostnames", false], [2, "module-python.autodocs.firmware.install", false], [2, "module-python.autodocs.firmware.latest", false], [2, "module-python.autodocs.firmware.launcher", false], [2, "module-python.autodocs.firmware.license", false], [2, "module-python.autodocs.firmware.lock", false], [2, "module-python.autodocs.firmware.plugin", false], [2, "module-python.autodocs.firmware.product", false], [2, "module-python.autodocs.firmware.query", false], [2, "module-python.autodocs.firmware.read", false], [2, "module-python.autodocs.firmware.reboot", false], [2, "module-python.autodocs.firmware.register", false], [2, "module-python.autodocs.firmware.reinstall", false], [2, "module-python.autodocs.firmware.remove", false], [2, "module-python.autodocs.firmware.resync", false], [2, "module-python.autodocs.firmware.running", false], [2, "module-python.autodocs.firmware.security", false], [2, "module-python.autodocs.firmware.sync", false], [2, "module-python.autodocs.firmware.unlock", false], [2, "module-python.autodocs.firmware.update", false], [2, "module-python.autodocs.firmware.upgrade", false], [2, "module-python.autodocs.health.updaterrd", false], [2, "module-python.autodocs.interfaces.carp_global_status", false], [2, "module-python.autodocs.interfaces.carp_set_status", false], [2, "module-python.autodocs.interfaces.ifctl", false], [2, "module-python.autodocs.interfaces.reconfigure_gifs", false], [2, "module-python.autodocs.interfaces.reconfigure_gres", false], [2, "module-python.autodocs.interfaces.reconfigure_laggs", false], [2, "module-python.autodocs.interfaces.reconfigure_neighbors", false], [2, "module-python.autodocs.interfaces.reconfigure_vips", false], [2, "module-python.autodocs.interfaces.reconfigure_vlans", false], [2, "module-python.autodocs.interfaces.rtsold_resolvconf", false], [2, "module-python.autodocs.interfaces.traffic_stats", false], [2, "module-python.autodocs.ipsec.get_legacy_vti", false], [2, "module-python.autodocs.netflow.flush_all", false], [2, "module-python.autodocs.openvpn.client_connect", false], [2, "module-python.autodocs.openvpn.client_disconnect", false], [2, "module-python.autodocs.openvpn.ovpn_service_control", false], [2, "module-python.autodocs.openvpn.tls_verify", false], [2, "module-python.autodocs.openvpn.user_pass_verify", false], [2, "module-python.autodocs.repos.FreeBSD", false], [2, "module-python.autodocs.repos.OPNsense", false], [2, "module-python.autodocs.routes.del_route", false], [2, "module-python.autodocs.routes.gateway_status", false], [2, "module-python.autodocs.routes.gateway_watcher", false], [2, "module-python.autodocs.routes.gateways", false], [2, "module-python.autodocs.shell.banner", false], [2, "module-python.autodocs.shell.defaults", false], [2, "module-python.autodocs.shell.firmware", false], [2, "module-python.autodocs.shell.halt", false], [2, "module-python.autodocs.shell.password", false], [2, "module-python.autodocs.shell.ping", false], [2, "module-python.autodocs.shell.reboot", false], [2, "module-python.autodocs.shell.restore", false], [2, "module-python.autodocs.shell.setaddr", false], [2, "module-python.autodocs.shell.setports", false], [2, "module-python.autodocs.suricata.listRuleMetadata", false], [2, "module-python.autodocs.suricata.setup", false], [2, "module-python.autodocs.syslog.clearlog", false], [2, "module-python.autodocs.syslog.list_applications", false], [2, "module-python.autodocs.syslog.queryLog", false], [2, "module-python.autodocs.syslog.streamLog", false], [2, "module-python.autodocs.system.cpu", false], [2, "module-python.autodocs.system.nameservers", false], [2, "module-python.autodocs.system.remote_backup", false], [2, "module-python.autodocs.system.ssl_ciphers", false], [2, "module-python.autodocs.system.status", false], [2, "module-python.autodocs.system.sysctl", false], [2, "module-python.autodocs.system.temperature", false], [2, "module-python.autodocs.unbound.cache", false], [2, "module-python.autodocs.unbound.logger", false], [2, "module-python.autodocs.unbound.restore_db", false], [2, "module-python.autodocs.unbound.start", false], [2, "module-python.autodocs.unbound.stats", false], [2, "module-python.autodocs.unbound.wrapper", false], [3, "module-opnsense_helper.commands.commands", false], [3, "module-opnsense_helper.config_manager.config_manager", false], [3, "module-opnsense_helper.scripts.scripts", false]], "netflow (class in opnsense_helper.scripts.scripts)": [[3, "opnsense_helper.scripts.scripts.netflow", false]], "openssh (class in opnsense_helper.scripts.scripts)": [[3, "opnsense_helper.scripts.scripts.openssh", false]], "openvpn (class in opnsense_helper.scripts.scripts)": [[3, "opnsense_helper.scripts.scripts.openvpn", false]], "opnsense_helper (class in opnsense_helper.opnsense_helper)": [[3, "opnsense_helper.opnsense_helper.Opnsense_Helper", false]], "opnsense_helper.commands.commands": [[3, "module-opnsense_helper.commands.commands", false]], "opnsense_helper.config_manager.config_manager": [[3, "module-opnsense_helper.config_manager.config_manager", false]], "opnsense_helper.scripts.scripts": [[3, "module-opnsense_helper.scripts.scripts", false]], "pluginctl (class in opnsense_helper.commands.commands)": [[3, "opnsense_helper.commands.commands.pluginctl", false]], "python.autodocs.auth.add_user": [[2, "module-python.autodocs.auth.add_user", false]], "python.autodocs.auth.list_group_members": [[2, "module-python.autodocs.auth.list_group_members", false]], "python.autodocs.dhcp.cleanup_leases4": [[2, "module-python.autodocs.dhcp.cleanup_leases4", false]], "python.autodocs.dhcp.cleanup_leases6": [[2, "module-python.autodocs.dhcp.cleanup_leases6", false]], "python.autodocs.dhcp.dnsmasq_watcher": [[2, "module-python.autodocs.dhcp.dnsmasq_watcher", false]], "python.autodocs.dhcp.get_kea_leases": [[2, "module-python.autodocs.dhcp.get_kea_leases", false]], "python.autodocs.dhcp.prefixes": [[2, "module-0", false], [2, "module-python.autodocs.dhcp.prefixes", false]], "python.autodocs.dns.query_dns": [[2, "module-python.autodocs.dns.query_dns", false]], "python.autodocs.filter.kill_states": [[2, "module-python.autodocs.filter.kill_states", false]], "python.autodocs.filter.list_states": [[2, "module-python.autodocs.filter.list_states", false]], "python.autodocs.filter.rollback_cancel": [[2, "module-python.autodocs.filter.rollback_cancel", false]], "python.autodocs.filter.rollback_timer": [[2, "module-python.autodocs.filter.rollback_timer", false]], "python.autodocs.filter.update_bogons": [[2, "module-python.autodocs.filter.update_bogons", false]], "python.autodocs.firmware.changelog": [[2, "module-python.autodocs.firmware.changelog", false]], "python.autodocs.firmware.config": [[2, "module-python.autodocs.firmware.config", false]], "python.autodocs.firmware.connection": [[2, "module-python.autodocs.firmware.connection", false]], "python.autodocs.firmware.details": [[2, "module-python.autodocs.firmware.details", false]], "python.autodocs.firmware.health": [[2, "module-python.autodocs.firmware.health", false]], "python.autodocs.firmware.hostnames": [[2, "module-python.autodocs.firmware.hostnames", false]], "python.autodocs.firmware.install": [[2, "module-python.autodocs.firmware.install", false]], "python.autodocs.firmware.latest": [[2, "module-python.autodocs.firmware.latest", false]], "python.autodocs.firmware.launcher": [[2, "module-python.autodocs.firmware.launcher", false]], "python.autodocs.firmware.license": [[2, "module-python.autodocs.firmware.license", false]], "python.autodocs.firmware.lock": [[2, "module-python.autodocs.firmware.lock", false]], "python.autodocs.firmware.plugin": [[2, "module-python.autodocs.firmware.plugin", false]], "python.autodocs.firmware.product": [[2, "module-python.autodocs.firmware.product", false]], "python.autodocs.firmware.query": [[2, "module-python.autodocs.firmware.query", false]], "python.autodocs.firmware.read": [[2, "module-python.autodocs.firmware.read", false]], "python.autodocs.firmware.reboot": [[2, "module-python.autodocs.firmware.reboot", false]], "python.autodocs.firmware.register": [[2, "module-python.autodocs.firmware.register", false]], "python.autodocs.firmware.reinstall": [[2, "module-python.autodocs.firmware.reinstall", false]], "python.autodocs.firmware.remove": [[2, "module-python.autodocs.firmware.remove", false]], "python.autodocs.firmware.resync": [[2, "module-python.autodocs.firmware.resync", false]], "python.autodocs.firmware.running": [[2, "module-python.autodocs.firmware.running", false]], "python.autodocs.firmware.security": [[2, "module-python.autodocs.firmware.security", false]], "python.autodocs.firmware.sync": [[2, "module-python.autodocs.firmware.sync", false]], "python.autodocs.firmware.unlock": [[2, "module-python.autodocs.firmware.unlock", false]], "python.autodocs.firmware.update": [[2, "module-python.autodocs.firmware.update", false]], "python.autodocs.firmware.upgrade": [[2, "module-python.autodocs.firmware.upgrade", false]], "python.autodocs.health.updaterrd": [[2, "module-python.autodocs.health.updaterrd", false]], "python.autodocs.interfaces.carp_global_status": [[2, "module-python.autodocs.interfaces.carp_global_status", false]], "python.autodocs.interfaces.carp_set_status": [[2, "module-python.autodocs.interfaces.carp_set_status", false]], "python.autodocs.interfaces.ifctl": [[2, "module-python.autodocs.interfaces.ifctl", false]], "python.autodocs.interfaces.reconfigure_gifs": [[2, "module-python.autodocs.interfaces.reconfigure_gifs", false]], "python.autodocs.interfaces.reconfigure_gres": [[2, "module-python.autodocs.interfaces.reconfigure_gres", false]], "python.autodocs.interfaces.reconfigure_laggs": [[2, "module-python.autodocs.interfaces.reconfigure_laggs", false]], "python.autodocs.interfaces.reconfigure_neighbors": [[2, "module-python.autodocs.interfaces.reconfigure_neighbors", false]], "python.autodocs.interfaces.reconfigure_vips": [[2, "module-python.autodocs.interfaces.reconfigure_vips", false]], "python.autodocs.interfaces.reconfigure_vlans": [[2, "module-python.autodocs.interfaces.reconfigure_vlans", false]], "python.autodocs.interfaces.rtsold_resolvconf": [[2, "module-python.autodocs.interfaces.rtsold_resolvconf", false]], "python.autodocs.interfaces.traffic_stats": [[2, "module-python.autodocs.interfaces.traffic_stats", false]], "python.autodocs.ipsec.get_legacy_vti": [[2, "module-python.autodocs.ipsec.get_legacy_vti", false]], "python.autodocs.netflow.flush_all": [[2, "module-python.autodocs.netflow.flush_all", false]], "python.autodocs.openvpn.client_connect": [[2, "module-python.autodocs.openvpn.client_connect", false]], "python.autodocs.openvpn.client_disconnect": [[2, "module-python.autodocs.openvpn.client_disconnect", false]], "python.autodocs.openvpn.ovpn_service_control": [[2, "module-python.autodocs.openvpn.ovpn_service_control", false]], "python.autodocs.openvpn.tls_verify": [[2, "module-python.autodocs.openvpn.tls_verify", false]], "python.autodocs.openvpn.user_pass_verify": [[2, "module-python.autodocs.openvpn.user_pass_verify", false]], "python.autodocs.repos.freebsd": [[2, "module-python.autodocs.repos.FreeBSD", false]], "python.autodocs.repos.opnsense": [[2, "module-python.autodocs.repos.OPNsense", false]], "python.autodocs.routes.del_route": [[2, "module-python.autodocs.routes.del_route", false]], "python.autodocs.routes.gateway_status": [[2, "module-python.autodocs.routes.gateway_status", false]], "python.autodocs.routes.gateway_watcher": [[2, "module-python.autodocs.routes.gateway_watcher", false]], "python.autodocs.routes.gateways": [[2, "module-python.autodocs.routes.gateways", false]], "python.autodocs.shell.banner": [[2, "module-python.autodocs.shell.banner", false]], "python.autodocs.shell.defaults": [[2, "module-python.autodocs.shell.defaults", false]], "python.autodocs.shell.firmware": [[2, "module-python.autodocs.shell.firmware", false]], "python.autodocs.shell.halt": [[2, "module-python.autodocs.shell.halt", false]], "python.autodocs.shell.password": [[2, "module-python.autodocs.shell.password", false]], "python.autodocs.shell.ping": [[2, "module-python.autodocs.shell.ping", false]], "python.autodocs.shell.reboot": [[2, "module-python.autodocs.shell.reboot", false]], "python.autodocs.shell.restore": [[2, "module-python.autodocs.shell.restore", false]], "python.autodocs.shell.setaddr": [[2, "module-python.autodocs.shell.setaddr", false]], "python.autodocs.shell.setports": [[2, "module-python.autodocs.shell.setports", false]], "python.autodocs.suricata.listrulemetadata": [[2, "module-python.autodocs.suricata.listRuleMetadata", false]], "python.autodocs.suricata.setup": [[2, "module-python.autodocs.suricata.setup", false]], "python.autodocs.syslog.clearlog": [[2, "module-python.autodocs.syslog.clearlog", false]], "python.autodocs.syslog.list_applications": [[2, "module-python.autodocs.syslog.list_applications", false]], "python.autodocs.syslog.querylog": [[2, "module-python.autodocs.syslog.queryLog", false]], "python.autodocs.syslog.streamlog": [[2, "module-python.autodocs.syslog.streamLog", false]], "python.autodocs.system.cpu": [[2, "module-python.autodocs.system.cpu", false]], "python.autodocs.system.nameservers": [[2, "module-python.autodocs.system.nameservers", false]], "python.autodocs.system.remote_backup": [[2, "module-python.autodocs.system.remote_backup", false]], "python.autodocs.system.ssl_ciphers": [[2, "module-python.autodocs.system.ssl_ciphers", false]], "python.autodocs.system.status": [[2, "module-python.autodocs.system.status", false]], "python.autodocs.system.sysctl": [[2, "module-python.autodocs.system.sysctl", false]], "python.autodocs.system.temperature": [[2, "module-python.autodocs.system.temperature", false]], "python.autodocs.unbound.cache": [[2, "module-python.autodocs.unbound.cache", false]], "python.autodocs.unbound.logger": [[2, "module-python.autodocs.unbound.logger", false]], "python.autodocs.unbound.restore_db": [[2, "module-python.autodocs.unbound.restore_db", false]], "python.autodocs.unbound.start": [[2, "module-python.autodocs.unbound.start", false]], "python.autodocs.unbound.stats": [[2, "module-python.autodocs.unbound.stats", false]], "python.autodocs.unbound.wrapper": [[2, "module-python.autodocs.unbound.wrapper", false]], "reconfigure (class in opnsense_helper.commands.commands)": [[3, "opnsense_helper.commands.commands.reconfigure", false]], "routes (class in opnsense_helper.scripts.scripts)": [[3, "opnsense_helper.scripts.scripts.routes", false]], "scripts (class in opnsense_helper.scripts.scripts)": [[3, "opnsense_helper.scripts.scripts.Scripts", false]], "shaper (class in opnsense_helper.scripts.scripts)": [[3, "opnsense_helper.scripts.scripts.shaper", false]], "shell (class in opnsense_helper.scripts.scripts)": [[3, "opnsense_helper.scripts.scripts.shell", false]], "suricata (class in opnsense_helper.scripts.scripts)": [[3, "opnsense_helper.scripts.scripts.suricata", false]], "syslog (class in opnsense_helper.scripts.scripts)": [[3, "opnsense_helper.scripts.scripts.syslog", false]], "system (class in opnsense_helper.scripts.scripts)": [[3, "opnsense_helper.scripts.scripts.system", false]], "unbound (class in opnsense_helper.scripts.scripts)": [[3, "opnsense_helper.scripts.scripts.unbound", false]], "wireguard (class in opnsense_helper.scripts.scripts)": [[3, "opnsense_helper.scripts.scripts.Wireguard", false]]}, "objects": {"opnsense_helper.commands": [[3, 0, 0, "-", "commands"]], "opnsense_helper.commands.commands": [[3, 1, 1, "", "Commands"], [3, 1, 1, "", "configctl"], [3, 1, 1, "", "pluginctl"], [3, 1, 1, "", "reconfigure"]], "opnsense_helper.config_manager": [[3, 0, 0, "-", "config_manager"]], "opnsense_helper.opnsense_helper": [[3, 1, 1, "", "Opnsense_Helper"]], "opnsense_helper.scripts": [[3, 0, 0, "-", "scripts"]], "opnsense_helper.scripts.scripts": [[3, 1, 1, "", "Scripts"], [3, 1, 1, "", "Wireguard"], [3, 1, 1, "", "auth"], [3, 1, 1, "", "dhcp"], [3, 1, 1, "", "dns"], [3, 1, 1, "", "filter"], [3, 1, 1, "", "firmware"], [3, 1, 1, "", "health"], [3, 1, 1, "", "interfaces"], [3, 1, 1, "", "ipsec"], [3, 1, 1, "", "netflow"], [3, 1, 1, "", "openssh"], [3, 1, 1, "", "openvpn"], [3, 1, 1, "", "routes"], [3, 1, 1, "", "shaper"], [3, 1, 1, "", "shell"], [3, 1, 1, "", "suricata"], [3, 1, 1, "", "syslog"], [3, 1, 1, "", "system"], [3, 1, 1, "", "unbound"]], "python.autodocs.auth": [[2, 0, 0, "-", "add_user"], [2, 0, 0, "-", "list_group_members"]], "python.autodocs.dhcp": [[2, 0, 0, "-", "cleanup_leases4"], [2, 0, 0, "-", "cleanup_leases6"], [2, 0, 0, "-", "dnsmasq_watcher"], [2, 0, 0, "-", "get_kea_leases"], [2, 0, 0, "module-0", "prefixes"]], "python.autodocs.dns": [[2, 0, 0, "-", "query_dns"]], "python.autodocs.filter": [[2, 0, 0, "-", "kill_states"], [2, 0, 0, "-", "list_states"], [2, 0, 0, "-", "rollback_cancel"], [2, 0, 0, "-", "rollback_timer"], [2, 0, 0, "-", "update_bogons"]], "python.autodocs.firmware": [[2, 0, 0, "-", "changelog"], [2, 0, 0, "-", "config"], [2, 0, 0, "-", "connection"], [2, 0, 0, "-", "details"], [2, 0, 0, "-", "health"], [2, 0, 0, "-", "hostnames"], [2, 0, 0, "-", "install"], [2, 0, 0, "-", "latest"], [2, 0, 0, "-", "launcher"], [2, 0, 0, "-", "license"], [2, 0, 0, "-", "lock"], [2, 0, 0, "-", "plugin"], [2, 0, 0, "-", "product"], [2, 0, 0, "-", "query"], [2, 0, 0, "-", "read"], [2, 0, 0, "-", "reboot"], [2, 0, 0, "-", "register"], [2, 0, 0, "-", "reinstall"], [2, 0, 0, "-", "remove"], [2, 0, 0, "-", "resync"], [2, 0, 0, "-", "running"], [2, 0, 0, "-", "security"], [2, 0, 0, "-", "sync"], [2, 0, 0, "-", "unlock"], [2, 0, 0, "-", "update"], [2, 0, 0, "-", "upgrade"]], "python.autodocs.health": [[2, 0, 0, "-", "updaterrd"]], "python.autodocs.interfaces": [[2, 0, 0, "-", "carp_global_status"], [2, 0, 0, "-", "carp_set_status"], [2, 0, 0, "-", "ifctl"], [2, 0, 0, "-", "reconfigure_gifs"], [2, 0, 0, "-", "reconfigure_gres"], [2, 0, 0, "-", "reconfigure_laggs"], [2, 0, 0, "-", "reconfigure_neighbors"], [2, 0, 0, "-", "reconfigure_vips"], [2, 0, 0, "-", "reconfigure_vlans"], [2, 0, 0, "-", "rtsold_resolvconf"], [2, 0, 0, "-", "traffic_stats"]], "python.autodocs.ipsec": [[2, 0, 0, "-", "get_legacy_vti"]], "python.autodocs.netflow": [[2, 0, 0, "-", "flush_all"]], "python.autodocs.openvpn": [[2, 0, 0, "-", "client_connect"], [2, 0, 0, "-", "client_disconnect"], [2, 0, 0, "-", "ovpn_service_control"], [2, 0, 0, "-", "tls_verify"], [2, 0, 0, "-", "user_pass_verify"]], "python.autodocs.repos": [[2, 0, 0, "-", "FreeBSD"], [2, 0, 0, "-", "OPNsense"]], "python.autodocs.routes": [[2, 0, 0, "-", "del_route"], [2, 0, 0, "-", "gateway_status"], [2, 0, 0, "-", "gateway_watcher"], [2, 0, 0, "-", "gateways"]], "python.autodocs.shell": [[2, 0, 0, "-", "banner"], [2, 0, 0, "-", "defaults"], [2, 0, 0, "-", "firmware"], [2, 0, 0, "-", "halt"], [2, 0, 0, "-", "password"], [2, 0, 0, "-", "ping"], [2, 0, 0, "-", "reboot"], [2, 0, 0, "-", "restore"], [2, 0, 0, "-", "setaddr"], [2, 0, 0, "-", "setports"]], "python.autodocs.suricata": [[2, 0, 0, "-", "listRuleMetadata"], [2, 0, 0, "-", "setup"]], "python.autodocs.syslog": [[2, 0, 0, "-", "clearlog"], [2, 0, 0, "-", "list_applications"], [2, 0, 0, "-", "queryLog"], [2, 0, 0, "-", "streamLog"]], "python.autodocs.system": [[2, 0, 0, "-", "cpu"], [2, 0, 0, "-", "nameservers"], [2, 0, 0, "-", "remote_backup"], [2, 0, 0, "-", "ssl_ciphers"], [2, 0, 0, "-", "status"], [2, 0, 0, "-", "sysctl"], [2, 0, 0, "-", "temperature"]], "python.autodocs.unbound": [[2, 0, 0, "-", "cache"], [2, 0, 0, "-", "logger"], [2, 0, 0, "-", "restore_db"], [2, 0, 0, "-", "start"], [2, 0, 0, "-", "stats"], [2, 0, 0, "-", "wrapper"]]}, "objnames": {"0": ["py", "module", "Python module"], "1": ["py", "class", "Python class"]}, "objtypes": {"0": "py:module", "1": "py:class"}, "terms": {"": [0, 2, 3], "0": [0, 2], "00": 0, "01": 0, "02": 0, "03": 0, "0tnitdbolveqvd9fu8wfedo3d3dy5wrutf": 0, "1": [0, 2], "10": 2, "100": 0, "103": 0, "12": 2, "1500": 0, "16072": 0, "16384": 0, "168": 0, "1731025409": 0, "192": 0, "2": [0, 2], "20": 2, "200": 0, "24": 0, "25": 0, "3": [0, 2], "4": [0, 3], "5": 0, "5jvvgoatpbaaa": 0, "6": 0, "60": 2, "64": 0, "7": [0, 2], "8": 2, "80": [0, 1, 3], "A": [2, 3], "IF": 2, "If": [2, 3], "It": 2, "No": 0, "Not": [0, 1], "The": [0, 1, 2, 3], "There": 0, "__init__": 3, "_configur": 3, "_interfaces_gif_configur": 2, "_interfaces_gre_configur": 2, "_interfaces_lagg_configur": 2, "_interfaces_vlan_configur": 2, "_to": 0, "a_vip": 2, "aaaa": 2, "abi": 2, "about": 2, "account": 2, "action": 2, "activ": [2, 3], "actual": 2, "add": [0, 2], "add_item": 0, "add_us": [1, 3], "addit": 2, "address": [0, 2, 3], "advertis": 2, "af": 2, "after": [0, 1, 2], "again": 2, "agre": 2, "alarm": 2, "alia": 2, "all": [0, 1, 2, 3], "allow": 2, "also": [0, 2, 3], "alter": 2, "alwai": 3, "an": [2, 3], "anchor": 2, "ani": [0, 2], "annot": 2, "anoth": [2, 3], "answer": 0, "api": [2, 3], "api_auth": [0, 3], "api_kei": [0, 3], "api_secret": [0, 3], "append": 2, "appli": [0, 1, 2], "ar": [2, 3], "architectur": 2, "arg": 2, "argsv": 2, "argument": [0, 2, 3], "argv": 2, "arnl": 0, "around": [0, 1, 3], "arp": 2, "arr": 0, "arrai": [2, 3], "array_slic": 2, "arsv": 2, "asc": 2, "ascend": 2, "ascript": 2, "ask": 2, "assign": [1, 2, 3], "assoc": 2, "associ": 3, "assum": 2, "attribut": 3, "audit": 2, "auth": [0, 1], "auth_control_fil": 2, "auth_def": 2, "auth_fil": 2, "auth_method": 2, "auth_serv": 2, "authent": [2, 3], "autodoc": 0, "autom": 2, "automat": [0, 1, 3], "autoremov": 2, "avail": [2, 3], "avoid": 2, "back": [0, 2], "backend": [0, 1, 2], "backup": 2, "backup_dir": 2, "backupfactori": 2, "backupprovid": 2, "banner": [1, 3], "base": [0, 2, 3], "base_class": 3, "basenam": 2, "bdist_wheel": 0, "been": 2, "befor": 2, "begin": 2, "below": [2, 3], "besid": 0, "bin": 2, "bit": [0, 2], "blocklist": 3, "bogon": 2, "bool": [2, 3], "breakag": 2, "build": 0, "busi": 2, "c": [0, 2, 3], "cach": [1, 3], "calcul": 2, "call": [0, 1, 2, 3], "callback": 2, "can": [0, 1, 2, 3], "cancel": 2, "captiveport": 3, "captur": 3, "carp": 2, "carp_global_statu": [1, 3], "carp_set_statu": [1, 3], "carpcount": 2, "case": 2, "cat": 2, "cci": 2, "cd": [0, 2], "certctl": 3, "certif": 2, "chang": [0, 2], "changelog": [1, 3], "check": [2, 3], "checksum": 2, "chmod": 2, "choic": 2, "chop": 2, "chown": 2, "class": [0, 2], "clean": 2, "cleanli": 2, "cleanup_leases4": [1, 3], "cleanup_leases6": [1, 3], "clear": 2, "clearlog": [1, 3], "client": 2, "client_connect": [1, 3], "client_disconnect": [1, 3], "clone": 0, "close": 2, "close_con": 0, "cmd": 2, "code": 2, "collect": [0, 2], "com": 0, "comma": 2, "command": [1, 2], "common": 2, "common_nam": 2, "compar": 2, "conf": [0, 2, 3], "conf_path": [0, 3], "config": [1, 2, 3], "config_fil": 2, "config_manag": [1, 3], "config_read_arrai": 2, "configctl": [0, 1, 2], "configd": 3, "configd_run": 2, "configdrun": 2, "configur": [0, 1, 2, 3], "confirm": 2, "connect": [1, 3], "consid": 2, "consist": 2, "consol": 2, "contain": [2, 3], "content": 2, "continu": 2, "contribut": 1, "control": [0, 2, 3], "coonfig_manag": 1, "copi": [0, 2, 3], "core": [0, 2], "core_check": 2, "correct": 2, "correctli": 2, "correspond": [2, 3], "couldnt": 0, "count": 2, "cp": 2, "cpu": 1, "crash_report": 0, "crashreport": 0, "creat": [1, 2], "criteria": 2, "crl": 2, "cron": [2, 3], "cso": 2, "csv": 3, "current": [0, 2, 3], "d": [2, 3], "daemon": 2, "damn": 0, "data": [2, 3], "databas": 2, "date": 2, "db": 2, "debug": [0, 2, 3], "decid": 0, "decod": 2, "def": 0, "default": [0, 1, 3], "defer": 2, "defin": [0, 2], "definit": 1, "del_rout": [1, 3], "delai": 2, "delet": 2, "delete_t": 3, "delimit": 2, "depend": 2, "depth": 2, "desc": 2, "descr": 0, "descript": 2, "design": 2, "desir": 2, "destin": [0, 2], "destroi": 2, "destroy_if": 2, "detail": [1, 3], "detect": 0, "determin": 2, "develop": 2, "devic": [0, 3], "device_info": 3, "dhclient": 3, "dhcp": [0, 1], "dhcp_lease_fil": 2, "dhcpd": [0, 2, 3], "dhcpd6": [2, 3], "dhcpv4": 0, "dhcpv6": 2, "diagnost": 0, "dict": 3, "dictionari": 3, "die": 2, "dies": 2, "directli": 0, "directori": [2, 3], "disabl": 2, "disconnect": 3, "disk": 2, "dismiss": 2, "displai": 2, "dn": 1, "dns_logger": 2, "dnsmasq": 2, "dnsmasq_dhcpd": 2, "dnsmasq_watch": [1, 3], "dnssl": 2, "do": 0, "do_cont": 2, "do_verbos": 2, "doc": [0, 3], "doe": [0, 2], "doesnt": 0, "domain": 2, "done": 0, "down": 2, "download": [0, 2], "download_geoip": 3, "dpinger_statu": 2, "dropalertlog": 3, "duckdb": 2, "dummynet_stat": 3, "dump": [2, 3], "dump_log": 3, "dynam": 3, "e": [2, 3], "each": [2, 3], "echo": 2, "ein": 2, "either": 2, "ejl4fiu9yfnk": 0, "empti": [2, 3], "enabl": [0, 1, 2], "encod": 2, "ensur": 2, "enter": 2, "entri": 2, "env": 2, "env_init": 1, "environ": 2, "epoch": 2, "erreichbar": 2, "error": [0, 2], "escap": 2, "escapeshellarg": 2, "etc": 2, "everi": 0, "ex": 2, "exampl": 3, "exclud": 2, "exec_class": 3, "execut": [2, 3], "exist": [0, 2], "exit": 2, "expir": [0, 2], "explod": 2, "export_detail": 3, "extens": 2, "extract": 2, "f": [2, 3], "facil": 2, "factori": 2, "fail": 2, "failur": 2, "fals": [0, 2, 3], "famili": 2, "faulti": 2, "fclose": 2, "fe80": 0, "fetch": 2, "fetchdata": 3, "fget": 2, "fhandl": 2, "field": 2, "file": [0, 2, 3], "file_exist": 2, "file_get_cont": 2, "filemtim": 2, "filenam": 2, "filepath": 0, "files": 2, "filter": 1, "filter_": 2, "final": 2, "find": [0, 2], "find_table_refer": 3, "firewal": [0, 2, 3], "firmwar": 1, "firmware_runn": 1, "firmwarescript": 2, "flag": [0, 2, 3], "flavour": 2, "flock": 2, "flow": 2, "flowctl_stat": 3, "flowd": 2, "flowd_aggreg": [2, 3], "flowd_aggregate_metadata": 3, "flush": [2, 3], "flush_al": [1, 3], "flush_interv": 2, "flush_rout": 2, "flush_rrd": 3, "flush_slaac": 2, "fname": 2, "follow": [2, 3], "fopen": 2, "forc": [0, 2], "fork": 0, "format": 2, "found": [0, 2], "fozldqy92": 0, "fp": 2, "fread": 2, "freebsd": 1, "from": [0, 2, 3], "frontend": 1, "ftruncat": 2, "full": 2, "function": 2, "fwrite": 2, "g": [2, 3], "gaqmpk": 0, "gatewai": [0, 1, 3], "gateway_statu": [1, 3], "gateway_watch": [1, 3], "gatewayitem": 2, "gateways_statu": 2, "gen_keypair": 3, "gener": 2, "generate_cert": 3, "generiert": 2, "get": [2, 3], "get_conf": 0, "get_kea_leas": [1, 3], "get_leas": 3, "get_leases6": 3, "get_legacy_vti": [1, 3], "get_timeseri": 3, "get_top_usag": 3, "get_vhid_statu": 2, "getopt": 2, "getuserentrybyuid": 2, "gif": 2, "gif_configur": 2, "gifs_todo": 2, "git": 0, "github": 0, "given": [0, 2], "gname": 2, "god": 0, "gre": 2, "gre_configur": 2, "gres_todo": 2, "group": 2, "gw": 2, "gwname": 2, "gwname6": 2, "h": 2, "ha": [0, 2], "halt": [1, 3], "handl": 2, "have": 0, "head": 2, "health": [1, 3], "help": 2, "hint": 2, "hook": [2, 3], "host": [0, 2, 3], "hostnam": [1, 3], "hour": 2, "howev": 0, "html": 2, "http": 2, "human": 2, "i": [0, 1, 2, 3], "id": [2, 3], "identifi": 2, "if_reg": 3, "ifconfig": [2, 3], "ifctl": [1, 3], "ifdetail": 2, "ifgroup_setup": 2, "iflist": 2, "ifnam": 2, "implod": 2, "import": [0, 3], "inc": 2, "includ": 2, "indefinit": 2, "index": 2, "indic": 2, "inet": 2, "inet6": 2, "info": 3, "inform": 2, "inherit": 3, "init": 0, "init_config_manag": 3, "initi": [0, 2, 3], "input": 2, "insensit": 2, "instal": [1, 3], "installed_rul": 2, "installrul": 3, "instanc": [2, 3], "int": 2, "intbit": 2, "intbits6": 2, "integr": 2, "interact": 2, "interfac": [0, 1], "interface_carp_configur": 2, "interface_ipalias_configur": 2, "interface_proxyarp_configur": 2, "interfaces_addresses_flush": 2, "interfaces_neighbors_configur": 2, "interfaces_restart_by_devic": 2, "interv": 2, "intip": 2, "intip6": 2, "invok": [2, 3], "ip": [2, 3], "ip_to_remov": 2, "ipfw": 3, "ipsec": 1, "ipsec_get_configured_vti": 2, "ipv4": [0, 2, 3], "ipv6": [0, 2], "is_ipaddr": 2, "isen": 2, "ist": 2, "item": 0, "iter": 2, "iterateitem": 2, "its": [0, 2, 3], "join": 2, "jot": 2, "json": 2, "json_decod": 2, "json_encod": 2, "just": [0, 3], "kea": 3, "kei": [2, 3], "kernel": 2, "key_valu": 2, "kill_sess": 3, "kill_stat": [1, 3], "kill_tabl": 3, "l": 2, "label": 2, "lagg": 2, "lagg_configur": 2, "laggs_todo": 2, "lan": [0, 1], "last": 2, "latest": [1, 3], "launcher": 3, "leas": 2, "least": 2, "leav": 2, "legaci": 2, "legacy_config_get_interfac": 2, "legacy_interface_deladdress": 2, "legacy_interface_destroi": 2, "legacy_interface_stat": 2, "legacy_interfaces_detail": 2, "legacy_vlan_pcp": 2, "legacy_vlan_proto": 2, "legacy_vlan_remove_tag": 2, "legacy_vlan_tag": 2, "length": 2, "let": [0, 3], "lib": 3, "libfetch": 2, "librari": 3, "libvirt": 0, "licens": [1, 3], "licensedir": 2, "licensefil": 2, "limit": 2, "line": [0, 2], "link": 0, "linkdown": 3, "linkup": 3, "list": [2, 3], "list_appl": [1, 3], "list_arp": 3, "list_group_memb": [1, 3], "list_leas": 3, "list_macdb": 3, "list_ndp": 3, "list_osfp": 3, "list_pfsync": 3, "list_rule_id": 3, "list_sad": 3, "list_sockstat": 3, "list_spd": 3, "list_stat": [1, 3], "list_statu": 3, "list_tabl": 3, "listalertlog": 3, "listinstallableruleset": 3, "listprovid": 2, "listreport": 3, "listrulemetadata": [1, 3], "lo0": 0, "load": [0, 2], "local": [0, 2], "local_user_set": 2, "local_user_set_password": 2, "localhost": 0, "locat": 2, "lock": [1, 3], "lockfil": 2, "lockout_handl": 3, "log": [0, 2], "log_arch": 3, "logformat": 3, "logger": [1, 3], "loginterfac": 0, "logloc": 0, "longopt": 2, "m": [0, 2], "mac": 2, "macinfo": 3, "made": 0, "mai": 0, "main": [0, 2], "maintain": 2, "mainten": 2, "make": 0, "manag": 2, "manipul": 2, "manner": 2, "map": 2, "map_if": 2, "match": 2, "matter": 0, "md": 2, "md5": 2, "mdl": 2, "me": 0, "member": 2, "merg": 2, "messag": [0, 2, 3], "metadata": [2, 3], "metafil": 2, "method": [0, 2], "minut": 2, "mirror": 2, "miss": 2, "mkdir": 2, "mname": 2, "mock": 2, "mode": 2, "modif": 2, "modifi": 2, "modul": 2, "monit": 3, "motiv": 1, "mpd": 3, "mself": 0, "mtu": 0, "must": [2, 3], "mx": 2, "my": 0, "myservic": 3, "n": [0, 2], "name": [2, 3], "nameserv": [1, 3], "nameserver6": 2, "necessari": [2, 3], "need": [0, 2, 3], "neighbor": 2, "netboot": 1, "netflow": 1, "netif": 0, "network": [0, 2], "new": 2, "next": 2, "nhop": 0, "nicht": 2, "non": 2, "none": [0, 2, 3], "note": 2, "null": [0, 2], "number": 2, "o": 2, "object": [2, 3], "ocsp": 2, "off": 2, "offer": 2, "offset": 2, "oldest": 2, "onc": [0, 1, 2], "one": [0, 2], "onescript": 2, "onli": 2, "onsense_help": 3, "open": 2, "openssh": 1, "openvpn": 1, "oper": [2, 3], "opnsense_help": [0, 1], "opnsensecorebackend": 2, "opnsensecoreconfig": 2, "opnsensefirewallfilt": 2, "opnsenseinterfacesgif": 2, "opnsenseinterfacesgr": 2, "opnsenseinterfaceslagg": 2, "opnsenseopenvpnopenvpn": 2, "opnsenseroutinggatewai": 2, "opnsenserrdfactori": 2, "opnsensesystemsystemstatu": 2, "opnsensetruststor": 2, "opt": 2, "opt1": 0, "opt2": 0, "opt3": 0, "opt4": 0, "optind": 2, "option": [2, 3], "optstr": 2, "order": 2, "origin": 2, "other": [0, 1, 2], "otherwis": 2, "out": 2, "output": [0, 2], "over": 2, "overrid": 2, "ovpn_ev": 3, "ovpn_instance_stat": 2, "ovpn_service_control": [1, 3], "ovpn_start": 2, "ovpn_statu": 3, "ovpn_stop": 2, "own": 2, "ownership": 2, "packag": [0, 2, 3], "param": 2, "paramet": [2, 3], "parent": 3, "pars": [0, 2, 3], "part": 2, "pass": 3, "passthru": 2, "passw": [0, 3], "password": [1, 3], "path": [2, 3], "paus": 2, "pcp": [0, 2], "pend": 2, "perform": 2, "permiss": 2, "pf": 2, "pfctl": 2, "pfstatist": 3, "pftablecount": 3, "pftop": 3, "phisic": 0, "php": [0, 1, 3], "phy": [0, 1], "pid": [0, 2], "ping": [1, 3], "pinghost": 2, "pip": [1, 3], "pipe": 2, "pkg": 2, "placehold": 2, "plugin": [1, 3], "pluginctl": [0, 1, 2], "plugins_config_get": 2, "plugins_config_set": 2, "plugins_disk_found": 2, "plugins_disk_get": 2, "pod": 0, "point": 2, "pointer": 2, "poll": 2, "port": 2, "portprob": 3, "posit": 2, "possibl": 2, "power": 2, "ppp": 3, "pre": 2, "prefix": [1, 3], "presenc": 2, "present": 2, "press": 2, "prevent": 2, "primari": 3, "print": [2, 3], "prioriti": 2, "problem": 0, "proce": 2, "procedur": 2, "process": 2, "product": [1, 3], "program": 2, "project": 0, "prompt": 2, "properti": [2, 3], "proto": [0, 2], "protocol": 2, "provid": [0, 2, 3], "proxi": 2, "pull": 0, "put_fil": 0, "pw": 2, "py": [0, 1, 3], "pypi": 0, "python": 0, "python3": 0, "queri": [1, 3], "query_dn": [1, 3], "queryalertlog": 3, "queryinstalledrul": 3, "querylog": [1, 3], "question": 0, "r": [2, 3], "ra": 2, "radvd": 2, "random": 2, "random_delai": 2, "raw": 3, "rc": [0, 2], "rdnss": 2, "re": 2, "read": [0, 1, 3], "read_log": 3, "readabl": 2, "readi": 2, "realli": 0, "reboot": [1, 3], "receiv": 2, "recogn": 2, "reconfigur": [0, 1, 2], "reconfigure_gif": 1, "reconfigure_gr": 1, "reconfigure_lagg": [1, 3], "reconfigure_neighbor": [1, 3], "reconfigure_vip": [1, 3], "reconfigure_vlan": [1, 3], "record": 2, "redund": 2, "refresh": 2, "regist": [1, 3], "registr": [2, 3], "reinstal": [1, 3], "relat": 2, "relatedscript": 2, "relev": 2, "reload": 2, "reload_al": 2, "remain": 2, "remot": 2, "remote_backup": [1, 3], "remov": [1, 3], "remove_item": 0, "renam": 3, "repli": 0, "repo": [0, 1], "repositori": 2, "request": 0, "requir": [1, 2], "require_onc": 2, "reresolv": 3, "reset": 2, "reset_factory_default": 2, "resolv": 2, "resourc": 2, "respons": 2, "restart": [2, 3], "restart_webgui": 2, "restor": [1, 3], "restore_db": [1, 3], "result": 2, "resync": [1, 3], "resynchron": 2, "ret": 2, "retriev": 2, "return": [2, 3], "revert": 2, "revis": 2, "rfc5246_cipher_suit": 3, "right": 0, "robin": 2, "roll": 2, "rollback": 2, "rollback_cancel": 3, "rollback_cancl": 1, "rollback_tim": [1, 3], "root": [0, 2], "round": 2, "rout": [0, 1], "router": [0, 2], "row": 2, "rqia15f1yx1snikgciel2qnojwhbekrawie0anryceh9hey5ifgzlf3da4yj": 0, "rqueri": 2, "rrd": 2, "rrd_pfstate_info": 3, "rtsold": 2, "rtsold_resolvconf": [1, 3], "rule": [0, 2, 3], "rule_stat": 3, "run": [0, 1, 3], "run_act": 2, "run_unittest": 3, "runscript": 2, "runtim": [0, 1, 2], "saddelet": 3, "safe": 2, "sampl": 2, "save": [0, 2], "sbin": 2, "search": 2, "searchdomain": 2, "second": 2, "section": 2, "secur": [1, 3], "sed": 2, "see": 3, "select": 2, "separ": 2, "server": 2, "servic": [0, 2, 3], "service_dump": 3, "servicepid": 2, "set": [0, 2, 3], "set_check": 2, "setaddr": [1, 3], "setport": [1, 3], "setup": [0, 2, 3], "setup_interfac": 2, "sever": 2, "sh": [0, 1, 3], "shaper": 1, "shell": 1, "shell_saf": 2, "shh": [0, 1], "shop": 0, "short": 2, "shortopt": 2, "show": 2, "show_rout": [0, 3], "shut": 2, "signal": 2, "signalhandl": 2, "simpl": 2, "singl": [0, 2], "size": 2, "slaac": 2, "slice": 2, "snippet": 0, "so": [0, 2], "soon": 0, "sort": 2, "sort_bi": 2, "sourc": 2, "spddelet": 3, "specif": 2, "specifi": 2, "split": 2, "spread": 2, "srgsv": 2, "ssh": [0, 3], "ssh_auth": [0, 3], "ssh_queri": 3, "ssl": [0, 3], "ssl_cipher": [1, 3], "stabl": 2, "standard": 2, "start": [0, 1, 3], "stat": [1, 3], "state": 2, "static": 2, "statist": [2, 3], "statu": [0, 1, 3], "status_transl": 2, "statuscod": 0, "stdin": 2, "stdout": 2, "still": 2, "stop": 2, "store": 2, "str": [0, 2, 3], "str1": 2, "str2": 2, "strcasecmp": 2, "stream": 2, "streamlog": 1, "string": [2, 3], "stuff": [0, 1], "subnet": 2, "subr": [2, 3], "subscript": 2, "success": 2, "suffix": 2, "support": [0, 2], "sure": 0, "suricata": 1, "suricata_setup": 1, "sync": [1, 3], "synchron": 2, "syntax": 0, "sysctl": [1, 3], "syshook": 2, "syslog": 1, "system": [0, 1], "t6srlmkd1": 0, "tabl": 2, "tag": [0, 2], "take": 2, "tar": 2, "target": 2, "targetdb": 2, "tee": 2, "tell": 2, "temp": 3, "temp_path": [0, 3], "temperatur": [1, 3], "templat": 3, "temporari": [2, 3], "terraform": 0, "text": 2, "thei": 2, "them": [0, 2], "thescript": 2, "thi": [0, 2, 3], "thisscript": 2, "those": 3, "three": 2, "tier": 2, "time": 2, "timer": 2, "timestamp": [0, 2], "tl": 2, "tls_verifi": [1, 3], "tlsv1": 2, "tmp": [0, 2], "total": 2, "touch": 2, "tracerout": 3, "traffic": 2, "traffic_stat": [1, 3], "traffic_top": 3, "trail": 2, "translat": 2, "trigger_config_changed_ev": 3, "trim": 2, "troubleshoot": 2, "true": [0, 2, 3], "truncat": 2, "trust": 2, "two": 2, "txt": 2, "type": 2, "u": [0, 2], "ug": 0, "uh": 0, "ui": 0, "uid": 2, "unbound": 1, "unbound_watch": 3, "unchang": 2, "und": 2, "uniqu": 2, "unknown": 2, "unlock": [1, 3], "unnecessari": 2, "unwant": 2, "up": [2, 3], "updat": [1, 3], "update_bogon": [1, 3], "update_t": 3, "updaterrd": 1, "updown_ev": 3, "upgrad": [0, 1, 3], "uptim": 3, "url": 2, "us": [0, 1, 2], "usag": [1, 2, 3], "user": [0, 2, 3], "user_pass_verifi": [1, 3], "usermod": 2, "usernam": 2, "using_api": 0, "usr": [0, 2], "util": 2, "uuid": 2, "v": 2, "valid": 2, "valid_from": 2, "valu": [2, 3], "var": 2, "variabl": [1, 2], "variou": [2, 3], "verbos": [0, 2, 3], "veri": 2, "verif": 2, "verifi": [0, 2, 3], "version": 2, "vfilenam": 2, "via": [0, 1, 2], "vip": 2, "virtual": 2, "vlan": [0, 1, 2, 3], "vlan0": 0, "vlan1": 0, "vlan2": 0, "vlan3": 0, "vlanif": 0, "vlans_api": 0, "vm": 0, "void": 2, "vpn": 2, "vpnid": 2, "vti": 2, "vtnet0": 0, "vtnet1": 0, "wa": 2, "wait": 2, "want": [0, 2], "warn": 2, "watch": 2, "web": 2, "webgui": 3, "well": 0, "wenn": 2, "were": [0, 2], "wg": 3, "wg_show": 3, "when": [0, 2], "where": 3, "whether": 2, "which": 2, "whitespac": 2, "wireguard": 1, "without": 2, "wrapper": [1, 3], "write": 2, "write_config": 2, "x": 2, "xml": [0, 3], "xxx": 2, "y": 2, "yaml": 2, "yes_no_prompt": 2, "yi8ka9": 0, "you": [0, 1, 3], "your": [0, 1, 3], "zero": 2, "zf": 3, "\u00fcberwacht": 2}, "titles": ["about opnsense-helper", "Opnsense-Helper", "auth", "Opnsense-Helper"], "titleterms": {"about": [0, 1], "add_us": 2, "api": [0, 1], "assign": 0, "auth": [2, 3], "autodoc": 1, "banner": 2, "cach": 2, "carp_global_statu": 2, "carp_set_statu": 2, "changelog": 2, "cla": 3, "class": 3, "cleanup_leases4": 2, "cleanup_leases6": 2, "clearlog": 2, "client_connect": 2, "client_disconnect": 2, "command": [0, 3], "config": 0, "config_manag": 0, "configctl": 3, "connect": 2, "contribut": 0, "coonfig_manag": 3, "cpu": 2, "creat": 0, "default": 2, "definit": 2, "del_rout": 2, "detail": 2, "dhcp": [2, 3], "dn": [2, 3], "dnsmasq_watch": 2, "dokument": 1, "env_init": 2, "exampl": 0, "filter": [2, 3], "firmwar": [2, 3], "firmware_runn": 2, "flush_al": 2, "freebsd": 2, "frontend": 0, "gatewai": 2, "gateway_statu": 2, "gateway_watch": 2, "get_kea_leas": 2, "get_legacy_vti": 2, "halt": 2, "health": 2, "heatlh": 3, "helper": [0, 1, 3], "hostnam": 2, "ifctl": 2, "instal": [0, 2], "interfac": [2, 3], "ipsec": [2, 3], "kill_stat": 2, "latest": 2, "licens": 2, "list_appl": 2, "list_group_memb": 2, "list_stat": 2, "listrulemetadata": 2, "lock": 2, "logger": 2, "manual": 0, "modul": 0, "motiv": 0, "nameserv": 2, "netboot": 2, "netflow": [2, 3], "object": 0, "openssh": [2, 3], "openvpn": [2, 3], "opnsens": [0, 1, 2, 3], "opnsense_help": 3, "ovpn_service_control": 2, "password": 2, "php": 2, "ping": 2, "pip": 0, "plugin": 2, "pluginctl": 3, "prefix": 2, "product": 2, "py": 2, "python": 1, "queri": 2, "query_dn": 2, "querylog": 2, "read": 2, "reboot": 2, "reconfigur": 3, "reconfigure_gif": 2, "reconfigure_gr": 2, "reconfigure_lagg": 2, "reconfigure_neighbor": 2, "reconfigure_vip": 2, "reconfigure_vlan": 2, "regist": 2, "reinstal": 2, "remote_backup": 2, "remov": 2, "repo": 2, "requir": 0, "restor": 2, "restore_db": 2, "result": 0, "resync": 2, "rollback_cancl": 2, "rollback_tim": 2, "rout": [2, 3], "rtsold_resolvconf": 2, "run": 2, "script": [0, 1, 2, 3], "secur": 2, "setaddr": 2, "setport": 2, "sh": 2, "shaper": [2, 3], "shell": [2, 3], "ssl_cipher": 2, "start": 2, "stat": 2, "statu": 2, "streamlog": 2, "suricata": [2, 3], "suricata_setup": 2, "sync": 2, "sysctl": 2, "syslog": [2, 3], "system": [2, 3], "temperatur": 2, "tls_verifi": 2, "traffic_stat": 2, "unbound": [2, 3], "unlock": 2, "updat": 2, "update_bogon": 2, "updaterrd": 2, "upgrad": 2, "usag": 0, "user_pass_verifi": 2, "variabl": 0, "wireguard": [2, 3], "wrapper": 2}})
\ No newline at end of file
diff --git a/.docs/conf.py b/.docs/conf.py
index 1890a24..00d9a38 100644
--- a/.docs/conf.py
+++ b/.docs/conf.py
@@ -1,6 +1,6 @@
import os
import sys
-sys.path.insert(0, os.path.abspath('../python')) # Source code dir relative to this file
+sys.path.insert(0, os.path.abspath('../')) # Source code dir relative to this file
extensions = [
'sphinx.ext.autodoc', # Core library for html generation from docstrings
@@ -34,7 +34,7 @@
project = 'opnsense_helper'
copyright = '2024, ji-podhead'
author = 'ji-podhead'
-release = '0.1.20'
+release = '0.1.26'
# -- General configuration ---------------------------------------------------
# https://www.sphinx-doc.org/en/master/usa.lock".
+
+*Params*
+ - argsv[0] : int
+ - (optional): The revision number to cancel
+
+*Flow*
+ - Checks if a revision number is provided as a command-line argument
+ - If a revision number is provided, checks if a lock file exists for that revision
+ - If the lock file exists, deletes it and exits with a success code (0)
+ - If no revision number is provided or the lock file does not exist, exits with a failure code (1)
+
+*Outputs*
+
+ - Exit code: 0 (success) or 1 (failure)
+
+"""
\ No newline at end of file
diff --git a/python/autodocs/filter/rollback_timer.py b/python/autodocs/filter/rollback_timer.py
new file mode 100644
index 0000000..a3b429f
--- /dev/null
+++ b/python/autodocs/filter/rollback_timer.py
@@ -0,0 +1,26 @@
+"""
+script rollback_timer.php
+-----------------------------------------------------------------------
+
+A script to manage the rollback timer for firewall filter changes.
+
+It uses the OPNsense\Firewall\Filter class to manage firewall filter changes.
+It is used to manage the rollback timer for firewall filter changes.
+
+*Params*
+ - argsv[0] : int
+ - (optional): The revision number to cancel
+
+*Functions*
+ - OPNsense\Firewall\Filter::rollback($revision): Rolls back to the specified revision
+ - OPNsense\Core\Backend::configdRun($command): Runs a command on the backend
+
+*Flow*
+ - Checks the command-line arguments for the revision number
+ - Creates a lock file for the revision
+ - Waits for 60 seconds for the API to callback
+ - If the lock file is deleted, exits with success
+ - If the lock file still exists, rolls back to the specified revision
+ - Reloads the firewall filter configuration if the rollback is successful
+
+"""
\ No newline at end of file
diff --git a/python/autodocs/filter/update_bogons.py b/python/autodocs/filter/update_bogons.py
new file mode 100644
index 0000000..0b0cc4d
--- /dev/null
+++ b/python/autodocs/filter/update_bogons.py
@@ -0,0 +1,19 @@
+
+"""
+script update_bogons.sh
+---------------------------------------
+
+Updates the bogons files for IPv4 and IPv6.
+
+It downloads the latest bogons files from the OPNsense repository, verifies their integrity, and extracts them to a temporary directory.
+Thescript then updates the bogons tables in the pf firewall configuration.
+If the update is successful, thescript logs a success message.
+
+*Params*
+ - ${1} : str
+ - COMMAND: The command to execute (e.g. "cron").
+
+*Notes*
+ - Thisscript assumes that the necessary commands (`opnsense-update`, `fetch`, `tar`, `pfctl`, `logger`) are available.
+ - Thescript uses the `/usr/local/etc` directory to store the bogons files.
+"""
\ No newline at end of file
diff --git a/python/autodocs/firmware/changelog.py b/python/autodocs/firmware/changelog.py
new file mode 100644
index 0000000..cb1ef71
--- /dev/null
+++ b/python/autodocs/firmware/changelog.py
@@ -0,0 +1,27 @@
+
+"""
+
+script changelog.sh
+------------------------------
+
+Executes the main functionality of the changelog management program.
+
+*Params*
+ - ${1} : str
+ - Command to execute (fetch, cron, remove, list, url, html, text)
+ - ${2} : str (optional)
+ - Version number (required for html and text commands)
+
+*Returns*
+ - int
+ - Exit status of thescript (0 for success, non-zero for failure)
+
+*Commands*
+ - fetch : Fetches the latest changelog from the remote repository.
+ - cron : Fetches the latest changelog from the remote repository, pausing for at least 10 minutes spread out over the next 12 hours.
+ - remove : Removes all changelog files from the destination directory.
+ - list : Lists the contents of the index.json file.
+ - url : Prints the URL of the remote changelog repository.
+ - html : Prints the HTML changelog for the specified version.
+ - text : Prints the text changelog for the specified version.
+"""
\ No newline at end of file
diff --git a/python/autodocs/firmware/check.py b/python/autodocs/firmware/check.py
new file mode 100644
index 0000000..6644385
--- /dev/null
+++ b/python/autodocs/firmware/check.py
@@ -0,0 +1,20 @@
+
+"""
+script check.sh
+------------------------------
+
+
+*Params*
+
+- None
+
+*Arguments*
+
+- None
+
+*Returns*
+
+- int
+ The exit status of thescript.
+
+"""
\ No newline at end of file
diff --git a/python/autodocs/firmware/config.py b/python/autodocs/firmware/config.py
new file mode 100644
index 0000000..eaa8e42
--- /dev/null
+++ b/python/autodocs/firmware/config.py
@@ -0,0 +1,10 @@
+
+"""script env_init.sh
+------------------------------
+
+Initializes the environment for OPNsense firmware operations.
+
+It checks if the OPNsense update is available and if so, sets environment
+variables to disable TLS versions below 1.3, refreshes CRL files, and tells
+libfetch to verify from the trust store.
+"""
\ No newline at end of file
diff --git a/python/autodocs/firmware/connection.py b/python/autodocs/firmware/connection.py
new file mode 100644
index 0000000..4a0f962
--- /dev/null
+++ b/python/autodocs/firmware/connection.py
@@ -0,0 +1,12 @@
+
+"""
+
+script connection.sh
+------------------------------
+
+Checks connectivity to OPNsense servers and verifies server certificates.
+
+It uses the `opnsense-update` commands to determine the URLs of the servers,
+and then checks connectivity to these servers over IPv4 and IPv6.
+Finally, it verifies the server certificates.
+"""
\ No newline at end of file
diff --git a/python/autodocs/firmware/details.py b/python/autodocs/firmware/details.py
new file mode 100644
index 0000000..8d7509f
--- /dev/null
+++ b/python/autodocs/firmware/details.py
@@ -0,0 +1,16 @@
+
+"""
+
+script details.sh
+------------------------------
+
+Queries package information.
+
+It takes a package name as an argument and uses the `pkg rquery` command to retrieve information about the package.
+Thescript outputs the package name, version, and maintainer.
+
+*Params*
+ - ${1} : str
+ - The package to query.
+
+"""
\ No newline at end of file
diff --git a/python/autodocs/firmware/health.py b/python/autodocs/firmware/health.py
new file mode 100644
index 0000000..5258702
--- /dev/null
+++ b/python/autodocs/firmware/health.py
@@ -0,0 +1,22 @@
+
+"""
+script health.sh
+------------------------------
+
+Performs a health audit on the system.
+
+It checks the root file system, kernel, base system, repositories, plugins,
+locked packages, and package dependencies.
+It also checks for missing or altered package files.
+The audit results are logged to a file.
+
+*Params*
+ - ${1}: str
+ - Optional command to specify which audit to perform.
+ - Possible values: kernel, base, repos, plugins, locked, packages, core
+
+*Functions*
+
+ - set_check: Checks the version and consistency of a package.
+ - core_check: Checks the consistency of the core packages.
+"""
\ No newline at end of file
diff --git a/python/autodocs/firmware/hostnames.py b/python/autodocs/firmware/hostnames.py
new file mode 100644
index 0000000..96eb9bc
--- /dev/null
+++ b/python/autodocs/firmware/hostnames.py
@@ -0,0 +1,17 @@
+
+"""
+
+script hostnames.sh
+------------------------------
+
+Retrieves the hosts of the repositories configured on the system.
+
+It uses the `opnsense-verify` command to get the list of repositories,
+and then parses the repository configuration files to extract the URLs.
+It filters out non-HTTPS URLs and extracts the host from the remaining URLs.
+The unique hosts are then printed to the console.
+
+*Returns*
+ - A list of unique hosts of the repositories.
+
+"""
\ No newline at end of file
diff --git a/python/autodocs/firmware/install.py b/python/autodocs/firmware/install.py
new file mode 100644
index 0000000..a011936
--- /dev/null
+++ b/python/autodocs/firmware/install.py
@@ -0,0 +1,20 @@
+
+"""
+script install.sh
+---------------------------------------
+
+Installs a package on the system.
+It checks if the package is a core package and if so, it checks if the core package is up-to-date.
+If the core package is not up-to-date, it exits and displays an error message.
+Otherwise, it installs the package using the `pkg` command and logs the output to a lockfile.
+After installation, it runs the `register.php`script to register the package and then runs `pkg autoremove` to remove any unnecessary packages.
+
+*Params*
+ - ${1} : str
+ - Name of the package to install.
+
+*Notes* - Thisscript uses the `opnsense-version` command to get the current version of the system.
+ - Thisscript uses the `pkg` command to install and manage packages.
+ - Thisscript uses the `register.php`script to register the package.
+ - Thisscript logs all output to a lockfile.
+"""
\ No newline at end of file
diff --git a/python/autodocs/firmware/latest.py b/python/autodocs/firmware/latest.py
new file mode 100644
index 0000000..0f5dae2
--- /dev/null
+++ b/python/autodocs/firmware/latest.py
@@ -0,0 +1,13 @@
+"""
+script latest.php
+---------------------------------------------------------------------
+
+Retrieves the latest stable version of OPNsense by parsing the changelog file.
+
+*Params*- arsv[1] : str
+ - Path to the changelog file (default: /usr/local/opnsense/changelog/index.json)
+
+*Returns*
+ - string
+ - The latest stable version of OPNsense, or the current version if unknown.
+"""
\ No newline at end of file
diff --git a/python/autodocs/firmware/launcher.py b/python/autodocs/firmware/launcher.py
new file mode 100644
index 0000000..7e0034f
--- /dev/null
+++ b/python/autodocs/firmware/launcher.py
@@ -0,0 +1,28 @@
+
+"""
+
+script firmware_runner.sh
+---------------------------------------
+
+Runs a firmwarescript.
+
+It supports various options, such as specifying ascript, setting a random delay, and enabling verbose mode.
+Thescript uses a lock file to ensure that only onescript is run at a time.
+
+*Params*
+ - r: int
+ - Optional: Sets a random delay before running thescript.
+ - s: str
+ - Optional: Specifies thescript to run.
+ - u: bool
+ - Optional: Runs thescript without a lock file.
+ - V: bool
+ - Optional: Enables verbose mode.
+
+*Returns*
+ - int
+ - The return value of the runscript.
+
+*Notes* - Thisscript uses the `flock` function to manage the lock file.
+ - Thescript uses the `jot` function to generate a random delay.
+"""
\ No newline at end of file
diff --git a/python/autodocs/firmware/license.py b/python/autodocs/firmware/license.py
new file mode 100644
index 0000000..60db629
--- /dev/null
+++ b/python/autodocs/firmware/license.py
@@ -0,0 +1,18 @@
+
+"""
+script license.sh
+---------------------------------------
+
+Displays the license information for a package.
+
+It uses the `pkg` command to query the package database and retrieve the license information.
+Thescript then displays the license text for each license found.
+
+*Params*
+ - ${1} : str
+ - The name of the package to display the license information for.
+
+*Notes*
+ - Thisscript assumes that the license files are stored in the `${LICENSEDIR}` directory.
+ - Thescript uses the `${PKG}` command to query the package database.
+"""
\ No newline at end of file
diff --git a/python/autodocs/firmware/lock.py b/python/autodocs/firmware/lock.py
new file mode 100644
index 0000000..998745d
--- /dev/null
+++ b/python/autodocs/firmware/lock.py
@@ -0,0 +1,19 @@
+
+"""
+
+script lock.sh
+---------------------------------------
+
+Locks a package to prevent updates.
+
+It uses the `opnsense-update` command to lock the base or kernel set, or the `pkg` command to lock a specific package.
+Thescript logs its actions to a lock file.
+
+*Params*
+ - ${1} : str
+ - The name of the package to lock.
+
+*Notes*
+ - Thisscript assumes that the lock file is stored in the `${LOCKFILE}` directory.
+ - Thescript uses the `opnsense-version` command to retrieve the current version of the system.
+"""
\ No newline at end of file
diff --git a/python/autodocs/firmware/plugin.py b/python/autodocs/firmware/plugin.py
new file mode 100644
index 0000000..6dffd20
--- /dev/null
+++ b/python/autodocs/firmware/plugin.py
@@ -0,0 +1,21 @@
+
+"""
+script plugin.sh
+---------------------------------------
+
+Checks if a plugin is installed.
+
+It uses the `opnsense-version` command to check if the plugin is installed, either in stable or development version.
+Thescript returns 0 if the plugin is not installed, and 1 if it is installed.
+
+*Params*
+ - ${1} : str
+ - PLUGIN: The name of the plugin to check.
+
+*Returns*
+ - int
+ - 0 if the plugin is not installed, 1 if it is installed.
+
+*Notes*
+ - Thisscript assumes that the `opnsense-version` command is available.
+"""
\ No newline at end of file
diff --git a/python/autodocs/firmware/product.py b/python/autodocs/firmware/product.py
new file mode 100644
index 0000000..ec5ff51
--- /dev/null
+++ b/python/autodocs/firmware/product.py
@@ -0,0 +1,38 @@
+"""
+script product.php
+-------------------------------------
+
+A script to retrieve and display product information.
+
+This script uses the `json_decode`, `file_get_contents`, `shell_safe`, `date`, `filemtime`, `explode`, `sort`, `implode`, and `json_encode` functions to retrieve and display the product information.
+The script assumes that the product metadata file and license file are in the correct format and location.
+
+*Arguments*
+ - $metafile: The path to the product metadata file
+ - $licensefile: The path to the product license file
+ - $ret: The array to store the product information
+
+*Functions*
+ - json_decode(string $json, bool $assoc): Decodes a JSON string into a PHP array
+ - file_get_contents(string $filename): Reads the contents of a file
+ - shell_safe(string $command): Executes a shell command and returns the output
+ - date(string $format, int $timestamp): Formats a timestamp into a human-readable date string
+ - filemtime(string $filename): Returns the last modification time of a file
+ - explode(string $delimiter, string $string): Splits a string into an array using a delimiter
+ - sort(array &$array): Sorts an array in ascending order
+ - implode(string $delimiter, array $array): Joins an array into a string using a delimiter
+ - json_encode(array $array, int $flags): Encodes a PHP array into a JSON string
+
+*Flow*
+ - Reads the product metadata file and decodes the JSON contents into an array
+ - Retrieves the latest product version, mirror URL, and timestamp
+ - Retrieves the list of repositories and sorts them in ascending order
+ - Checks if there are any pending updates and retrieves the update log
+ - Retrieves the license information from the license file (if available)
+ - Sorts the product information array in ascending order
+ - Encodes the product information array into a JSON string and outputs it
+
+*Outputs*
+
+ - A JSON string containing the product information
+"""
\ No newline at end of file
diff --git a/python/autodocs/firmware/query.py b/python/autodocs/firmware/query.py
new file mode 100644
index 0000000..89a66b5
--- /dev/null
+++ b/python/autodocs/firmware/query.py
@@ -0,0 +1,26 @@
+
+"""
+script query.sh
+----------------------------------------
+
+Retrieves version information for OPNsense.
+
+It uses the `opnsense-version` command to retrieve version information for the base and kernel sets.
+It also uses the `pkg` command to retrieve package information.
+Thescript supports three modes:
+ - local: Retrieves version information for the local OPNsense installation.
+ - remote: Retrieves version information from a remote repository.
+ - tiers: Retrieves product tier annotations from a remote repository.
+
+*Params*
+ - ${1} : str
+ - MODE: The mode to retrieve version information (local, remote, tiers).
+
+*Returns*
+ - str
+ - The version information in a formatted string.
+
+*Notes*
+ - Thisscript assumes that the necessary commands (`opnsense-version`, `pkg`) are available.
+ - Thescript uses the `/usr/local/opnsense/scripts/firmware/config.sh` file to configure the OPNsense environment.
+"""
\ No newline at end of file
diff --git a/python/autodocs/firmware/read.py b/python/autodocs/firmware/read.py
new file mode 100644
index 0000000..cde1974
--- /dev/null
+++ b/python/autodocs/firmware/read.py
@@ -0,0 +1,19 @@
+
+"""
+script read.sh
+---------------------------------------
+
+Retrieves the lock file for a package.
+
+It checks if the lock file exists and prints its content.
+The lock file is assumed to be located at the `${LOCKFILE}` directory.
+
+*Returns*
+ - str
+ - The lock file content.
+
+*Notes*
+ - Thisscript assumes that the necessary commands (`cat`, `sed`) are available.
+ - Thescript uses the `/usr/local/opnsense/scripts/firmware/config.sh` file to configure the OPNsense environment.
+
+"""
\ No newline at end of file
diff --git a/python/autodocs/firmware/reboot.py b/python/autodocs/firmware/reboot.py
new file mode 100644
index 0000000..823b7c9
--- /dev/null
+++ b/python/autodocs/firmware/reboot.py
@@ -0,0 +1,20 @@
+
+"""
+script reboot.sh
+--------------------------------------------
+
+Provides a hint to the console to reboot the system.
+
+It checks if an update to the OPNsense core package is available and if the system needs to be rebooted.
+Thescript uses the `pkg` command to query the package database and the `opnsense-update` command to check for updates.
+If an update is available, thescript prints the next version number and exits with a status code of 0.
+If no update is available, thescript exits with a status code of 1.
+
+*Returns*
+ - int
+ - 0 if a reboot is not necessary, 1 if a reboot is necessary.
+
+*Notes*
+ - Thisscript assumes that the necessary commands (`pkg`, `opnsense-update`, `pluginctl`) are available.
+ - Thescript uses the `/usr/local/opnsense/scripts/firmware/config.sh` file to configure the OPNsense environment.
+"""
\ No newline at end of file
diff --git a/python/autodocs/firmware/register.py b/python/autodocs/firmware/register.py
new file mode 100644
index 0000000..093af49
--- /dev/null
+++ b/python/autodocs/firmware/register.py
@@ -0,0 +1,27 @@
+"""
+script register.php
+---------------------------------------
+
+A script to manage plugin registration.
+
+This script uses the Config class to manage the plugin configuration.
+
+The script assumes that the plugin metadata is stored in JSON files on disk.
+This script is used to manage plugin registration and updates.
+
+*Arguments*
+ - $action (optional): The action to perform (install, remove, sync, resync)
+ - $name (optional): The name of the plugin to install or remove
+
+*Functions*
+ - plugins_config_get($config): Returns the current plugin configuration
+ - plugins_config_set($config, $plugins): Sets the plugin configuration
+ - plugins_disk_found($name): Checks if a plugin is found on disk
+ - plugins_disk_get(): Returns a list of plugins found on disk
+
+*Flow*
+ - Checks the command-line arguments for the action and plugin name
+ - Initializes the plugin configuration and disk plugins
+ - Performs the specified action (install, remove, sync, resync)
+ - Updates the plugin configuration if necessary
+"""
\ No newline at end of file
diff --git a/python/autodocs/firmware/reinstall.py b/python/autodocs/firmware/reinstall.py
new file mode 100644
index 0000000..2d8a264
--- /dev/null
+++ b/python/autodocs/firmware/reinstall.py
@@ -0,0 +1,21 @@
+
+"""
+
+script reinstall.sh
+------------------------------------------
+
+Reinstalls a package on the OPNsense system.
+
+It checks if the package is the base or kernel package and performs the necessary actions.
+If the package is a plugin, it reverts the plugin to its original state and reinstalls it.
+Thescript uses the `opnsense-update` command to update the package and the `opnsense-revert` command to revert the plugin.
+If a reboot is necessary, thescript initiates a reboot after a short delay.
+
+*Params*
+ - ${1} : str
+ - PACKAGE: The name of the package to reinstall (base, kernel, or a plugin name).
+
+*Notes*
+ - Thisscript assumes that the necessary commands (`opnsense-update`, `opnsense-revert`, `pkg`, `rc.reboot`) are available.
+ - Thescript uses the `/usr/local/opnsense/scripts/firmware/config.sh` file to configure the OPNsense environment.
+"""
\ No newline at end of file
diff --git a/python/autodocs/firmware/remove.py b/python/autodocs/firmware/remove.py
new file mode 100644
index 0000000..fb5bdb5
--- /dev/null
+++ b/python/autodocs/firmware/remove.py
@@ -0,0 +1,20 @@
+
+"""
+
+script remove.sh
+----------------------------------------
+
+Removes a package from the OPNsense system.
+
+It uses the `pkg` command to remove the package and the `register.php`script to update the package registration.
+Thescript also runs the `pkg autoremove` command to remove any unnecessary dependencies.
+Thescript logs its actions to the `${LOCKFILE}` file.
+
+*Params*
+ - ${1} : str
+ - PACKAGE: The name of the package to remove.
+
+*Notes*
+ - Thisscript assumes that the necessary commands (`pkg`, `register.php`) are available.
+ - Thescript uses the `/usr/local/opnsense/scripts/firmware/config.sh` file to configure the OPNsense environment.
+"""
\ No newline at end of file
diff --git a/python/autodocs/firmware/resync.py b/python/autodocs/firmware/resync.py
new file mode 100644
index 0000000..d515ebe
--- /dev/null
+++ b/python/autodocs/firmware/resync.py
@@ -0,0 +1,14 @@
+
+"""
+script resync.sh
+---------------------------------------
+
+Resynchronizes the OPNsense system with the latest configuration.
+
+It uses the `register.php`script to perform the resynchronization and logs its actions to the `${LOCKFILE}` file.
+
+*Notes*
+ - Thisscript assumes that the necessary commands (`opnsense-version`, `register.php`) are available.
+ - Thescript uses the `/usr/local/opnsense/scripts/firmware/config.sh` file to configure the OPNsense environment.
+ - Thescript clears the `${LOCKFILE}` file before starting the resynchronization.
+"""
\ No newline at end of file
diff --git a/python/autodocs/firmware/running.py b/python/autodocs/firmware/running.py
new file mode 100644
index 0000000..42dfda1
--- /dev/null
+++ b/python/autodocs/firmware/running.py
@@ -0,0 +1,17 @@
+
+"""script running.sh
+---------------------------------------
+
+Checks if the OPNsense system is currently locked for updates.
+
+It uses the `flock` command to check if the lock file is available.
+
+*Returns*
+ - "ready" if the system is not locked
+ - "busy" if the system is locked
+
+*Notes*
+ - Thisscript assumes that the necessary commands (`flock`) are available.
+ - Thescript uses the `/usr/local/opnsense/scripts/firmware/config.sh` file to configure the OPNsense environment.
+ - Thescript uses the `${LOCKFILE}` file to store the lock information.
+"""
\ No newline at end of file
diff --git a/python/autodocs/firmware/security.py b/python/autodocs/firmware/security.py
new file mode 100644
index 0000000..a107a6c
--- /dev/null
+++ b/python/autodocs/firmware/security.py
@@ -0,0 +1,15 @@
+
+"""
+
+script security.sh
+---------------------------------------
+
+Performs a security audit on the OPNsense system.
+
+It uses the `pkg` command to run the audit and logs its actions to the `${LOCKFILE}` file.
+
+*Notes*
+ - Thisscript assumes that the necessary commands (`pkg`, `opnsense-version`) are available.
+ - Thescript uses the `/usr/local/opnsense/scripts/firmware/config.sh` file to configure the OPNsense environment.
+ - Thescript clears the `${LOCKFILE}` file before starting the audit.
+"""
\ No newline at end of file
diff --git a/python/autodocs/firmware/sync.py b/python/autodocs/firmware/sync.py
new file mode 100644
index 0000000..3e86b6e
--- /dev/null
+++ b/python/autodocs/firmware/sync.py
@@ -0,0 +1,13 @@
+
+"""
+script sync.sh
+---------------------------------------
+
+Synchronizes the OPNsense system with the latest configuration.
+
+It uses the `sync.subr.sh`script to perform the synchronization and logs its actions to the `${LOCKFILE}` file.
+
+*Notes*
+ - Thisscript assumes that the necessary commands (`opnsense-version`, `sync.subr.sh`) are available.
+ - Thescript uses the `/usr/local/opnsense/scripts/firmware/config.sh` file to configure the OPNsense environment.
+"""
\ No newline at end of file
diff --git a/python/autodocs/firmware/sync.subr.py b/python/autodocs/firmware/sync.subr.py
new file mode 100644
index 0000000..9d5de0a
--- /dev/null
+++ b/python/autodocs/firmware/sync.subr.py
@@ -0,0 +1,14 @@
+
+"""script sync.subr.sh
+---------------------------------------
+
+Installs and updates plugins on the OPNsense system.
+
+It uses the `pluginctl` command to retrieve the list of plugins to install, and the `pkg` command to install and update them.
+Thescript also checks if the core package is up-to-date and if not, it displays an error message.
+If all plugins are installed successfully, thescript removes any unnecessary packages.
+
+*Notes*
+ - Thisscript assumes that the necessary commands (`pluginctl`, `pkg`, `opnsense-version`) are available.
+ - Thescript uses the `/usr/local/opnsense/scripts/firmware/config.sh` file to configure the OPNsense environment.
+"""
\ No newline at end of file
diff --git a/python/autodocs/firmware/unlock.py b/python/autodocs/firmware/unlock.py
new file mode 100644
index 0000000..5185ac2
--- /dev/null
+++ b/python/autodocs/firmware/unlock.py
@@ -0,0 +1,18 @@
+
+"""
+script unlock.sh
+---------------------------------------
+
+Unlocks a package or set on the OPNsense system.
+
+It uses the `opnsense-update` command to unlock the base or kernel sets, and the `pkg` command to unlock other packages.
+Thescript logs its actions to the `${LOCKFILE}` file.
+
+*Params*
+ - ${1} : str
+ - PACKAGE: The name of the package or set to unlock.
+
+*Notes*
+ - Thisscript assumes that the necessary commands (`opnsense-update`, `pkg`) are available.
+ - Thescript uses the `/usr/local/opnsense/scripts/firmware/config.sh` file to configure the OPNsense environment.
+"""
\ No newline at end of file
diff --git a/python/autodocs/firmware/update.py b/python/autodocs/firmware/update.py
new file mode 100644
index 0000000..5a0d6f6
--- /dev/null
+++ b/python/autodocs/firmware/update.py
@@ -0,0 +1,19 @@
+
+"""
+script update.sh
+----------------------------------------
+
+Updates the OPNsense system to the latest version.
+
+It uses the `opnsense-update` command to perform the update and the `rc.restart_webgui` command to restart the web server.
+Thescript also uses the `tee` command to log the output to the `${LOCKFILE}` file.
+If the update is successful, thescript initiates a reboot after a short delay if necessary.
+
+*Params*
+ - {1} : str
+ - CMD: The command to execute (e.g. "sync").
+
+*Notes*
+ - Thisscript assumes that the necessary commands (`opnsense-update`, `rc.restart_webgui`, `tee`, `rc.reboot`) are available.
+ - Thescript uses the `/usr/local/opnsense/scripts/firmware/config.sh` file to configure the OPNsense environment.
+"""
\ No newline at end of file
diff --git a/python/autodocs/firmware/upgrade.py b/python/autodocs/firmware/upgrade.py
new file mode 100644
index 0000000..09569d1
--- /dev/null
+++ b/python/autodocs/firmware/upgrade.py
@@ -0,0 +1,16 @@
+
+"""
+
+script upgrade.sh
+----------------------------------------
+
+Upgrades the OPNsense system to the latest version.
+
+It uses the `opnsense-update` command to perform the upgrade and the `rc.syshook` command to execute system hooks.
+Thescript also uses the `tee` command to log the output to the `${LOCKFILE}` file.
+If the upgrade is successful, thescript initiates a reboot after a short delay.
+
+*Notes*
+ - Thisscript assumes that the necessary commands (`opnsense-update`, `rc.syshook`, `tee`, `rc.reboot`) are available.
+ - Thescript uses the `/usr/local/opnsense/scripts/firmware/config.sh` file to configure the OPNsense environment.
+"""
\ No newline at end of file
diff --git a/python/autodocs/health/updaterrd.py b/python/autodocs/health/updaterrd.py
new file mode 100644
index 0000000..f1d13c5
--- /dev/null
+++ b/python/autodocs/health/updaterrd.py
@@ -0,0 +1,22 @@
+"""
+script updaterrd.php
+---------------------------------------------------------------------
+
+This script updates the RRD (Round-Robin Database) statistics for OPNsense.
+
+It uses the OPNsense\Core\Config class to retrieve the RRD configuration.
+It also uses the OPNsense\RRD\Factory class to collect and update the RRD statistics.
+The script checks if the RRD statistics are enabled and if the /var/db/rrd directory exists.
+If debug mode is enabled, the script outputs the total runtime and collection time.
+
+*Params*
+ - $argv : array
+ -h : bool
+ - Display help message and exit.
+ -d : bool
+ - Enable debug mode, output errors to stdout.
+
+*Returns*
+ - int
+ - 0 on success, non-zero on failure.
+"""
\ No newline at end of file
diff --git a/python/autodocs/interfaces/carp_global_status.py b/python/autodocs/interfaces/carp_global_status.py
new file mode 100644
index 0000000..7b270f3
--- /dev/null
+++ b/python/autodocs/interfaces/carp_global_status.py
@@ -0,0 +1,16 @@
+"""
+- #!/usr/local/bin/php
+script carp_global_status.php
+---------------------------------------------------------------------------------------------------------------------------------------------
+
+This script checks the CARP (Common Address Redundancy Protocol) configuration and returns a JSON response with the current status.
+
+*Arguments*
+ - a_vip : array - An array of virtual IP addresses.
+ - carpcount : int - The number of CARP interfaces found.
+ - response : array - An array containing the CARP status information.
+
+*Returns*
+ - A JSON-encoded array with the CARP status information.
+
+"""
\ No newline at end of file
diff --git a/python/autodocs/interfaces/carp_set_status.py b/python/autodocs/interfaces/carp_set_status.py
new file mode 100644
index 0000000..5c8129b
--- /dev/null
+++ b/python/autodocs/interfaces/carp_set_status.py
@@ -0,0 +1,20 @@
+"""
+script carp_set_status.php
+--------------------------------------------------------------------
+
+Manages CARP (Common Address Redundancy Protocol) configuration and state.
+
+This script performs actions on the CARP configuration, such as entering or leaving maintenance mode, disabling or enabling CARP, and configuring interfaces.
+
+*Params*
+ - argsv[0] : str
+ - The action to perform (maintenance, disable, enable).
+
+*Arguments*
+ - a_vip : array - An array of virtual IP addresses.
+ - config : array - The system configuration array.
+
+*Returns*
+ - A JSON-encoded array with the result of the action.
+
+"""
\ No newline at end of file
diff --git a/python/autodocs/interfaces/ifctl.py b/python/autodocs/interfaces/ifctl.py
new file mode 100644
index 0000000..320a4cd
--- /dev/null
+++ b/python/autodocs/interfaces/ifctl.py
@@ -0,0 +1,41 @@
+
+"""
+
+script ifctl.sh
+---------------------------------------
+
+Configures and manages interface settings.
+
+It supports various modes, including nameserver, prefix, router, and searchdomain.
+It also supports IPv4 and IPv6 address families.
+Thescript can perform various actions, including clearing, flushing, dumping, and listing interface settings.
+
+*Params*
+ - CMD: str
+ Optional command to specify the action to perform.
+ Possible values: -c, -d, -f, -l, -O
+ - IF: str
+ Interface name.
+ - MD: str
+ Mode to operate in. Possible values: nameserver, prefix, router, searchdomain
+ - AF: str
+ Address family. Possible values: inet, inet6
+ - EX: str
+ Extension to append to the file name.
+ - DO_CONTENTS: str
+ Contents to write to the file.
+ - DO_VERBOSE: str
+ Flag to enable verbose mode.
+
+*Functions*
+
+ - flush_routes: Flushes routes for the specified interface and mode.
+ - flush_slaac: Flushes SLAAC addressing for the specified interface.
+
+*Notes* - Thisscript uses temporary files to store interface settings.
+ - Thescript uses the `route` command to manipulate routes.
+ - Thescript uses the `ifconfig` command to manipulate interface settings.
+ - This Script uses getopts to parse command-line options:
+ - getopts: getopts optstring name [arg ...]
+ - Getopts is used by shell procedures to parse positional parameters as options.
+"""
\ No newline at end of file
diff --git a/python/autodocs/interfaces/ppp-ipv6.py b/python/autodocs/interfaces/ppp-ipv6.py
new file mode 100644
index 0000000..0f2d2bd
--- /dev/null
+++ b/python/autodocs/interfaces/ppp-ipv6.py
@@ -0,0 +1,39 @@
+"""
+
+script ppp-ipv6.php
+-------------------------------------
+
+A script to configure PPP connections for IPv6.
+
+*Arguments*
+ - $argv[1]: The name of the interface
+ - $argv[2]: The family of the IP address (4 or 6)
+
+*Parameters*
+
+ - $config: The system configuration
+ - $interface: The name of the interface
+ - $family: The family of the IP address
+
+*Functions*
+ - convert_real_interface_to_friendly_interface_name(string $interface): Converts the interface name to a friendly name
+ - interface_ppps_bound(string $interface, int $family): Checks if the interface is bound to a PPP connection
+ - interface_dhcpv6_prepare(string $interface, array $config): Prepares the DHCPv6 configuration for the interface
+ - interface_dhcpv6_configure(string $interface, array $config): Configures the DHCPv6 connection for the interface
+ - interface_static6_configure(string $interface, array $config): Configures the static IPv6 address for the interface
+ - system_routing_configure(bool $reload, string $interface, bool $ipv6, string $family): Configures the routing table for the interface
+
+*Flow*
+ - Checks if the required arguments are present
+ - Converts the interface name to a friendly name
+ - Checks if the interface is bound to a PPP connection
+ - Checks if the family of the IP address is correct
+ - Configures the DHCPv6 connection for the interface, if the family is 6
+ - Configures the static IPv6 address for the interface, if the family is 6
+ - Configures the routing table for the interface
+
+*Outputs*
+
+ - No output, if the configuration is successful
+ - Exit code 1, if the configuration fails
+"""
\ No newline at end of file
diff --git a/python/autodocs/interfaces/ppp-linkdown.py b/python/autodocs/interfaces/ppp-linkdown.py
new file mode 100644
index 0000000..ca3baa5
--- /dev/null
+++ b/python/autodocs/interfaces/ppp-linkdown.py
@@ -0,0 +1,24 @@
+
+"""
+script ppp-linkdown.sh
+---------------------------------------
+
+Handles the link down event for a PPP interface.
+
+It shuts down the PPP connection using `ngctl`.
+It performs different actions based on the address family:
+ - For inet, it disables IPv4 forwarding and routing, and removes the IPv4 address.
+ - For inet6, it disables IPv6 forwarding and routing, and removes the IPv6 address.
+It also logs the uptime of the PPP connection and updates the uptime log file.
+
+*Params*
+ - {1}: str
+ - The name of the PPP interface.
+ - {2} : str
+ - The address family (inet or inet6).
+
+*Notes*
+ - Thisscript assumes that the necessary commands (`ngctl`, `ifctl`, `configctl`, `ppp-uptime.sh`) are available.
+ - Thescript uses the `/conf/${IF}.log` file to log the uptime of the PPP connection.
+ - Thescript uses the `/tmp/${IF}_uptime` file to store the uptime of the PPP connection.
+"""
\ No newline at end of file
diff --git a/python/autodocs/interfaces/ppp-linkup.py b/python/autodocs/interfaces/ppp-linkup.py
new file mode 100644
index 0000000..10ba0b2
--- /dev/null
+++ b/python/autodocs/interfaces/ppp-linkup.py
@@ -0,0 +1,32 @@
+
+"""
+script ppp-linkup.sh
+---------------------------------------
+
+Handles the link up event for a PPP interface.
+
+
+It configures the interface for the specified address family (inet or inet6).
+It sets the DNS servers and router IP address if provided.
+It also triggers the `configctl` command to update the interface configuration.
+
+*Params*
+ ${1} : str
+ - IF: The name of the PPP interface.
+ ${2} : str
+ - AF: The address family (inet or inet6).
+ ${3} : None
+ - (unused)
+ ${4} : str
+ - ROUTER: The IP address of the router (optional).
+ ${5} : None
+ - (unused)
+ ${6} : str
+ - DNS1: The first DNS server IP address (optional).
+ ${7} : str
+ - DNS2: The second DNS server IP address (optional).
+
+*Notes*
+ - Thisscript assumes that the necessary commands (`ifctl`, `configctl`, `ppp-ipv6.php`) are available.
+ - Thescript uses the `/tmp/${IF}_uptime` file to store the uptime of the PPP connection.
+"""
\ No newline at end of file
diff --git a/python/autodocs/interfaces/ppp-rename.py b/python/autodocs/interfaces/ppp-rename.py
new file mode 100644
index 0000000..7d9f6ad
--- /dev/null
+++ b/python/autodocs/interfaces/ppp-rename.py
@@ -0,0 +1,25 @@
+
+"""
+script ppp-rename.sh
+---------------------------------------
+
+Handles the link up event for a PPP interface.
+
+It sets the interface name, ng device name, and ng device type.
+It then iterates over the ngctl list and checks if the ng device is found.
+If the ng device is found, it sets the ng device name.
+
+*Params*
+ - ${1} : str
+ - INTERFACE: The name of the PPP interface.
+ - ${2} : str
+ - NG_DEVICE: The name of the ng device.
+ - ${3} : str
+ - NG_TYPE: The type of the ng device.
+
+*Notes*
+ - Thisscript assumes that the necessary commands (`ngctl`) are available.
+ - Thescript uses the `ngctl list` command to list the ng devices.
+ - Thescript uses the `ngctl info` command to get the ng device information.
+ - Thescript uses the `ngctl name` command to set the ng device name.
+"""
\ No newline at end of file
diff --git a/python/autodocs/interfaces/ppp-uptime.py b/python/autodocs/interfaces/ppp-uptime.py
new file mode 100644
index 0000000..a76b607
--- /dev/null
+++ b/python/autodocs/interfaces/ppp-uptime.py
@@ -0,0 +1,24 @@
+
+"""
+
+script ppp-uptime.sh
+---------------------------------------
+
+Calculates the uptime of a PPP connection.
+
+It checks if the `/tmp/${IF}_uptime` file exists.
+If the file exists, it calculates the uptime by subtracting the modification time of the file from the current time.
+The uptime is returned in seconds.
+
+*Params*
+ - ${1} : str
+ - IF: The name of the PPP interface.
+
+*Returns*
+- int
+ - The uptime of the PPP connection in seconds.
+
+*Notes*
+ - Thisscript assumes that the necessary commands (`date`, `stat`) are available.
+ - Thescript uses the `/tmp/${IF}_uptime` file to store the uptime of the PPP connection.
+"""
\ No newline at end of file
diff --git a/python/autodocs/interfaces/reconfigure_gifs.py b/python/autodocs/interfaces/reconfigure_gifs.py
new file mode 100644
index 0000000..6fcd7b4
--- /dev/null
+++ b/python/autodocs/interfaces/reconfigure_gifs.py
@@ -0,0 +1,42 @@
+"""
+script reconfigure_gifs.php
+-------------------------------------------------------------------------
+
+A script to reconfigure GIF interfaces.
+
+This script uses the `file_exists`, `filesize`, `fopen`, `flock`, `fread`, `fwrite`, `ftruncate`, `explode`, `trim`, and other functions to interact with the file system and configure the GIF interfaces.
+
+*Arguments*
+ - $gifs_todo: An array to store the GIF interfaces to reconfigure
+ - $vfilename: The path to the file containing the GIF interfaces to reconfigure
+ - $gif_configure: An array to store the GIF interfaces to reconfigure
+ - $ifdetails: An array to store the interface details
+
+*Functions*
+ - file_exists(string $filename): Checks if a file exists
+ - filesize(string $filename): Returns the size of a file
+ - fopen(string $filename, string $mode): Opens a file pointer
+ - flock(resource $handle, int $operation): Locks or unlocks a file
+ - fread(resource $handle, int $length): Reads from a file pointer
+ - fwrite(resource $handle, string $string): Writes to a file pointer
+ - ftruncate(resource $handle, int $size): Truncates a file to a specified size
+ - explode(string $delimiter, string $string): Splits a string into an array using a delimiter
+ - trim(string $string): Removes whitespace from a string
+ - OPNsense\Interfaces\Gif()->gif->iterateItems(): Iterates over the GIF interfaces
+ - legacy_interface_destroy(string $interface): Destroys a legacy interface
+ - legacy_interfaces_details(): Returns the interface details
+ - interfaces_addresses_flush(string $interface, int $family, array $ifdetails): Flushes addresses from an interface
+ - _interfaces_gif_configure(array $gif): Configures a GIF interface
+ - interfaces_restart_by_device(bool $force, array $interfaces): Restarts interfaces
+
+*Flow*
+ - Reads the file containing the GIF interfaces to reconfigure
+ - Collects the GIF interfaces to reconfigure
+ - Removes non-existing interfaces
+ - Reconfigures the still existing GIF interfaces
+ - Removes addresses from the interfaces (if necessary)
+ - Configures the GIF interfaces
+ - Re-applies additional addresses and hooks routing (if necessary)
+
+/
+"""
\ No newline at end of file
diff --git a/python/autodocs/interfaces/reconfigure_gres.py b/python/autodocs/interfaces/reconfigure_gres.py
new file mode 100644
index 0000000..dc3059f
--- /dev/null
+++ b/python/autodocs/interfaces/reconfigure_gres.py
@@ -0,0 +1,41 @@
+"""
+
+script reconfigure_gres.php
+-------------------------------------------------------------------------
+
+A script to reconfigure GRE interfaces.
+
+This script uses the `file_exists`, `filesize`, `fopen`, `flock`, `fread`, `fwrite`, `ftruncate`, `explode`, `trim`, and other functions to interact with the file system and configure the GRE interfaces
+
+*Arguments*
+ - $gres_todo: An array to store the GRE interfaces to reconfigure
+ - $vfilename: The path to the file containing the GRE interfaces to reconfigure
+ - $gre_configure: An array to store the GRE interfaces to reconfigure
+ - $ifdetails: An array to store the interface details
+
+*Functions*
+ - file_exists(string $filename): Checks if a file exists
+ - filesize(string $filename): Returns the size of a file
+ - fopen(string $filename, string $mode): Opens a file pointer
+ - flock(resource $handle, int $operation): Locks or unlocks a file
+ - fread(resource $handle, int $length): Reads from a file pointer
+ - fwrite(resource $handle, string $string): Writes to a file pointer
+ - ftruncate(resource $handle, int $size): Truncates a file to a specified size
+ - explode(string $delimiter, string $string): Splits a string into an array using a delimiter
+ - trim(string $string): Removes whitespace from a string
+ - OPNsense\Interfaces\Gre()->gre->iterateItems(): Iterates over the GRE interfaces
+ - legacy_interface_destroy(string $interface): Destroys a legacy interface
+ - legacy_interfaces_details(): Returns the interface details
+ - interfaces_addresses_flush(string $interface, int $family, array $ifdetails): Flushes addresses from an interface
+ - _interfaces_gre_configure(array $gre): Configures a GRE interface
+ - interfaces_restart_by_device(bool $force, array $interfaces): Restarts interfaces
+
+*Flow*
+ - Reads the file containing the GRE interfaces to reconfigure
+ - Collects the GRE interfaces to reconfigure
+ - Removes non-existing interfaces
+ - Reconfigures the still existing GRE interfaces
+ - Removes addresses from the interfaces (if necessary)
+ - Configures the GRE interfaces
+ - Re-applies additional addresses and hooks routing (if necessary)
+"""
\ No newline at end of file
diff --git a/python/autodocs/interfaces/reconfigure_laggs.py b/python/autodocs/interfaces/reconfigure_laggs.py
new file mode 100644
index 0000000..c2a94c5
--- /dev/null
+++ b/python/autodocs/interfaces/reconfigure_laggs.py
@@ -0,0 +1,33 @@
+"""
+script reconfigure_laggs.php
+-------------------------------------------------------------------------
+
+A script to reconfigure LAGG interfaces.
+
+This script uses the `file_exists`, `filesize`, `fopen`, `flock`, `fread`, `fwrite`, `ftruncate`, `explode`, `trim`, and other functions to interact with the file system and configure the LAGG interfaces
+
+*Arguments*
+ - $laggs_todo: An array to store the LAGG interfaces to reconfigure
+ - $vfilename: The path to the file containing the LAGG interfaces to reconfigure
+ - $lagg_configure: An array to store the LAGG interfaces to reconfigure
+
+*Functions*
+ - file_exists(string $filename): Checks if a file exists
+ - filesize(string $filename): Returns the size of a file
+ - fopen(string $filename, string $mode): Opens a file pointer
+ - flock(resource $handle, int $operation): Locks or unlocks a file
+ - fread(resource $handle, int $length): Reads from a file pointer
+ - fwrite(resource $handle, string $string): Writes to a file pointer
+ - ftruncate(resource $handle, int $size): Truncates a file to a specified size
+ - explode(string $delimiter, string $string): Splits a string into an array using a delimiter
+ - trim(string $string): Removes whitespace from a string
+ - OPNsense\Interfaces\Lagg()->lagg->iterateItems(): Iterates over the LAGG interfaces
+ - legacy_interface_destroy(string $interface): Destroys a legacy interface
+ - _interfaces_lagg_configure(array $lagg): Configures a LAGG interface
+
+*Flow*
+ - Reads the file containing the LAGG interfaces to reconfigure
+ - Collects the LAGG interfaces to reconfigure
+ - Removes non-existing interfaces
+ - Reconfigures the still existing LAGG interfaces
+"""
\ No newline at end of file
diff --git a/python/autodocs/interfaces/reconfigure_neighbors.py b/python/autodocs/interfaces/reconfigure_neighbors.py
new file mode 100644
index 0000000..afe3e2f
--- /dev/null
+++ b/python/autodocs/interfaces/reconfigure_neighbors.py
@@ -0,0 +1,15 @@
+"""
+script reconfigure_neighbors.php
+---------------------------------------------------------------------------------------------------------
+
+This script uses the interfaces_neighbors_configure() function to configure the neighbors.
+
+The interfaces_neighbors_configure() function is defined in another module and is not part of this script.
+This script is very simple and consists of only one function call.
+
+*Functions*
+ - interfaces_neighbors_configure(): Configures the neighbors
+
+*Flow*
+ - Calls the interfaces_neighbors_configure() function to configure the neighbors
+"""
\ No newline at end of file
diff --git a/python/autodocs/interfaces/reconfigure_vips.py b/python/autodocs/interfaces/reconfigure_vips.py
new file mode 100644
index 0000000..8c0a6fa
--- /dev/null
+++ b/python/autodocs/interfaces/reconfigure_vips.py
@@ -0,0 +1,21 @@
+"""
+script reconfigure_vips.php
+-------------------------------------------------------------------------
+
+A script to reconfigure the Virtual IPs (VIPs).
+
+*Functions*
+ - legacy_interfaces_details(): Returns the interface details
+ - legacy_config_get_interfaces(): Returns the interface configurations
+ - legacy_interface_deladdress(): Deletes an IP address from an interface
+ - interface_ipalias_configure(): Configures an IP alias interface
+ - interface_carp_configure(): Configures a CARP interface
+ - interface_proxyarp_configure(): Configures the proxy ARP
+
+*Flow*
+ - Collects the IP addresses and their corresponding interfaces
+ - Removes deleted VIPs
+ - Compares the actual VIP configuration with the desired configuration
+ - Configures the VIPs based on the desired configuration
+/
+"""
\ No newline at end of file
diff --git a/python/autodocs/interfaces/reconfigure_vlans.py b/python/autodocs/interfaces/reconfigure_vlans.py
new file mode 100644
index 0000000..5803540
--- /dev/null
+++ b/python/autodocs/interfaces/reconfigure_vlans.py
@@ -0,0 +1,24 @@
+"""
+script reconfigure_vlans.php
+-------------------------------------------------------------------------
+
+A script to reconfigure the VLANs.
+
+*Functions*
+ - legacy_interfaces_details(): Returns the interface details
+ - legacy_interface_destroy(): Destroys an interface
+ - legacy_vlan_remove_tag(): Removes a VLAN tag from an interface
+ - legacy_vlan_tag(): Adds a VLAN tag to an interface
+ - legacy_vlan_pcp(): Sets the PCP (Priority Code Point) for a VLAN
+ - legacy_vlan_proto(): Sets the protocol for a VLAN
+ - _interfaces_vlan_configure(): Configures a VLAN interface
+ - ifgroup_setup(): Sets up the interface groups
+
+*Flow*
+ - Collects all relevant VLANs (new, updated, and removed) into a single list
+ - Merges the configured VLANs with the existing VLANs
+ - Handles existing VLANs (removed, changed, or unchanged)
+ - Configures new VLANs
+ - Sets up the interface groups
+
+"""
\ No newline at end of file
diff --git a/python/autodocs/interfaces/rtsold_resolvconf.py b/python/autodocs/interfaces/rtsold_resolvconf.py
new file mode 100644
index 0000000..c352573
--- /dev/null
+++ b/python/autodocs/interfaces/rtsold_resolvconf.py
@@ -0,0 +1,22 @@
+
+"""
+script rtsold_resolvconf.sh
+-------------------------------
+
+Processes Router Advertisements (RA) with RDNSS and DNSSL options.
+
+Thisscript is invoked by rtsold when a Router Advertisement with RDNSS and DNSSL options is received. It extracts the interface, router, and DNS information from the arguments and STDIN.
+
+*Params*
+ - ${1} : str
+ - Action:
+ - "-a" to add DNS information
+ - "-d" to delete DNS information
+ - ${2} : str
+ - Interface information: "ifname:slaac:[RA source address]"
+
+*Notes*
+ - Thisscript uses the ifctl(8) and configctl(8) commands to modify
+ the interface configuration.
+ - It uses the /var/etc/radvd.conf file to recognize its own configuration.
+"""
\ No newline at end of file
diff --git a/python/autodocs/interfaces/traffic_stats.py b/python/autodocs/interfaces/traffic_stats.py
new file mode 100644
index 0000000..2e60165
--- /dev/null
+++ b/python/autodocs/interfaces/traffic_stats.py
@@ -0,0 +1,21 @@
+"""
+
+script traffic_stats.php
+---------------------------------------------------------------------
+
+This script uses the `legacy_config_get_interfaces` and `legacy_interface_stats` functions to collect interface information and statistics.
+
+It also uses the `map_ifs` function to map interface data to a standardized format.
+If an interval is specified, the script will collect statistics at that interval and output the results in a streaming format.
+If no interval is specified, the script will collect statistics once and output the results in a single JSON object.
+
+*Params*
+ - srgsv[0] : int
+ - The interval in seconds to collect traffic statistics.
+
+*Returns*
+ - string
+ - The traffic statistics in JSON format.
+
+/
+"""
\ No newline at end of file
diff --git a/python/autodocs/ipsec/get_legacy_vti.py b/python/autodocs/ipsec/get_legacy_vti.py
new file mode 100644
index 0000000..15ea3b5
--- /dev/null
+++ b/python/autodocs/ipsec/get_legacy_vti.py
@@ -0,0 +1,23 @@
+"""
+
+script get_legacy_vti.php
+--------------------------------------------------------------------------------------------------------
+
+This script uses the ipsec_get_configured_vtis() function to retrieve the list of configured IPsec VTIs.
+
+The result is output in JSON format using the json_encode() function.
+
+*Returns*
+ - A JSON-encoded array containing the list of configured IPsec VTIs.
+
+*Functions*
+ - require_once(string $filename) : void - Includes the specified file.
+ - ipsec_get_configured_vtis() : array - Retrieves a list of configured IPsec VTIs.
+ - json_encode(array $data) : string - Encodes the data in JSON format.
+
+*Arguments*
+ - result : array - An array to store the result.
+ - vti : array - The current VTI.
+ - record : array - An array to store the VTI record.
+
+"""
\ No newline at end of file
diff --git a/python/autodocs/netflow/flush_all.py b/python/autodocs/netflow/flush_all.py
new file mode 100644
index 0000000..331d7f6
--- /dev/null
+++ b/python/autodocs/netflow/flush_all.py
@@ -0,0 +1,17 @@
+
+"""
+
+script flush_all.sh
+------------------------------
+
+Flushes local netflow data.
+
+If the "all" argument is provided, it stops the flowd and flowd_aggregate services,
+removes all netflow data files and log files, and then starts the services again.
+
+*Params*
+ - ${1}: str
+ - If str == "all" provided, all local netflow data will be flushed.
+
+
+"""
\ No newline at end of file
diff --git a/python/autodocs/openvpn/client_connect.py b/python/autodocs/openvpn/client_connect.py
new file mode 100644
index 0000000..69e7dc9
--- /dev/null
+++ b/python/autodocs/openvpn/client_connect.py
@@ -0,0 +1,19 @@
+"""
+script client_connect.php
+----------------------------------------------------------------------------------------------------------
+
+This script authenticates an OpenVPN user based on the provided common name and server ID, and generates a client configuration file if required.
+
+*Arguments*
+ - common_name : string - The common name of the user.
+ - vpnid : string - The ID of the OpenVPN server.
+ - config_file : string - The path to the client configuration file.
+ - server : OPNsense\OpenVPN\OpenVPN - The OpenVPN server instance.
+ - cso : OPNsense\OpenVPN\OpenVPN - The client-specific override configuration.
+
+*Environment Variables*
+ - common_name : The common name of the user.
+ - auth_server : The ID of the OpenVPN server.
+ - config_file : The path to the client configuration file.
+
+"""
\ No newline at end of file
diff --git a/python/autodocs/openvpn/client_disconnect.py b/python/autodocs/openvpn/client_disconnect.py
new file mode 100644
index 0000000..81d84e5
--- /dev/null
+++ b/python/autodocs/openvpn/client_disconnect.py
@@ -0,0 +1,10 @@
+
+"""
+script client_disconnect.sh
+------------------------------
+
+*Returns*
+ - int
+ - The exit status of thescript.
+
+"""
\ No newline at end of file
diff --git a/python/autodocs/openvpn/ovpn_service_control.py b/python/autodocs/openvpn/ovpn_service_control.py
new file mode 100644
index 0000000..4dd7664
--- /dev/null
+++ b/python/autodocs/openvpn/ovpn_service_control.py
@@ -0,0 +1,23 @@
+"""
+script ovpn_service_control.php
+----------------------------------------------------------------------------------------------------------
+
+Controls the OpenVPN instances on the system.
+It can be used to start, stop, restart, or configure instances.
+
+*Parameters*
+ - $argv : array
+ - $argsv[-2] : str
+ - action: stop|start|restart|configure
+ - $argsv[-1] : str
+ - uuid: UUID of the instance
+ - -a: all instances
+ - -h: help
+
+*Functions*
+ - setup_interface($instance): Configures the network interface for the OpenVPN instance.
+ - ovpn_start($instance, $fhandle): Starts the OpenVPN instance.
+ - ovpn_stop($instance, $destroy_if = false): Stops the OpenVPN instance.
+ - ovpn_instance_stats($instance, $fhandle): Reads the statistics of the OpenVPN instance.
+ - get_vhid_status(): Reads the status of the CARP instances.
+"""
\ No newline at end of file
diff --git a/python/autodocs/openvpn/tls_verify.py b/python/autodocs/openvpn/tls_verify.py
new file mode 100644
index 0000000..59b55d6
--- /dev/null
+++ b/python/autodocs/openvpn/tls_verify.py
@@ -0,0 +1,19 @@
+"""
+script tls_verify.php
+---------------------------------------------------------------------
+
+This script verifies the certificate depth for OpenVPN authentication.
+
+It uses the OPNsense\OpenVPN\OpenVPN class to retrieve the server instance by ID.
+It also uses the OPNsense\Trust\Store class to validate the OCSP response.
+The script checks the certificate depth and OCSP validation for the given server ID.
+If the verification fails, it logs a warning message and exits with a non-zero status code.
+
+*Params*
+ - argsv[0] : str
+ - The auth_server identifier for authentication.
+
+*Returns*
+ - int
+ - 0 on success, 1 on failure.
+"""
\ No newline at end of file
diff --git a/python/autodocs/openvpn/user_pass_verify.py b/python/autodocs/openvpn/user_pass_verify.py
new file mode 100644
index 0000000..7082b31
--- /dev/null
+++ b/python/autodocs/openvpn/user_pass_verify.py
@@ -0,0 +1,19 @@
+"""
+script user_pass_verify.php
+-----------------------------------------------------------------------------------------------------------------------------------------
+
+It also uses the OPNsense\OpenVPN\OpenVPN class to retrieve OpenVPN server information and create client-specific overrides.
+The script logs authentication results to the syslog.
+
+*Arguments*
+ - auth_server : string - The ID of the OpenVPN server.
+ - auth_method : string - The authentication method to use (via-env or via-file).
+ - common_name : string - The common name of the certificate.
+ - auth_file : string - The file containing the username and password (when using via-file method).
+ - auth_defer : bool - Whether to defer authentication to another process.
+ - auth_control_file : string - The file to write the authentication result to (when using auth_defer).
+
+*Returns*
+ - int
+ - 0 on success, non-zero on failure.
+"""
\ No newline at end of file
diff --git a/python/autodocs/repos/FreeBSD.py b/python/autodocs/repos/FreeBSD.py
new file mode 100644
index 0000000..1d3033c
--- /dev/null
+++ b/python/autodocs/repos/FreeBSD.py
@@ -0,0 +1,17 @@
+"""
+script FreeBSD.php
+------------------------------------------------------------------------------------------------------
+
+Disables the FreeBSD repository to avoid breakage.
+
+This script ensures that the FreeBSD repository is disabled by copying the sample configuration file over the active configuration file.
+
+*Arguments*
+ - conf : string
+ - The path to the FreeBSD repository configuration file.
+
+*Actions*
+
+ - Copies the sample configuration file ($conf . '.sample') over the active configuration file ($conf).
+
+"""
\ No newline at end of file
diff --git a/python/autodocs/repos/OPNsense.py b/python/autodocs/repos/OPNsense.py
new file mode 100644
index 0000000..644d492
--- /dev/null
+++ b/python/autodocs/repos/OPNsense.py
@@ -0,0 +1,16 @@
+"""
+script OPNsense.php
+---------------------------------------------------------------------
+
+Updates the OPNsense configuration based on the system settings.
+
+It also checks for a subscription key and appends the URL suffix if present.
+If no subscription key is set, the license file is deleted.
+
+*Params*
+
+ - argsv : array
+ - -A: specifies the ABI (Architecture-Based Interface) to use
+ - -m: specifies the mirror URL to use
+ - -n: specifies the flavour to use
+"""
\ No newline at end of file
diff --git a/python/autodocs/routes/del_route.py b/python/autodocs/routes/del_route.py
new file mode 100644
index 0000000..a046f30
--- /dev/null
+++ b/python/autodocs/routes/del_route.py
@@ -0,0 +1,15 @@
+"""
+script del_route.py
+------------------------------------------
+
+*Parameters*
+
+* destination : str
+ * Description: destination
+ * options : ['--destination']
+ * required : True
+* gateway : str
+ * Description: gateway
+ * options : ['--gateway']
+ * required : True
+"""
\ No newline at end of file
diff --git a/python/autodocs/routes/gateway_status.py b/python/autodocs/routes/gateway_status.py
new file mode 100644
index 0000000..b6deaa9
--- /dev/null
+++ b/python/autodocs/routes/gateway_status.py
@@ -0,0 +1,25 @@
+"""
+
+script gateway_status.php
+--------------------------------------------------------------------------------------------------------
+
+This script retrieves the status of gateways using the dpinger_status() function, and generates a JSON-encoded result containing information about each gateway.
+
+
+
+*Returns*
+ - A JSON-encoded array containing information about each gateway.
+
+*Functions*
+ - dpinger_status() : Retrieves the status of gateways.
+
+*Variables*
+
+ - result : array - An array to store the result of the script.
+ - gateways_status : array - An array containing the status of each gateway.
+ - gname : string - The name of the current gateway.
+ - gw : array - An array containing information about the current gateway.
+ - gatewayItem : array - An array to store information about the current gateway.
+ - status_translated : string - A translated version of the status of the current gateway.
+
+"""
\ No newline at end of file
diff --git a/python/autodocs/routes/gateway_watcher.py b/python/autodocs/routes/gateway_watcher.py
new file mode 100644
index 0000000..0f9b502
--- /dev/null
+++ b/python/autodocs/routes/gateway_watcher.py
@@ -0,0 +1,25 @@
+"""
+script gateway_watcher.php
+----------------------------------------------------------------------------------------------------------
+
+Dieses Script überwacht die Gateways und generiert Alarme, wenn ein Gateway nicht erreichbar ist.
+
+*Params*
+ - $argv[1] : string
+ - the action to execute: `configd_run($action)`
+
+*Functions*
+ - signalhandler($signal) : Function called when a signal is received.
+ - dpinger_status() : Function that returns the status of the gateways.
+ - config_read_array($section, $key) : Function that returns an array from the configuration.
+ - shell_safe($command, $args) : Function that safely executes a command.
+ - syslog($priority, $message) : Function that writes a message to the system log.
+
+*Variables*
+
+ - $config : array The system configuration.
+ - $mode : array An array that stores the status of the gateways.
+ - $poll : int The poll interval in seconds.
+ - $wait : int The wait interval in seconds.
+ - $alarm : bool A flag that indicates whether an alarm has been generated.
+"""
\ No newline at end of file
diff --git a/python/autodocs/routes/gateways.py b/python/autodocs/routes/gateways.py
new file mode 100644
index 0000000..467f8b4
--- /dev/null
+++ b/python/autodocs/routes/gateways.py
@@ -0,0 +1,34 @@
+"""
+
+script gateways.php
+------------------------------------------------------------------------
+
+Retrieves a list of gateways and their corresponding IP addresses or protocols.
+
+This script retrieves a list of gateways and their corresponding IP addresses or protocols, and outputs the result in JSON format.
+
+*Params*
+ - $argvs : array
+ - -g : Adds gateway groups to the result.
+ - -h : Displays the usage help.
+
+*Returns*
+ - A JSON-encoded array containing the list of gateways and their corresponding IP addresses or protocols.
+
+*Functions*
+ - getopt(string $shortopts, array $longopts = [], int &$optind = 0) : array
+ - Parses the command-line options.
+ - array_slice(array $array, int $offset, int $length = null) : array
+ - Extracts a slice of the array.
+ - is_ipaddr(string $ip) : bool
+ - Checks if the given string is a valid IP address.
+
+*Variables*
+ - mdl : \OPNsense\Routing\Gateways - An instance of the Gateways class.
+ - gateways : array - An array containing the list of gateways.
+ - ret : array - An array to store the result.
+ - opts : array - An array containing the parsed command-line options.
+ - args : array - An array containing the remaining command-line arguments.
+
+
+"""
\ No newline at end of file
diff --git a/python/autodocs/shell/banner.py b/python/autodocs/shell/banner.py
new file mode 100644
index 0000000..7950c59
--- /dev/null
+++ b/python/autodocs/shell/banner.py
@@ -0,0 +1,17 @@
+"""
+script banner.php
+--------------------------------------------------------------------
+
+Displays system information and network interface details.
+
+This script prints the system hostname, domain, and version, followed by a list of assigned network interfaces with their IP addresses, classes, and other details.
+
+*Arguments*
+ - version : str
+ - The system version.
+ - iflist : array
+ - A list of network interfaces.
+ - ifdetails : array
+ - A list of network interface details.
+
+"""
\ No newline at end of file
diff --git a/python/autodocs/shell/defaults.py b/python/autodocs/shell/defaults.py
new file mode 100644
index 0000000..ef185b8
--- /dev/null
+++ b/python/autodocs/shell/defaults.py
@@ -0,0 +1,20 @@
+"""
+script defaults.php
+------------------------------------------------------------------------
+
+Resets the firewall to factory defaults.
+
+This script prompts the user to confirm whether they want to reset the firewall to factory defaults, and then calls the reset_factory_defaults() function if the user confirms.
+
+
+
+*Arguments*
+ - fp : resource
+ - A file pointer to the standard input stream.
+ - yes_no_prompt : string
+ - The prompt to display to the user.
+
+*Functions*
+ - reset_factory_defaults() : Resets the firewall to factory defaults.
+
+"""
\ No newline at end of file
diff --git a/python/autodocs/shell/firmware.py b/python/autodocs/shell/firmware.py
new file mode 100644
index 0000000..62667a4
--- /dev/null
+++ b/python/autodocs/shell/firmware.py
@@ -0,0 +1,16 @@
+
+"""
+
+script firmware.sh
+------------------------------
+
+Thisscript performs firmware actions, such as fetching changelogs, running updates, and performing upgrades.
+It checks if an update or upgrade is available and prompts the user to confirm whether to proceed.
+If the user agrees, the update or upgrade is executed.
+
+Functions:
+ - run_action: Performs a firmware action and waits for user input.
+ - Fetches changelogs and updates.
+ - Checks if an upgrade is available.
+ - Runs updates and upgrades.
+"""
\ No newline at end of file
diff --git a/python/autodocs/shell/halt.py b/python/autodocs/shell/halt.py
new file mode 100644
index 0000000..85eff77
--- /dev/null
+++ b/python/autodocs/shell/halt.py
@@ -0,0 +1,23 @@
+"""
+
+script halt.php
+----------------------------------------------------------------------
+
+This script halts the system and powers it off after the user confirms that they want to proceed.
+
+This script uses the passthru() function to execute the system command '/usr/local/etc/rc.halt'.
+The user must confirm that they want to proceed before the system is shut down.
+
+*Functions*
+ - require_once(string $filename) : void - Includes the specified file.
+ - fopen(string $filename, string $mode) : resource - Opens a file or other file system.
+ - fgets(resource $stream) : string - Reads a line from a file stream.
+ - strcasecmp(string $str1, string $str2) : int - Compares two strings without considering case.
+ - passthru(string $command) : void - Executes a system command and returns the output.
+ - fclose(resource $stream) : bool - Closes a file stream.
+
+*Variables*
+ - fp : resource
+ - A file stream opened to the standard input.
+
+"""
\ No newline at end of file
diff --git a/python/autodocs/shell/password.py b/python/autodocs/shell/password.py
new file mode 100644
index 0000000..55cbfc6
--- /dev/null
+++ b/python/autodocs/shell/password.py
@@ -0,0 +1,31 @@
+"""
+script password.php
+-------------------------------------
+
+A script to reset the root user account.
+
+*Parameters*
+
+ - $argv[2] and $argv[3]: Options for the script
+ - -h 0: Mocking "pw usermod root -h 0"
+ - -x 0: Creates a new root user if none exists
+ - $fp : input stream
+
+*Functions*
+ - getUserEntryByUID(int $uid): Returns the user entry for the given UID
+ - local_user_set_password(array $user, string $password): Sets the password for the given user
+ - local_user_set(array $user): Saves the user entry
+ - write_config(string $message): Writes a message to the configuration
+
+*Flow*
+ - Checks if the options -h 0 or -x 0 were provided
+ - If -h 0, sets the password for the root user
+ - If -x 0, creates a new root user if none exists and sets the password
+ - If no options were provided, asks if the user wants to restore the default authentication mode
+ - If the user wants to restore the default authentication mode, sets the password for the root user
+
+*Outputs*
+
+ - Messages for resetting the root user account
+ - Error messages if the password is empty or does not match
+"""
\ No newline at end of file
diff --git a/python/autodocs/shell/ping.py b/python/autodocs/shell/ping.py
new file mode 100644
index 0000000..4ea3551
--- /dev/null
+++ b/python/autodocs/shell/ping.py
@@ -0,0 +1,36 @@
+"""
+
+script ping.php
+-------------------------------------
+
+A script to ping a host name or IP address.
+
+This script uses the `fopen`, `fgets`, `escapeshellarg`, `passthru`, and `fclose` functions to interact with the user and execute the ping command.
+The script assumes that the [/sbin/ping](cci:7://file:///sbin/ping:0:0-0:0) command is available on the system.
+
+*Parameters*
+
+ - $fp: The file pointer for standard input
+ - $pinghost: The host name or IP address to ping
+
+*Functions*
+ - fopen(string $filename, string $mode): Opens a file pointer
+ - fgets(resource $fp): Reads a line from the file pointer
+ - escapeshellarg(string $arg): Escapes a shell argument
+ - passthru(string $command): Executes a shell command and displays the output
+ - fclose(resource $fp): Closes a file pointer
+
+*Flow*
+ - Opens the standard input file pointer
+ - Prompts the user to enter a host name or IP address
+ - Reads the user input and stores it in the $pinghost variable
+ - Pings the host name or IP address using the [/sbin/ping](cci:7://file:///sbin/ping:0:0-0:0) command with the `-c 3` and `-n` options
+ - Displays the output of the ping command
+ - Prompts the user to press ENTER to continue
+ - Reads the user input and closes the standard input file pointer
+
+*Outputs*
+
+ - The output of the ping command
+
+"""
\ No newline at end of file
diff --git a/python/autodocs/shell/reboot.py b/python/autodocs/shell/reboot.py
new file mode 100644
index 0000000..a2d1c1b
--- /dev/null
+++ b/python/autodocs/shell/reboot.py
@@ -0,0 +1,33 @@
+"""
+script netboot.php
+-------------------------------------
+
+A script to reboot the system after confirmation.
+
+This script uses the `fopen`, `fgets`, `chop`, `strcasecmp`, `passthru`, and `fclose` functions to interact with the user and execute the reboot command.
+The script assumes that the `/usr/local/etc/rc.reboot` command is available on the system and will reboot the system.
+
+*Parameters*
+
+ - $fp: The file pointer for standard input
+
+*Functions*
+ - fopen(string $filename, string $mode): Opens a file pointer
+ - fgets(resource $fp): Reads a line from the file pointer
+ - chop(string $string): Removes trailing whitespace from a string
+ - strcasecmp(string $str1, string $str2): Compares two strings in a case-insensitive manner
+ - passthru(string $command): Executes a shell command and displays the output
+ - fclose(resource $fp): Closes a file pointer
+
+*Flow*
+ - Opens the standard input file pointer
+ - Prompts the user to confirm the reboot
+ - Reads the user input and checks if it matches 'y' (case-insensitive)
+ - If confirmed, executes the `/usr/local/etc/rc.reboot` command to reboot the system
+ - Closes the standard input file pointer
+
+*Outputs*
+
+ - The output of the reboot command (if executed)
+
+"""
\ No newline at end of file
diff --git a/python/autodocs/shell/restore.py b/python/autodocs/shell/restore.py
new file mode 100644
index 0000000..d27fe6c
--- /dev/null
+++ b/python/autodocs/shell/restore.py
@@ -0,0 +1,14 @@
+
+"""
+script restore.sh
+----------------------------------------
+
+Restores a backup of the OPNsense configuration.
+
+It lists all available backups, allows the user to select one, and then restores it.
+Thescript also offers the option to reboot the system to apply the backup cleanly.
+
+*Notes*
+ - Thisscript assumes that the necessary commands (`cd`, `find`, `date`, `sort`, `head`, `echo`, `read`, `cp`, `rc.reboot`, `rc.reload_all`) are available.
+ - Thescript uses the `/conf/backup` directory to store the backups.
+"""
\ No newline at end of file
diff --git a/python/autodocs/shell/setaddr.py b/python/autodocs/shell/setaddr.py
new file mode 100644
index 0000000..371ca31
--- /dev/null
+++ b/python/autodocs/shell/setaddr.py
@@ -0,0 +1,23 @@
+"""
+*
+script script setaddr.php
+---------------------------------------------------------------------
+
+This script is used to configure IP addresses and gateways for network interfaces.
+
+*Params*
+ - argsv[0] : str
+ - The name of the network interface to configure.
+ - $fp - input stream
+ - $fp = fopen('php://stdin', 'r');
+*Arguments*
+ - intip : str - The new IPv4 address for the interface.
+ - intbits : int - The subnet bit count for the IPv4 address.
+ - gwname : str - The name of the gateway for the interface.
+ - nameserver : str - The name server for the interface.
+ - intip6 : str - The new IPv6 address for the interface.
+ - intbits6 : int - The subnet bit count for the IPv6 address.
+ - gwname6 : str - The name of the gateway for the IPv6 interface.
+ - nameserver6 : str - The name server for the IPv6 interface.
+ The script does not return any value.
+"""
\ No newline at end of file
diff --git a/python/autodocs/shell/setports.py b/python/autodocs/shell/setports.py
new file mode 100644
index 0000000..785b57c
--- /dev/null
+++ b/python/autodocs/shell/setports.py
@@ -0,0 +1,24 @@
+"""
+
+script setports.php
+---------------------------------------------------------------------
+
+This script configures the networking interfaces and ports for the system.
+
+The script stops local servers to prevent faulty leases and then configures the interfaces, routing, DHCP, and VPN settings.
+
+
+
+*Returns*
+ - bool
+ - true if the configuration was successful, false otherwise
+
+This script requires the following files to be included:
+ - config.inc
+ - console.inc
+ - filter.inc
+ - util.inc
+ - system.inc
+ - interfaces.inc
+
+"""
\ No newline at end of file
diff --git a/python/autodocs/suricata/listRuleMetadata.py b/python/autodocs/suricata/listRuleMetadata.py
new file mode 100644
index 0000000..cf61988
--- /dev/null
+++ b/python/autodocs/suricata/listRuleMetadata.py
@@ -0,0 +1,13 @@
+"""
+script listRuleMetadata.py
+------------------------------------------
+
+*Parameters*
+
+* mode : str
+ * Description: fetch mode
+ * options : ['--mode']
+ * default : properties
+ * choices : ['properties', 'rules']
+ * required : False
+"""
\ No newline at end of file
diff --git a/python/autodocs/suricata/setup.py b/python/autodocs/suricata/setup.py
new file mode 100644
index 0000000..2cd08ae
--- /dev/null
+++ b/python/autodocs/suricata/setup.py
@@ -0,0 +1,14 @@
+
+"""
+script suricata_setup.sh
+---------------------------------------
+
+Sets up the Suricata directories and configuration files.
+
+It creates the necessary directories, sets the ownership and permissions, and creates a placeholder file if necessary.
+
+*Notes*
+ - Thisscript assumes that the necessary commands (`mkdir`, `chown`, `chmod`, `touch`) are available.
+ - Thescript uses the `/var/log/suricata` directory for Suricata logs.
+ - Thescript creates the `/usr/local/etc/suricata/installed_rules.yaml` file if it does not exist.
+"""
\ No newline at end of file
diff --git a/python/autodocs/syslog/clearlog.py b/python/autodocs/syslog/clearlog.py
new file mode 100644
index 0000000..391c390
--- /dev/null
+++ b/python/autodocs/syslog/clearlog.py
@@ -0,0 +1,25 @@
+"""
+
+script clearlog.php
+------------------------------------------------------------------------
+
+Clears log files for a specific module or service.
+
+This script removes log files for a specified module or service, and restarts the system syslog service.
+
+*Params* - argsv : array
+ - - -h : Show help text and exit.
+ - - -m : Specify the module name.
+ - - -f : Specify the log file name.
+
+*Arguments*
+ - opts : array
+ - An array of command-line options.
+ - mname : string
+ - The name of the module or service.
+ - fname : string
+ - The name of the log file.
+ - basename : string
+ - The base path of the log file.
+
+"""
\ No newline at end of file
diff --git a/python/autodocs/syslog/list_applications.py b/python/autodocs/syslog/list_applications.py
new file mode 100644
index 0000000..3427cd0
--- /dev/null
+++ b/python/autodocs/syslog/list_applications.py
@@ -0,0 +1,13 @@
+"""
+
+script list_applications.php
+---------------------------------------------------------------------
+
+Retrieves a list of syslog facilities and their corresponding plugin names.
+
+
+
+*Returns*
+ - string
+ - A JSON-encoded array containing syslog facilities as keys and plugin names as values.
+"""
\ No newline at end of file
diff --git a/python/autodocs/syslog/queryLog.py b/python/autodocs/syslog/queryLog.py
new file mode 100644
index 0000000..2add78f
--- /dev/null
+++ b/python/autodocs/syslog/queryLog.py
@@ -0,0 +1,47 @@
+"""
+script queryLog.py
+------------------------------------------
+
+*Parameters*
+
+* output : str
+ * Description: output type [json/text]
+ * options : ['--output']
+ * default : json
+ * required : False
+* filter : str
+ * Description: filter results
+ * options : ['--filter']
+ * default :
+ * required : False
+* limit : str
+ * Description: limit number of results
+ * options : ['--limit']
+ * default :
+ * required : False
+* offset : str
+ * Description: begin at row number
+ * options : ['--offset']
+ * default :
+ * required : False
+* filename : str
+ * Description: log file name (excluding .log extension)
+ * options : ['--filename']
+ * default :
+ * required : False
+* module : str
+ * Description: module
+ * options : ['--module']
+ * default : core
+ * required : False
+* severity : str
+ * Description: comma separated list of severities
+ * options : ['--severity']
+ * default :
+ * required : False
+* valid_from : str
+ * Description: oldest data to search for (epoch)
+ * options : ['--valid_from']
+ * default :
+ * required : False
+"""
\ No newline at end of file
diff --git a/python/autodocs/syslog/streamLog.py b/python/autodocs/syslog/streamLog.py
new file mode 100644
index 0000000..9b5f4a7
--- /dev/null
+++ b/python/autodocs/syslog/streamLog.py
@@ -0,0 +1,32 @@
+"""
+script streamLog.py
+------------------------------------------
+
+*Parameters*
+
+* filter : str
+ * Description: filter results
+ * options : ['--filter']
+ * default :
+ * required : False
+* offset : str
+ * Description: include last N matching lines
+ * options : ['--offset']
+ * default :
+ * required : False
+* filename : str
+ * Description: log file name (excluding .log extension)
+ * options : ['--filename']
+ * default :
+ * required : False
+* module : str
+ * Description: module
+ * options : ['--module']
+ * default : core
+ * required : False
+* severity : str
+ * Description: comma separated list of severities
+ * options : ['--severity']
+ * default :
+ * required : False
+"""
\ No newline at end of file
diff --git a/python/autodocs/system/cpu.py b/python/autodocs/system/cpu.py
new file mode 100644
index 0000000..053d0df
--- /dev/null
+++ b/python/autodocs/system/cpu.py
@@ -0,0 +1,12 @@
+"""
+script cpu.py
+------------------------------------------
+
+*Parameters*
+
+* interval : str
+ * Description: poll interval
+ * options : ['--interval']
+ * default : 1
+ * required : False
+"""
\ No newline at end of file
diff --git a/python/autodocs/system/nameservers.py b/python/autodocs/system/nameservers.py
new file mode 100644
index 0000000..6ec463a
--- /dev/null
+++ b/python/autodocs/system/nameservers.py
@@ -0,0 +1,14 @@
+"""
+script nameservers.php
+---------------------------------------------------------------------
+
+Retrieves a list of nameservers.
+
+*Arguments*
+ - - argv[1] : bool
+ - - Optional argument to specify whether to include additional information (default: false)
+
+*Returns*
+ - string
+ - - A JSON-encoded array containing the list of nameservers.
+"""
\ No newline at end of file
diff --git a/python/autodocs/system/remote_backup.py b/python/autodocs/system/remote_backup.py
new file mode 100644
index 0000000..647fc99
--- /dev/null
+++ b/python/autodocs/system/remote_backup.py
@@ -0,0 +1,23 @@
+"""
+script remote_backup.php
+-----------------------------------------------------------------------
+
+This script uses the BackupFactory class to manage backup providers.
+
+The script assumes that the backup providers are configured correctly and that the necessary dependencies are .
+This script is designed to be run remotely and can be used to perform backups at random intervals.
+
+*Arguments*
+ - $random_delay (optional): A random delay in seconds to add before starting the backup
+
+*Functions*
+ - BackupFactory::listProviders(): Returns a list of backup providers
+ - BackupProvider::isEnabled(): Checks if a backup provider is enabled
+ - BackupProvider::backup(): Performs a backup using a provider
+
+*Flow*
+ - Adds a random delay in seconds before starting the backup (if specified)
+ - Creates a BackupFactory instance
+ - Iterates over the list of backup providers
+ - Checks if each provider is enabled and performs a backup if it is
+"""
\ No newline at end of file
diff --git a/python/autodocs/system/ssl_ciphers.py b/python/autodocs/system/ssl_ciphers.py
new file mode 100644
index 0000000..91be1c6
--- /dev/null
+++ b/python/autodocs/system/ssl_ciphers.py
@@ -0,0 +1,18 @@
+"""
+script ssl_ciphers.py
+------------------------------------------
+
+*Parameters*
+
+* format : str
+ * Description: format
+ * options : ['--format']
+ * default : full
+ * choices : ['full', 'key_value']
+ * required : False
+* filter : str
+ * Description: filter version
+ * options : ['--filter']
+ * choices : ['TLSv1.3', 'pre-TLSv1.3', '']
+ * required : False
+"""
\ No newline at end of file
diff --git a/python/autodocs/system/status.py b/python/autodocs/system/status.py
new file mode 100644
index 0000000..8e861cc
--- /dev/null
+++ b/python/autodocs/system/status.py
@@ -0,0 +1,18 @@
+"""
+script status.php
+---------------------------------------------------------------------
+
+This script uses the OPNsense\System\SystemStatus class to retrieve the system status.
+
+If an action is specified (dismiss), the script will dismiss the corresponding status.
+If no action is specified, the script will display the system status in JSON format.
+
+*Params*
+ - argsv[0] : str
+ - The action to perform on the system status (dismiss).
+
+*Returns*
+ - string
+ - The system status in JSON format if no action is specified.
+
+"""
\ No newline at end of file
diff --git a/python/autodocs/system/sysctl.py b/python/autodocs/system/sysctl.py
new file mode 100644
index 0000000..6295552
--- /dev/null
+++ b/python/autodocs/system/sysctl.py
@@ -0,0 +1,11 @@
+"""
+script sysctl.py
+------------------------------------------
+
+*Parameters*
+
+* values : str
+ * Description: comma-separated list of sysctl values to fetch
+ * options : ['--values']
+ * required : False
+"""
\ No newline at end of file
diff --git a/python/autodocs/system/temperature.py b/python/autodocs/system/temperature.py
new file mode 100644
index 0000000..4c49562
--- /dev/null
+++ b/python/autodocs/system/temperature.py
@@ -0,0 +1,13 @@
+
+"""
+script temperature.sh
+---------------------------------------
+
+Displays the temperature readings from the system.
+
+It uses the `sysctl` command to retrieve the temperature-related sysctls and then sorts the output.
+
+*Notes*
+ - Thisscript assumes that the necessary command (`sysctl`) is available.
+ - Thescript only displays temperature readings if they are available on the system.
+"""
\ No newline at end of file
diff --git a/python/autodocs/unbound/cache.py b/python/autodocs/unbound/cache.py
new file mode 100644
index 0000000..2dae689
--- /dev/null
+++ b/python/autodocs/unbound/cache.py
@@ -0,0 +1,26 @@
+
+"""
+script cache.sh
+------------------------------
+
+Executes the main functionality of the program.
+
+*Params*
+ - ${1} : str
+ - Path to the configuration file.
+
+*Arguments*
+
+ - verbose : bool
+ Enable verbose mode for detailed output.
+ default= False
+ - debug : bool
+ Enable debug mode for troubleshooting.
+ default= False
+
+*Returns*
+
+- int
+ Exit status of thescript (0 for success, non-zero for failure)
+
+"""
\ No newline at end of file
diff --git a/python/autodocs/unbound/check.py b/python/autodocs/unbound/check.py
new file mode 100644
index 0000000..6644385
--- /dev/null
+++ b/python/autodocs/unbound/check.py
@@ -0,0 +1,20 @@
+
+"""
+script check.sh
+------------------------------
+
+
+*Params*
+
+- None
+
+*Arguments*
+
+- None
+
+*Returns*
+
+- int
+ The exit status of thescript.
+
+"""
\ No newline at end of file
diff --git a/python/autodocs/unbound/logger.py b/python/autodocs/unbound/logger.py
new file mode 100644
index 0000000..7ba8895
--- /dev/null
+++ b/python/autodocs/unbound/logger.py
@@ -0,0 +1,27 @@
+"""
+script logger.py
+------------------------------------------
+
+*Parameters*
+
+* pipe : str
+ * Description: named pipe file location
+ * options : ['--pipe']
+ * default : /var/unbound/data/dns_logger
+ * required : False
+* targetdb : str
+ * Description: duckdb filename
+ * options : ['--targetdb']
+ * default : /var/unbound/data/unbound.duckdb
+ * required : False
+* backup_dir : str
+ * Description: backup directory
+ * options : ['--backup_dir']
+ * default : /var/cache/unbound.duckdb
+ * required : False
+* flush_interval : str
+ * Description: interval to flush to db
+ * options : ['--flush_interval']
+ * default : 10
+ * required : False
+"""
\ No newline at end of file
diff --git a/python/autodocs/unbound/restore_db.py b/python/autodocs/unbound/restore_db.py
new file mode 100644
index 0000000..970cb30
--- /dev/null
+++ b/python/autodocs/unbound/restore_db.py
@@ -0,0 +1,17 @@
+"""
+script restore_db.py
+------------------------------------------
+
+*Parameters*
+
+* backup_dir : str
+ * Description: backup directory
+ * options : ['--backup_dir']
+ * default : /var/cache/unbound.duckdb
+ * required : False
+* targetdb : str
+ * Description: duckdb filename
+ * options : ['--targetdb']
+ * default : /var/unbound/data/unbound.duckdb
+ * required : False
+"""
\ No newline at end of file
diff --git a/python/autodocs/unbound/start.py b/python/autodocs/unbound/start.py
new file mode 100644
index 0000000..d1ef01a
--- /dev/null
+++ b/python/autodocs/unbound/start.py
@@ -0,0 +1,19 @@
+
+"""
+script start.sh
+---------------------------------------
+
+Starts the Unbound DNS resolver and configures it for use with OPNsense.
+
+It removes any existing configuration files, checks for the presence of the root.key file, and runs unbound-anchor if necessary.
+Thescript then copies configuration files from /usr/local/etc/unbound.opnsense.d to /var/unbound/etc and sets the ownership of the files to the unbound user.
+Finally, thescript starts the Unbound service and loads the DNS cache.
+
+*Params*
+ - ${1} : str
+ - DOMAIN: The domain name to use for DHCP and DNS configuration.
+
+*Notes*
+ - Thisscript assumes that the necessary commands (`unbound`, `unbound-anchor`, `unbound-control-setup`, `chown`, `daemon`) are available.
+ - Thescript uses the `/usr/local/opnsense/scripts/unbound` directory for Unbound-relatedscripts and configuration files.
+"""
\ No newline at end of file
diff --git a/python/autodocs/unbound/stats.py b/python/autodocs/unbound/stats.py
new file mode 100644
index 0000000..8c4686d
--- /dev/null
+++ b/python/autodocs/unbound/stats.py
@@ -0,0 +1,9 @@
+"""
+script stats.py
+------------------------------------------
+
+*Parameters*
+
+None
+
+"""
\ No newline at end of file
diff --git a/python/autodocs/unbound/wrapper.py b/python/autodocs/unbound/wrapper.py
new file mode 100644
index 0000000..b6ff681
--- /dev/null
+++ b/python/autodocs/unbound/wrapper.py
@@ -0,0 +1,9 @@
+"""
+script wrapper.py
+------------------------------------------
+
+*Parameters*
+
+None
+
+"""
\ No newline at end of file
diff --git a/python/opnsense_helper/scripts/scripts.py b/python/opnsense_helper/scripts/scripts.py
index 06a7f1a..08c0782 100644
--- a/python/opnsense_helper/scripts/scripts.py
+++ b/python/opnsense_helper/scripts/scripts.py
@@ -6,7 +6,7 @@
class Scripts():
"""
class Scripts
- ------------
+ -----------------------------
Initialize the Scripts class.
* its just a wrapper for all the opnsense scripts classes. see attributes below.
@@ -70,7 +70,7 @@ def __init__(self,base):
class unbound(Exec_Class):
"""
class unbound
- ----------
+ -----------------------------
* Initializes the unbound class, inheriting from Exec_Class.
@@ -122,7 +122,7 @@ def __init__(self, base):
class system(Exec_Class):
"""
class system
- ----------
+ -----------------------------
Initializes the system class, inheriting from Exec_Class.
@@ -178,7 +178,7 @@ def __init__(self, base):
class syslog(Exec_Class):
"""
class syslog
- ----------
+ -----------------------------
Initializes the syslog class, inheriting from Exec_Class.
@@ -227,7 +227,7 @@ def __init__(self, base):
class suricata(Exec_Class):
"""
class suricata
- -------------
+ -------------------------------------------------
Initializes the suricata class, inheriting from Exec_Class.
@@ -338,7 +338,7 @@ def __init__(self, base):
class shaper(Exec_Class):
"""
class Shaper
- ------------
+ -----------------------------
Initializes the shaper class, inheriting from Exec_Class.
@@ -378,7 +378,7 @@ def __init__(self, base):
class routes(Exec_Class):
"""
class routes
- ------------
+ -----------------------------
Initializes the routes class, inheriting from Exec_Class.
@@ -422,7 +422,7 @@ def __init__(self, base):
class openvpn(Exec_Class):
"""
class openvpn
- ------------
+ -----------------------------
Initializes the openvpn class, inheriting from Exec_Class.
@@ -473,7 +473,7 @@ def __init__(self, base):
class openssh(Exec_Class):
"""
class openssh
- -------------
+ ------------------------------
Initializes the openssh class, inheriting from Exec_Class.
@@ -510,7 +510,7 @@ def __init__(self, base):
class netflow(Exec_Class):
"""
class netflow
- -------------
+ ------------------------------
Initialize the netflow class, inheriting from Exec_Class.
@@ -560,7 +560,7 @@ def __init__(self, base):
class ipsec(Exec_Class):
"""
class ipsec
- -------------
+ ------------------------------
Initializes the ipsec class, inheriting from Exec_Class.
@@ -614,7 +614,7 @@ def __init__(self, base):
class interfaces(Exec_Class):
"""
class interfaces
- ----------------
+ ---------------------------------
Initializes the interfaces class, inheriting from Exec_Class.
@@ -698,7 +698,7 @@ def __init__(self, base):
class health(Exec_Class):
"""
class heatlh
- .............
+ -----------------
Initializes the health class, inheriting from Exec_Class.
@@ -738,7 +738,7 @@ def __init__(self, base):
class firmware(Exec_Class):
"""
clas firmware
- .............
+ ---------------
Initializes the firmware class, inheriting from Exec_Class.
@@ -822,7 +822,7 @@ def __init__(self, base):
class filter(Exec_Class):
"""
class filter
- .............
+ --------------
Initializes the filter class, inheriting from Exec_Class.
**Usage**
@@ -897,7 +897,7 @@ def __init__(self, base):
class dns(Exec_Class):
"""
class dns
- ........
+ ------------
Initializes the dns class, inheriting from Exec_Class.
@@ -932,7 +932,7 @@ def __init__(self, base):
class dhcp(Exec_Class):
"""
class dhcp
- ........
+ -----------
Initializes the dhcp class, inheriting from Exec_Class.
@@ -982,7 +982,7 @@ def __init__(self, base):
class auth(Exec_Class):
"""
class auth
- ------
+ ---------------
Initializes the auth class, inheriting from Exec_Class.
@@ -1020,7 +1020,7 @@ def __init__(self, base):
class Wireguard(Exec_Class):
"""
class Wireguard
- ------
+ -----------------
Initializes the Wireguard class, inheriting from Exec_Class.
diff --git a/python/setup.py b/python/setup.py
index c308d66..8e1e74d 100644
--- a/python/setup.py
+++ b/python/setup.py
@@ -8,7 +8,7 @@
setup(
name='opnsense_helper',
- version='0.1.25',
+ version='0.1.26',
description='backend api for opnsense. assign lan interfaces, create vlans, vlan-interfaces and setup dhcp in a single script.',
long_description=long_description,
long_description_content_type='text/markdown',
|