hfortix 0.3.34__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- hfortix-0.3.34/CHANGELOG.md +1915 -0
- hfortix-0.3.34/LICENSE +45 -0
- hfortix-0.3.34/MANIFEST.in +15 -0
- hfortix-0.3.34/PKG-INFO +1549 -0
- hfortix-0.3.34/QUICKSTART.md +693 -0
- hfortix-0.3.34/README.md +1507 -0
- hfortix-0.3.34/hfortix/FortiAnalyzer/__init__.py +27 -0
- hfortix-0.3.34/hfortix/FortiManager/__init__.py +24 -0
- hfortix-0.3.34/hfortix/FortiOS/__init__.py +66 -0
- hfortix-0.3.34/hfortix/FortiOS/api/__init__.py +159 -0
- hfortix-0.3.34/hfortix/FortiOS/api/_helpers/__init__.py +66 -0
- hfortix-0.3.34/hfortix/FortiOS/api/_helpers/helpers.py +666 -0
- hfortix-0.3.34/hfortix/FortiOS/api/utils.py +430 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/__init__.py +1 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/__init__.py +253 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/alertemail/__init__.py +22 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/alertemail/_helpers/__init__.py +1 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/alertemail/_helpers/setting.py +468 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/alertemail/setting.py +341 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/antivirus/__init__.py +28 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/antivirus/_helpers/__init__.py +1 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/antivirus/_helpers/exempt_list.py +196 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/antivirus/_helpers/profile.py +448 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/antivirus/_helpers/quarantine.py +233 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/antivirus/_helpers/settings.py +131 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/antivirus/exempt_list.py +321 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/antivirus/profile.py +592 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/antivirus/quarantine.py +219 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/antivirus/settings.py +198 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/application/__init__.py +30 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/application/_helpers/__init__.py +1 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/application/_helpers/custom.py +111 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/application/_helpers/group.py +180 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/application/_helpers/list.py +382 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/application/_helpers/name.py +246 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/application/_helpers/rule_settings.py +144 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/application/custom.py +404 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/application/group.py +420 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/application/list.py +494 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/application/name.py +385 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/application/rule_settings.py +290 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/authentication/__init__.py +26 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/authentication/_helpers/__init__.py +1 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/authentication/_helpers/rule.py +359 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/authentication/_helpers/scheme.py +407 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/authentication/_helpers/setting.py +236 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/authentication/rule.py +508 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/authentication/scheme.py +490 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/authentication/setting.py +269 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/automation/__init__.py +22 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/automation/_helpers/__init__.py +1 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/automation/_helpers/setting.py +111 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/automation/setting.py +185 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/casb/__init__.py +28 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/casb/_helpers/__init__.py +1 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/casb/_helpers/attribute_match.py +165 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/casb/_helpers/profile.py +144 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/casb/_helpers/saas_application.py +208 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/casb/_helpers/user_activity.py +265 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/casb/attribute_match.py +358 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/casb/profile.py +349 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/casb/saas_application.py +400 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/casb/user_activity.py +416 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/certificate/__init__.py +30 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/certificate/_helpers/__init__.py +1 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/certificate/_helpers/ca.py +50 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/certificate/_helpers/crl.py +50 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/certificate/_helpers/hsm_local.py +349 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/certificate/_helpers/local.py +50 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/certificate/_helpers/remote.py +50 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/certificate/ca.py +137 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/certificate/crl.py +137 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/certificate/hsm_local.py +464 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/certificate/local.py +137 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/certificate/remote.py +137 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/diameter_filter/__init__.py +22 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/diameter_filter/_helpers/__init__.py +1 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/diameter_filter/_helpers/profile.py +315 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/diameter_filter/profile.py +442 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/dlp/__init__.py +45 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/dlp/_helpers/__init__.py +1 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/dlp/_helpers/data_type.py +313 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/dlp/_helpers/dictionary.py +184 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/dlp/_helpers/exact_data_match.py +168 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/dlp/_helpers/filepattern.py +168 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/dlp/_helpers/label.py +192 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/dlp/_helpers/profile.py +311 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/dlp/_helpers/sensor.py +173 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/dlp/_helpers/settings.py +91 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/dlp/data_type.py +438 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/dlp/dictionary.py +378 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/dlp/exact_data_match.py +360 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/dlp/filepattern.py +358 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/dlp/label.py +374 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/dlp/profile.py +420 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/dlp/sensor.py +368 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/dlp/settings.py +175 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/dnsfilter/__init__.py +24 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/dnsfilter/_helpers/__init__.py +1 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/dnsfilter/_helpers/domain_filter.py +168 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/dnsfilter/_helpers/profile.py +296 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/dnsfilter/domain_filter.py +358 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/dnsfilter/profile.py +484 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/emailfilter/__init__.py +45 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/emailfilter/_helpers/__init__.py +1 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/emailfilter/_helpers/block_allow_list.py +168 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/emailfilter/_helpers/bword.py +164 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/emailfilter/_helpers/dnsbl.py +164 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/emailfilter/_helpers/fortishield.py +100 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/emailfilter/_helpers/iptrust.py +164 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/emailfilter/_helpers/mheader.py +164 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/emailfilter/_helpers/options.py +85 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/emailfilter/_helpers/profile.py +474 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/emailfilter/block_allow_list.py +359 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/emailfilter/bword.py +313 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/emailfilter/dnsbl.py +358 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/emailfilter/fortishield.py +184 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/emailfilter/iptrust.py +358 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/emailfilter/mheader.py +358 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/emailfilter/options.py +174 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/emailfilter/profile.py +486 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/endpoint_control/__init__.py +26 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/endpoint_control/_helpers/__init__.py +1 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/endpoint_control/_helpers/fctems.py +287 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/endpoint_control/_helpers/fctems_override.py +289 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/endpoint_control/_helpers/settings.py +84 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/endpoint_control/fctems.py +557 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/endpoint_control/fctems_override.py +560 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/endpoint_control/settings.py +175 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/ethernet_oam/__init__.py +22 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/ethernet_oam/_helpers/__init__.py +1 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/ethernet_oam/_helpers/cfm.py +93 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/ethernet_oam/cfm.py +361 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/extension_controller/__init__.py +39 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/extension_controller/_helpers/__init__.py +1 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/extension_controller/_helpers/dataplan.py +481 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/extension_controller/_helpers/extender.py +435 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/extension_controller/_helpers/extender_profile.py +314 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/extension_controller/_helpers/extender_vap.py +438 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/extension_controller/_helpers/fortigate.py +251 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/extension_controller/_helpers/fortigate_profile.py +175 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/extension_controller/dataplan.py +485 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/extension_controller/extender.py +507 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/extension_controller/extender_profile.py +439 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/extension_controller/extender_vap.py +511 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/extension_controller/fortigate.py +385 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/extension_controller/fortigate_profile.py +363 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/file_filter/__init__.py +22 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/file_filter/_helpers/__init__.py +1 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/file_filter/_helpers/profile.py +232 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/file_filter/profile.py +394 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/firewall/DoS_policy.py +358 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/firewall/DoS_policy6.py +358 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/firewall/__init__.py +320 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/firewall/_helpers/DoS_policy.py +199 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/firewall/_helpers/DoS_policy6.py +199 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/firewall/_helpers/__init__.py +29 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/firewall/_helpers/access_proxy.py +348 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/firewall/_helpers/access_proxy6.py +348 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/firewall/_helpers/access_proxy_ssh_client_cert.py +260 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/firewall/_helpers/access_proxy_virtual_host.py +234 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/firewall/_helpers/address.py +668 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/firewall/_helpers/address6.py +429 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/firewall/_helpers/address6_template.py +187 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/firewall/_helpers/addrgrp.py +261 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/firewall/_helpers/addrgrp6.py +204 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/firewall/_helpers/auth_portal.py +102 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/firewall/_helpers/central_snat_map.py +317 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/firewall/_helpers/city.py +152 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/firewall/_helpers/country.py +152 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/firewall/_helpers/decrypted_traffic_mirror.py +172 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/firewall/_helpers/dnstranslation.py +144 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/firewall/_helpers/global_.py +84 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/firewall/_helpers/identity_based_route.py +146 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/firewall/_helpers/interface_policy.py +448 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/firewall/_helpers/interface_policy6.py +448 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/firewall/_helpers/internet_service.py +424 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/firewall/_helpers/internet_service_addition.py +156 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/firewall/_helpers/internet_service_append.py +106 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/firewall/_helpers/internet_service_botnet.py +156 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/firewall/_helpers/internet_service_custom.py +174 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/firewall/_helpers/internet_service_custom_group.py +146 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/firewall/_helpers/internet_service_definition.py +144 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/firewall/_helpers/internet_service_extension.py +156 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/firewall/_helpers/internet_service_fortiguard.py +146 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/firewall/_helpers/internet_service_group.py +165 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/firewall/_helpers/internet_service_ipbl_reason.py +156 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/firewall/_helpers/internet_service_ipbl_vendor.py +156 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/firewall/_helpers/internet_service_list.py +156 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/firewall/_helpers/internet_service_name.py +265 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/firewall/_helpers/internet_service_owner.py +156 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/firewall/_helpers/internet_service_reputation.py +156 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/firewall/_helpers/internet_service_sld.py +156 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/firewall/_helpers/internet_service_subapp.py +144 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/firewall/_helpers/ip_translation.py +91 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/firewall/_helpers/ipmacbinding_setting.py +104 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/firewall/_helpers/ipmacbinding_table.py +169 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/firewall/_helpers/ippool.py +624 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/firewall/_helpers/ippool6.py +201 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/firewall/_helpers/ldb_monitor.py +330 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/firewall/_helpers/local_in_policy.py +364 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/firewall/_helpers/local_in_policy6.py +345 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/firewall/_helpers/multicast_address.py +199 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/firewall/_helpers/multicast_address6.py +168 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/firewall/_helpers/multicast_policy.py +396 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/firewall/_helpers/multicast_policy6.py +365 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/firewall/_helpers/network_service_dynamic.py +170 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/firewall/_helpers/on_demand_sniffer.py +211 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/firewall/_helpers/policy.py +2347 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/firewall/_helpers/profile_group.py +392 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/firewall/_helpers/profile_protocol_options.py +215 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/firewall/_helpers/proxy_address.py +381 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/firewall/_helpers/proxy_addrgrp.py +187 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/firewall/_helpers/proxy_policy.py +1009 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/firewall/_helpers/region.py +152 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/firewall/_helpers/schedule_group.py +175 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/firewall/_helpers/schedule_onetime.py +209 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/firewall/_helpers/schedule_recurring.py +232 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/firewall/_helpers/security_policy.py +862 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/firewall/_helpers/service_category.py +165 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/firewall/_helpers/service_custom.py +571 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/firewall/_helpers/service_group.py +206 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/firewall/_helpers/shaper_per_ip_shaper.py +321 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/firewall/_helpers/shaper_traffic_shaper.py +425 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/firewall/_helpers/shaping_policy.py +402 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/firewall/_helpers/shaping_profile.py +119 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/firewall/_helpers/sniffer.py +550 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/firewall/_helpers/ssh_host_key.py +265 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/firewall/_helpers/ssh_local_ca.py +153 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/firewall/_helpers/ssh_local_key.py +153 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/firewall/_helpers/ssh_setting.py +132 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/firewall/_helpers/ssl_server.py +349 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/firewall/_helpers/ssl_setting.py +260 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/firewall/_helpers/ssl_ssh_profile.py +417 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/firewall/_helpers/traffic_class.py +87 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/firewall/_helpers/ttl_policy.py +206 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/firewall/_helpers/vendor_mac.py +206 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/firewall/_helpers/vendor_mac_summary.py +74 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/firewall/_helpers/vip.py +1814 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/firewall/_helpers/vip6.py +1551 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/firewall/_helpers/vipgrp.py +176 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/firewall/_helpers/vipgrp6.py +166 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/firewall/_helpers/wildcard_fqdn_custom.py +180 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/firewall/_helpers/wildcard_fqdn_group.py +168 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/firewall/access_proxy.py +462 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/firewall/access_proxy6.py +462 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/firewall/access_proxy_ssh_client_cert.py +420 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/firewall/access_proxy_virtual_host.py +401 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/firewall/address.py +711 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/firewall/address6.py +568 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/firewall/address6_template.py +377 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/firewall/addrgrp.py +426 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/firewall/addrgrp6.py +402 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/firewall/auth_portal.py +195 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/firewall/central_snat_map.py +521 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/firewall/city.py +297 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/firewall/country.py +305 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/firewall/decrypted_traffic_mirror.py +373 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/firewall/dnstranslation.py +325 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/firewall/global_.py +175 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/firewall/identity_based_route.py +306 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/firewall/interface_policy.py +491 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/firewall/interface_policy6.py +493 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/firewall/internet_service.py +384 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/firewall/internet_service_addition.py +357 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/firewall/internet_service_append.py +187 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/firewall/internet_service_botnet.py +300 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/firewall/internet_service_custom.py +365 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/firewall/internet_service_custom_group.py +354 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/firewall/internet_service_definition.py +303 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/firewall/internet_service_extension.py +368 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/firewall/internet_service_fortiguard.py +311 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/firewall/internet_service_group.py +363 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/firewall/internet_service_ipbl_reason.py +301 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/firewall/internet_service_ipbl_vendor.py +301 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/firewall/internet_service_list.py +345 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/firewall/internet_service_name.py +377 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/firewall/internet_service_owner.py +300 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/firewall/internet_service_reputation.py +301 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/firewall/internet_service_sld.py +298 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/firewall/internet_service_subapp.py +300 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/firewall/ip_translation.py +379 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/firewall/ipmacbinding_setting.py +186 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/firewall/ipmacbinding_table.py +327 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/firewall/ippool.py +608 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/firewall/ippool6.py +406 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/firewall/ldb_monitor.py +458 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/firewall/local_in_policy.py +553 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/firewall/local_in_policy6.py +550 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/firewall/multicast_address.py +411 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/firewall/multicast_address6.py +369 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/firewall/multicast_policy.py +511 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/firewall/multicast_policy6.py +469 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/firewall/network_service_dynamic.py +353 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/firewall/on_demand_sniffer.py +401 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/firewall/policy.py +1645 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/firewall/profile_group.py +516 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/firewall/profile_protocol_options.py +473 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/firewall/proxy_address.py +514 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/firewall/proxy_addrgrp.py +386 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/firewall/proxy_policy.py +1077 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/firewall/region.py +305 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/firewall/schedule_group.py +368 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/firewall/schedule_onetime.py +409 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/firewall/schedule_recurring.py +397 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/firewall/security_policy.py +1139 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/firewall/service_category.py +361 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/firewall/service_custom.py +568 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/firewall/service_group.py +384 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/firewall/shaper_per_ip_shaper.py +443 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/firewall/shaper_traffic_shaper.py +519 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/firewall/shaping_policy.py +776 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/firewall/shaping_profile.py +379 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/firewall/sniffer.py +604 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/firewall/ssh_host_key.py +355 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/firewall/ssh_local_ca.py +323 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/firewall/ssh_local_key.py +323 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/firewall/ssh_setting.py +211 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/firewall/ssl_server.py +458 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/firewall/ssl_setting.py +245 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/firewall/ssl_ssh_profile.py +594 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/firewall/traffic_class.py +298 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/firewall/ttl_policy.py +390 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/firewall/vendor_mac.py +313 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/firewall/vendor_mac_summary.py +171 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/firewall/vip.py +1358 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/firewall/vip6.py +1200 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/firewall/vipgrp.py +380 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/firewall/vipgrp6.py +372 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/firewall/wildcard_fqdn_custom.py +324 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/firewall/wildcard_fqdn_group.py +324 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/ftp_proxy/__init__.py +22 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/ftp_proxy/_helpers/__init__.py +1 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/ftp_proxy/_helpers/explicit.py +134 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/ftp_proxy/explicit.py +218 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/icap/__init__.py +26 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/icap/_helpers/__init__.py +1 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/icap/_helpers/profile.py +654 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/icap/_helpers/server.py +279 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/icap/_helpers/server_group.py +153 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/icap/profile.py +620 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/icap/server.py +428 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/icap/server_group.py +354 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/ips/__init__.py +45 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/ips/_helpers/__init__.py +1 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/ips/_helpers/custom.py +137 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/ips/_helpers/decoder.py +132 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/ips/_helpers/global_.py +285 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/ips/_helpers/rule.py +265 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/ips/_helpers/rule_settings.py +144 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/ips/_helpers/sensor.py +211 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/ips/_helpers/settings.py +162 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/ips/_helpers/view_map.py +244 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/ips/custom.py +432 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/ips/decoder.py +350 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/ips/global_.py +271 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/ips/rule.py +393 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/ips/rule_settings.py +334 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/ips/sensor.py +386 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/ips/settings.py +202 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/ips/view_map.py +366 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/log/__init__.py +321 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/log/_helpers/__init__.py +1 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/log/_helpers/custom_field.py +158 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/log/_helpers/disk_filter.py +203 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/log/_helpers/disk_setting.py +409 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/log/_helpers/eventfilter.py +244 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/log/_helpers/fortianalyzer2_filter.py +193 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/log/_helpers/fortianalyzer2_override_filter.py +193 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/log/_helpers/fortianalyzer2_override_setting.py +338 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/log/_helpers/fortianalyzer2_setting.py +328 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/log/_helpers/fortianalyzer3_filter.py +193 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/log/_helpers/fortianalyzer3_override_filter.py +193 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/log/_helpers/fortianalyzer3_override_setting.py +338 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/log/_helpers/fortianalyzer3_setting.py +328 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/log/_helpers/fortianalyzer_cloud_filter.py +193 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/log/_helpers/fortianalyzer_cloud_setting.py +290 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/log/_helpers/fortianalyzer_filter.py +193 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/log/_helpers/fortianalyzer_override_filter.py +193 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/log/_helpers/fortianalyzer_override_setting.py +338 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/log/_helpers/fortianalyzer_setting.py +328 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/log/_helpers/fortiguard_filter.py +183 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/log/_helpers/fortiguard_override_filter.py +183 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/log/_helpers/fortiguard_override_setting.py +153 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/log/_helpers/fortiguard_setting.py +208 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/log/_helpers/gui_display.py +104 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/log/_helpers/memory_filter.py +193 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/log/_helpers/memory_global_setting.py +139 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/log/_helpers/memory_setting.py +84 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/log/_helpers/null_device_filter.py +193 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/log/_helpers/null_device_setting.py +84 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/log/_helpers/setting.py +350 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/log/_helpers/syslogd2_filter.py +193 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/log/_helpers/syslogd2_override_filter.py +193 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/log/_helpers/syslogd2_override_setting.py +262 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/log/_helpers/syslogd2_setting.py +252 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/log/_helpers/syslogd3_filter.py +193 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/log/_helpers/syslogd3_override_filter.py +193 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/log/_helpers/syslogd3_override_setting.py +262 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/log/_helpers/syslogd3_setting.py +252 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/log/_helpers/syslogd4_filter.py +193 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/log/_helpers/syslogd4_override_filter.py +193 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/log/_helpers/syslogd4_override_setting.py +262 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/log/_helpers/syslogd4_setting.py +252 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/log/_helpers/syslogd_filter.py +193 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/log/_helpers/syslogd_override_filter.py +193 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/log/_helpers/syslogd_override_setting.py +262 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/log/_helpers/syslogd_setting.py +252 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/log/_helpers/threat_weight.py +142 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/log/_helpers/webtrends_filter.py +193 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/log/_helpers/webtrends_setting.py +90 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/log/custom_field.py +350 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/log/disk_filter.py +226 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/log/disk_setting.py +324 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/log/eventfilter.py +241 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/log/fortianalyzer2_filter.py +223 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/log/fortianalyzer2_override_filter.py +226 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/log/fortianalyzer2_override_setting.py +311 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/log/fortianalyzer2_setting.py +303 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/log/fortianalyzer3_filter.py +222 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/log/fortianalyzer3_override_filter.py +225 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/log/fortianalyzer3_override_setting.py +311 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/log/fortianalyzer3_setting.py +303 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/log/fortianalyzer_cloud_filter.py +225 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/log/fortianalyzer_cloud_override_filter.py +225 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/log/fortianalyzer_cloud_override_setting.py +178 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/log/fortianalyzer_cloud_setting.py +283 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/log/fortianalyzer_filter.py +221 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/log/fortianalyzer_override_filter.py +225 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/log/fortianalyzer_override_setting.py +311 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/log/fortianalyzer_setting.py +303 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/log/fortiguard_filter.py +217 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/log/fortiguard_override_filter.py +221 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/log/fortiguard_override_setting.py +215 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/log/fortiguard_setting.py +239 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/log/gui_display.py +185 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/log/memory_filter.py +222 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/log/memory_global_setting.py +197 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/log/memory_setting.py +175 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/log/null_device_filter.py +221 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/log/null_device_setting.py +176 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/log/setting.py +307 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/log/syslogd2_filter.py +221 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/log/syslogd2_override_filter.py +222 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/log/syslogd2_override_setting.py +247 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/log/syslogd2_setting.py +241 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/log/syslogd3_filter.py +221 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/log/syslogd3_override_filter.py +222 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/log/syslogd3_override_setting.py +247 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/log/syslogd3_setting.py +241 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/log/syslogd4_filter.py +221 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/log/syslogd4_override_filter.py +222 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/log/syslogd4_override_setting.py +247 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/log/syslogd4_setting.py +241 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/log/syslogd_filter.py +221 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/log/syslogd_override_filter.py +222 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/log/syslogd_override_setting.py +247 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/log/syslogd_setting.py +241 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/log/tacacs_plus_accounting2_filter.py +189 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/log/tacacs_plus_accounting2_setting.py +204 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/log/tacacs_plus_accounting3_filter.py +189 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/log/tacacs_plus_accounting3_setting.py +204 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/log/tacacs_plus_accounting_filter.py +189 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/log/tacacs_plus_accounting_setting.py +204 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/log/threat_weight.py +220 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/log/webtrends_filter.py +221 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/log/webtrends_setting.py +178 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/monitoring/__init__.py +22 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/monitoring/_helpers/__init__.py +1 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/monitoring/_helpers/npu_hpe.py +95 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/monitoring/npu_hpe.py +184 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/report/__init__.py +24 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/report/_helpers/__init__.py +1 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/report/_helpers/layout.py +340 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/report/_helpers/setting.py +136 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/report/layout.py +464 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/report/setting.py +191 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/router/__init__.py +99 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/router/_helpers/__init__.py +1 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/router/_helpers/access_list.py +146 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/router/_helpers/access_list6.py +146 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/router/_helpers/aspath_list.py +134 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/router/_helpers/auth_path.py +146 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/router/_helpers/bfd.py +74 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/router/_helpers/bfd6.py +74 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/router/_helpers/bgp.py +685 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/router/_helpers/community_list.py +153 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/router/_helpers/extcommunity_list.py +153 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/router/_helpers/isis.py +415 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/router/_helpers/key_chain.py +134 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/router/_helpers/multicast.py +115 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/router/_helpers/multicast6.py +94 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/router/_helpers/multicast_flow.py +146 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/router/_helpers/ospf.py +363 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/router/_helpers/ospf6.py +215 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/router/_helpers/policy.py +384 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/router/_helpers/policy6.py +384 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/router/_helpers/prefix_list.py +146 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/router/_helpers/prefix_list6.py +146 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/router/_helpers/rip.py +158 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/router/_helpers/ripng.py +148 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/router/_helpers/route_map.py +146 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/router/_helpers/setting.py +103 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/router/_helpers/static.py +442 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/router/_helpers/static6.py +400 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/router/access_list.py +350 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/router/access_list6.py +350 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/router/aspath_list.py +342 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/router/auth_path.py +305 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/router/bfd.py +178 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/router/bfd6.py +178 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/router/bgp.py +494 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/router/community_list.py +350 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/router/extcommunity_list.py +352 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/router/isis.py +360 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/router/key_chain.py +334 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/router/multicast.py +197 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/router/multicast6.py +188 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/router/multicast_flow.py +350 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/router/ospf.py +327 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/router/ospf6.py +262 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/router/policy.py +541 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/router/policy6.py +541 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/router/prefix_list.py +350 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/router/prefix_list6.py +350 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/router/rip.py +234 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/router/ripng.py +234 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/router/route_map.py +350 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/router/setting.py +183 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/router/static.py +519 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/router/static6.py +477 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/rule/__init__.py +28 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/rule/_helpers/__init__.py +1 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/rule/_helpers/fmwp.py +265 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/rule/_helpers/iotd.py +246 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/rule/_helpers/otdt.py +246 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/rule/_helpers/otvp.py +265 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/rule/fmwp.py +393 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/rule/iotd.py +385 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/rule/otdt.py +385 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/rule/otvp.py +393 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/sctp_filter/__init__.py +22 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/sctp_filter/_helpers/__init__.py +1 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/sctp_filter/_helpers/profile.py +144 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/sctp_filter/profile.py +350 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/switch_controller/_802_1X_settings.py +224 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/switch_controller/__init__.py +162 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/switch_controller/_helpers/__init__.py +1 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/switch_controller/_helpers/acl_group.py +134 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/switch_controller/_helpers/acl_ingress.py +156 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/switch_controller/_helpers/auto_config_custom.py +134 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/switch_controller/_helpers/auto_config_default.py +92 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/switch_controller/_helpers/auto_config_policy.py +215 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/switch_controller/_helpers/custom_command.py +88 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/switch_controller/_helpers/dynamic_port_policy.py +158 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/switch_controller/_helpers/flow_tracking.py +256 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/switch_controller/_helpers/fortilink_settings.py +212 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/switch_controller/_helpers/global_.py +380 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/switch_controller/_helpers/igmp_snooping.py +109 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/switch_controller/_helpers/initial_config_template.py +225 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/switch_controller/_helpers/initial_config_vlans.py +126 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/switch_controller/_helpers/ip_source_guard_log.py +101 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/switch_controller/_helpers/lldp_profile.py +456 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/switch_controller/_helpers/lldp_settings.py +133 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/switch_controller/_helpers/location.py +132 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/switch_controller/_helpers/mac_policy.py +273 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/switch_controller/_helpers/managed_switch.py +510 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/switch_controller/_helpers/network_monitor_settings.py +84 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/switch_controller/_helpers/ptp_interface_policy.py +180 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/switch_controller/_helpers/ptp_profile.py +251 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/switch_controller/_helpers/qos_dot1p_map.py +389 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/switch_controller/_helpers/qos_ip_dscp_map.py +146 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/switch_controller/_helpers/qos_qos_policy.py +192 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/switch_controller/_helpers/qos_queue_policy.py +172 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/switch_controller/_helpers/remote_log.py +278 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/switch_controller/_helpers/sflow.py +88 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/switch_controller/_helpers/snmp_community.py +445 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/switch_controller/_helpers/snmp_sysinfo.py +108 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/switch_controller/_helpers/snmp_trap_threshold.py +125 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/switch_controller/_helpers/snmp_user.py +239 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/switch_controller/_helpers/storm_control.py +129 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/switch_controller/_helpers/storm_control_policy.py +272 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/switch_controller/_helpers/stp_instance.py +134 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/switch_controller/_helpers/stp_settings.py +151 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/switch_controller/_helpers/switch_group.py +158 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/switch_controller/_helpers/switch_interface_tag.py +134 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/switch_controller/_helpers/switch_log.py +103 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/switch_controller/_helpers/switch_profile.py +210 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/switch_controller/_helpers/system.py +252 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/switch_controller/_helpers/traffic_policy.py +302 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/switch_controller/_helpers/traffic_sniffer.py +84 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/switch_controller/_helpers/virtual_port_pool.py +146 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/switch_controller/_helpers/vlan_policy.py +208 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/switch_controller/acl_group.py +343 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/switch_controller/acl_ingress.py +351 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/switch_controller/auto_config_custom.py +345 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/switch_controller/auto_config_default.py +185 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/switch_controller/auto_config_policy.py +377 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/switch_controller/custom_command.py +360 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/switch_controller/dynamic_port_policy.py +365 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/switch_controller/flow_tracking.py +242 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/switch_controller/fortilink_settings.py +342 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/switch_controller/global_.py +316 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/switch_controller/igmp_snooping.py +189 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/switch_controller/initial_config_template.py +383 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/switch_controller/initial_config_vlans.py +207 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/switch_controller/ip_source_guard_log.py +183 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/switch_controller/lldp_profile.py +507 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/switch_controller/lldp_settings.py +200 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/switch_controller/location.py +359 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/switch_controller/mac_policy.py +405 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/switch_controller/managed_switch.py +986 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/switch_controller/network_monitor_settings.py +178 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/switch_controller/ptp_interface_policy.py +363 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/switch_controller/ptp_profile.py +387 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/switch_controller/qos_dot1p_map.py +419 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/switch_controller/qos_ip_dscp_map.py +353 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/switch_controller/qos_qos_policy.py +369 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/switch_controller/qos_queue_policy.py +361 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/switch_controller/remote_log.py +387 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/switch_controller/security_policy__802_1X.py +523 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/switch_controller/security_policy_local_access.py +363 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/switch_controller/sflow.py +178 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/switch_controller/snmp_community.py +455 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/switch_controller/snmp_sysinfo.py +193 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/switch_controller/snmp_trap_threshold.py +189 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/switch_controller/snmp_user.py +393 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/switch_controller/storm_control.py +198 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/switch_controller/storm_control_policy.py +405 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/switch_controller/stp_instance.py +345 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/switch_controller/stp_settings.py +207 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/switch_controller/switch_group.py +365 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/switch_controller/switch_interface_tag.py +337 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/switch_controller/switch_log.py +181 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/switch_controller/switch_profile.py +393 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/switch_controller/system.py +234 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/switch_controller/traffic_policy.py +401 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/switch_controller/traffic_sniffer.py +193 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/switch_controller/virtual_port_pool.py +345 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/switch_controller/vlan_policy.py +403 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/_3g_modem_custom.py +355 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/__init__.py +455 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/_helpers/__init__.py +1 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/_helpers/accprofile.py +529 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/_helpers/acme.py +84 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/_helpers/admin.py +496 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/_helpers/affinity_interrupt.py +186 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/_helpers/affinity_packet_redistribution.py +209 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/_helpers/alarm.py +94 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/_helpers/alias.py +142 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/_helpers/api_user.py +211 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/_helpers/arp_table.py +156 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/_helpers/auto_install.py +106 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/_helpers/auto_script.py +253 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/_helpers/automation_action.py +720 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/_helpers/automation_condition.py +276 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/_helpers/automation_destination.py +175 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/_helpers/automation_stitch.py +196 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/_helpers/automation_trigger.py +455 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/_helpers/autoupdate_schedule.py +112 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/_helpers/central_management.py +242 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/_helpers/cloud_service.py +235 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/_helpers/console.py +104 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/_helpers/csf.py +289 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/_helpers/custom_language.py +158 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/_helpers/ddns.py +221 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/_helpers/dedicated_mgmt.py +100 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/_helpers/device_upgrade.py +214 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/_helpers/device_upgrade_exemptions.py +156 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/_helpers/dhcp6_server.py +375 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/_helpers/dhcp_server.py +657 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/_helpers/dns.py +282 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/_helpers/dns64.py +94 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/_helpers/dns_database.py +355 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/_helpers/dns_server.py +222 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/_helpers/dscp_based_priority.py +185 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/_helpers/email_server.py +181 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/_helpers/evpn.py +190 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/_helpers/external_resource.py +472 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/_helpers/fabric_vpn.py +155 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/_helpers/federated_upgrade.py +194 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/_helpers/fips_cc.py +111 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/_helpers/fortiguard.py +750 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/_helpers/fortisandbox.py +188 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/_helpers/fsso_polling.py +108 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/_helpers/ftm_push.py +123 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/_helpers/geneve.py +224 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/_helpers/geoip_country.py +146 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/_helpers/geoip_override.py +158 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/_helpers/global_.py +3038 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/_helpers/gre_tunnel.py +403 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/_helpers/ha.py +735 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/_helpers/ha_monitor.py +118 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/_helpers/health_check_fortiguard.py +197 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/_helpers/ike.py +162 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/_helpers/interface.py +4306 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/_helpers/ipam.py +144 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/_helpers/ipip_tunnel.py +184 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/_helpers/ips.py +84 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/_helpers/ips_urlfilter_dns.py +90 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/_helpers/ips_urlfilter_dns6.py +80 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/_helpers/ipsec_aggregate.py +159 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/_helpers/ipv6_neighbor_cache.py +156 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/_helpers/ipv6_tunnel.py +184 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/_helpers/link_monitor.py +611 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/_helpers/lldp_network_policy.py +146 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/_helpers/lte_modem.py +160 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/_helpers/mac_address_table.py +76 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/_helpers/mobile_tunnel.py +338 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/_helpers/modem.py +456 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/_helpers/nd_proxy.py +84 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/_helpers/netflow.py +152 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/_helpers/network_visibility.py +114 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/_helpers/ngfw_settings.py +119 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/_helpers/np6xlite.py +290 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/_helpers/npu.py +123 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/_helpers/ntp.py +146 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/_helpers/object_tagging.py +127 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/_helpers/pcp_server.py +84 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/_helpers/physical_switch.py +175 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/_helpers/pppoe_interface.py +491 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/_helpers/probe_response.py +132 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/_helpers/proxy_arp.py +156 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/_helpers/ptp.py +134 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/_helpers/replacemsg_admin.py +102 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/_helpers/replacemsg_alertmail.py +102 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/_helpers/replacemsg_auth.py +102 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/_helpers/replacemsg_automation.py +102 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/_helpers/replacemsg_fortiguard_wf.py +102 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/_helpers/replacemsg_group.py +165 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/_helpers/replacemsg_http.py +102 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/_helpers/replacemsg_image.py +165 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/_helpers/replacemsg_mail.py +102 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/_helpers/replacemsg_nac_quar.py +102 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/_helpers/replacemsg_spam.py +102 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/_helpers/replacemsg_sslvpn.py +102 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/_helpers/replacemsg_traffic_quota.py +102 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/_helpers/replacemsg_utm.py +102 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/_helpers/resource_limits.py +313 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/_helpers/saml.py +221 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/_helpers/sdn_connector.py +730 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/_helpers/sdn_proxy.py +199 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/_helpers/sdn_vpn.py +361 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/_helpers/sdwan.py +215 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/_helpers/security_rating_controls.py +172 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/_helpers/security_rating_settings.py +84 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/_helpers/session_helper.py +223 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/_helpers/session_ttl.py +74 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/_helpers/settings.py +1420 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/_helpers/sflow.py +74 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/_helpers/sit_tunnel.py +184 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/_helpers/sms_server.py +146 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/_helpers/snmp_community.py +497 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/_helpers/snmp_mib_view.py +158 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/_helpers/snmp_rmon_stat.py +168 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/_helpers/snmp_sysinfo.py +223 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/_helpers/snmp_user.py +464 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/_helpers/sov_sase.py +84 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/_helpers/speed_test_schedule.py +332 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/_helpers/speed_test_server.py +162 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/_helpers/speed_test_setting.py +108 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/_helpers/ssh_config.py +179 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/_helpers/sso_admin.py +146 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/_helpers/sso_forticloud_admin.py +146 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/_helpers/sso_fortigate_cloud_admin.py +146 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/_helpers/standalone_cluster.py +155 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/_helpers/storage.py +238 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/_helpers/stp.py +144 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/_helpers/switch_interface.py +256 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/_helpers/timezone.py +132 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/_helpers/tos_based_priority.py +185 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/_helpers/vdom.py +192 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/_helpers/vdom_dns.py +143 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/_helpers/vdom_exception.py +207 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/_helpers/vdom_link.py +172 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/_helpers/vdom_netflow.py +84 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/_helpers/vdom_property.py +174 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/_helpers/vdom_radius_server.py +165 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/_helpers/vdom_sflow.py +84 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/_helpers/virtual_switch.py +230 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/_helpers/virtual_wire_pair.py +153 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/_helpers/vne_interface.py +232 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/_helpers/vxlan.py +273 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/_helpers/wccp.py +213 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/_helpers/zone.py +161 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/accprofile.py +568 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/acme.py +205 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/admin.py +880 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/affinity_interrupt.py +318 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/affinity_packet_redistribution.py +335 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/alarm.py +182 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/alias.py +342 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/api_user.py +400 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/arp_table.py +358 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/auto_install.py +189 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/auto_script.py +380 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/automation_action.py +688 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/automation_condition.py +387 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/automation_destination.py +361 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/automation_stitch.py +394 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/automation_trigger.py +503 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/autoupdate_schedule.py +187 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/central_management.py +288 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/cloud_service.py +349 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/console.py +182 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/csf.py +304 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/custom_language.py +350 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/ddns.py +501 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/dedicated_mgmt.py +200 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/device_upgrade.py +420 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/device_upgrade_exemptions.py +357 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/dhcp6_server.py +510 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/dhcp_server.py +806 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/dns.py +298 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/dns64.py +186 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/dns_database.py +518 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/dns_server.py +380 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/dscp_based_priority.py +351 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/email_server.py +231 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/evpn.py +331 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/external_resource.py +548 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/fabric_vpn.py +231 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/federated_upgrade.py +224 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/fips_cc.py +184 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/fortiguard.py +503 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/fortisandbox.py +231 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/fsso_polling.py +188 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/ftm_push.py +205 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/geneve.py +402 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/geoip_country.py +342 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/geoip_override.py +366 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/global_.py +1585 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/gre_tunnel.py +500 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/ha.py +577 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/ha_monitor.py +184 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/health_check_fortiguard.py +322 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/ike.py +273 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/interface.py +2588 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/ipam.py +217 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/ipip_tunnel.py +380 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/ips.py +184 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/ips_urlfilter_dns.py +310 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/ips_urlfilter_dns6.py +299 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/ipsec_aggregate.py +350 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/ipv6_neighbor_cache.py +363 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/ipv6_tunnel.py +378 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/link_monitor.py +644 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/lldp_network_policy.py +407 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/lte_modem.py +219 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/mac_address_table.py +350 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/mobile_tunnel.py +460 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/modem.py +382 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/nd_proxy.py +178 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/netflow.py +203 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/network_visibility.py +193 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/ngfw_settings.py +191 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/np6xlite.py +371 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/npu.py +211 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/ntp.py +226 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/object_tagging.py +383 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/pcp_server.py +178 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/physical_switch.py +350 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/pppoe_interface.py +500 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/probe_response.py +200 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/proxy_arp.py +358 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/ptp.py +206 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/replacemsg_admin.py +306 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/replacemsg_alertmail.py +307 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/replacemsg_auth.py +306 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/replacemsg_automation.py +307 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/replacemsg_fortiguard_wf.py +309 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/replacemsg_group.py +409 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/replacemsg_http.py +306 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/replacemsg_image.py +305 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/replacemsg_mail.py +306 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/replacemsg_nac_quar.py +307 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/replacemsg_spam.py +306 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/replacemsg_sslvpn.py +306 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/replacemsg_traffic_quota.py +309 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/replacemsg_utm.py +306 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/resource_limits.py +245 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/saml.py +253 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/sdn_connector.py +790 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/sdn_proxy.py +374 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/sdn_vpn.py +484 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/sdwan.py +258 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/security_rating_controls.py +312 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/security_rating_settings.py +179 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/session_helper.py +358 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/session_ttl.py +178 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/settings.py +881 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/sflow.py +174 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/sit_tunnel.py +386 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/sms_server.py +342 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/snmp_community.py +474 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/snmp_mib_view.py +354 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/snmp_rmon_stat.py +350 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/snmp_sysinfo.py +235 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/snmp_user.py +520 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/sov_sase.py +174 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/speed_test_schedule.py +586 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/speed_test_server.py +348 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/speed_test_setting.py +180 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/ssh_config.py +199 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/sso_admin.py +342 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/sso_forticloud_admin.py +347 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/sso_fortigate_cloud_admin.py +349 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/standalone_cluster.py +240 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/storage.py +337 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/stp.py +197 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/switch_interface.py +424 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/timezone.py +289 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/tos_based_priority.py +359 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/vdom.py +358 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/vdom_dns.py +244 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/vdom_exception.py +344 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/vdom_link.py +350 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/vdom_netflow.py +178 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/vdom_property.py +506 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/vdom_radius_server.py +359 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/vdom_sflow.py +179 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/virtual_switch.py +390 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/virtual_wire_pair.py +360 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/vne_interface.py +418 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/vxlan.py +442 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/wccp.py +492 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/system/zone.py +372 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/user/__init__.py +93 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/user/_helpers/__init__.py +1 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/user/_helpers/adgrp.py +176 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/user/_helpers/certificate.py +218 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/user/_helpers/domain_controller.py +404 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/user/_helpers/exchange.py +312 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/user/_helpers/external_identity_provider.py +336 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/user/_helpers/fsso.py +579 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/user/_helpers/fsso_polling.py +327 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/user/_helpers/group.py +516 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/user/_helpers/krb_keytab.py +177 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/user/_helpers/ldap.py +797 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/user/_helpers/local.py +510 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/user/_helpers/nac_policy.py +454 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/user/_helpers/peer.py +278 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/user/_helpers/peergrp.py +132 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/user/_helpers/pop3.py +209 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/user/_helpers/quarantine.py +96 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/user/_helpers/radius.py +1284 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/user/_helpers/saml.py +526 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/user/_helpers/scim.py +264 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/user/_helpers/security_exempt_list.py +146 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/user/_helpers/setting.py +334 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/user/adgrp.py +358 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/user/certificate.py +378 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/user/domain_controller.py +542 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/user/exchange.py +460 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/user/external_identity_provider.py +448 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/user/fsso.py +616 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/user/fsso_polling.py +450 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/user/group.py +550 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/user/krb_keytab.py +370 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/user/ldap.py +728 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/user/local.py +582 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/user/nac_policy.py +554 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/user/peer.py +452 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/user/peergrp.py +342 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/user/pop3.py +370 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/user/quarantine.py +187 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/user/radius.py +964 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/user/saml.py +524 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/user/scim.py +420 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/user/security_exempt_list.py +353 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/user/setting.py +304 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/user/tacacs_plus_.py +407 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/videofilter/__init__.py +26 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/videofilter/_helpers/__init__.py +1 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/videofilter/_helpers/keyword.py +183 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/videofilter/_helpers/profile.py +213 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/videofilter/_helpers/youtube_key.py +156 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/videofilter/keyword.py +366 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/videofilter/profile.py +382 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/videofilter/youtube_key.py +334 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/virtual_patch/__init__.py +22 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/virtual_patch/_helpers/__init__.py +1 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/virtual_patch/_helpers/profile.py +201 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/virtual_patch/profile.py +368 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/voip/__init__.py +22 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/voip/_helpers/__init__.py +1 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/voip/_helpers/profile.py +163 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/voip/profile.py +376 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/vpn/__init__.py +78 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/vpn/_helpers/__init__.py +1 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/vpn/_helpers/certificate_ca.py +178 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/vpn/_helpers/certificate_crl.py +149 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/vpn/_helpers/certificate_hsm_local.py +349 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/vpn/_helpers/certificate_local.py +326 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/vpn/_helpers/certificate_ocsp_server.py +213 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/vpn/_helpers/certificate_remote.py +96 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/vpn/_helpers/certificate_setting.py +340 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/vpn/_helpers/ipsec_concentrator.py +175 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/vpn/_helpers/ipsec_fec.py +134 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/vpn/_helpers/ipsec_manualkey.py +221 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/vpn/_helpers/ipsec_manualkey_interface.py +252 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/vpn/_helpers/ipsec_phase1.py +2672 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/vpn/_helpers/ipsec_phase1_interface.py +3262 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/vpn/_helpers/ipsec_phase2.py +1041 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/vpn/_helpers/ipsec_phase2_interface.py +1059 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/vpn/_helpers/kmip_server.py +256 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/vpn/_helpers/l2tp.py +158 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/vpn/_helpers/pptp.py +100 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/vpn/_helpers/qkd.py +200 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/vpn/certificate_ca.py +244 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/vpn/certificate_crl.py +238 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/vpn/certificate_hsm_local.py +465 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/vpn/certificate_local.py +371 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/vpn/certificate_ocsp_server.py +387 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/vpn/certificate_remote.py +199 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/vpn/certificate_setting.py +338 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/vpn/ipsec_concentrator.py +362 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/vpn/ipsec_fec.py +342 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/vpn/ipsec_manualkey.py +432 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/vpn/ipsec_manualkey_interface.py +471 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/vpn/ipsec_phase1.py +1812 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/vpn/ipsec_phase1_interface.py +2187 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/vpn/ipsec_phase2.py +770 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/vpn/ipsec_phase2_interface.py +771 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/vpn/kmip_server.py +422 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/vpn/l2tp.py +209 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/vpn/pptp.py +194 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/vpn/qkd.py +386 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/waf/__init__.py +26 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/waf/_helpers/__init__.py +1 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/waf/_helpers/main_class.py +156 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/waf/_helpers/profile.py +182 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/waf/_helpers/signature.py +156 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/waf/main_class.py +297 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/waf/profile.py +398 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/waf/signature.py +297 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/web_proxy/__init__.py +51 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/web_proxy/_helpers/__init__.py +1 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/web_proxy/_helpers/explicit.py +313 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/web_proxy/_helpers/fast_fallback.py +225 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/web_proxy/_helpers/forward_server.py +333 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/web_proxy/_helpers/forward_server_group.py +191 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/web_proxy/_helpers/global_.py +351 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/web_proxy/_helpers/isolator_server.py +271 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/web_proxy/_helpers/profile.py +341 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/web_proxy/_helpers/url_match.py +220 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/web_proxy/_helpers/wisp.py +220 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/web_proxy/explicit.py +366 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/web_proxy/fast_fallback.py +329 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/web_proxy/forward_server.py +474 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/web_proxy/forward_server_group.py +385 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/web_proxy/global_.py +322 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/web_proxy/isolator_server.py +423 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/web_proxy/profile.py +482 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/web_proxy/url_match.py +388 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/web_proxy/wisp.py +388 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/webfilter/__init__.py +63 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/webfilter/_helpers/__init__.py +1 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/webfilter/_helpers/content.py +164 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/webfilter/_helpers/content_header.py +168 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/webfilter/_helpers/fortiguard.py +236 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/webfilter/_helpers/ftgd_local_cat.py +97 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/webfilter/_helpers/ftgd_local_rating.py +92 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/webfilter/_helpers/ftgd_local_risk.py +103 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/webfilter/_helpers/ftgd_risk_level.py +178 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/webfilter/_helpers/ips_urlfilter_cache_setting.py +105 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/webfilter/_helpers/ips_urlfilter_setting.py +97 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/webfilter/_helpers/ips_urlfilter_setting6.py +97 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/webfilter/_helpers/override.py +238 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/webfilter/_helpers/profile.py +690 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/webfilter/_helpers/search_engine.py +229 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/webfilter/_helpers/urlfilter.py +244 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/webfilter/content.py +358 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/webfilter/content_header.py +358 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/webfilter/fortiguard.py +233 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/webfilter/ftgd_local_cat.py +350 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/webfilter/ftgd_local_rating.py +359 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/webfilter/ftgd_local_risk.py +359 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/webfilter/ftgd_risk_level.py +306 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/webfilter/ips_urlfilter_cache_setting.py +185 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/webfilter/ips_urlfilter_setting.py +192 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/webfilter/ips_urlfilter_setting6.py +192 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/webfilter/override.py +416 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/webfilter/profile.py +642 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/webfilter/search_engine.py +392 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/webfilter/urlfilter.py +398 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/wireless_controller/__init__.py +171 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/wireless_controller/_helpers/__init__.py +1 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/wireless_controller/_helpers/access_control_list.py +146 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/wireless_controller/_helpers/ap_status.py +175 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/wireless_controller/_helpers/apcfg_profile.py +228 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/wireless_controller/_helpers/arrp_profile.py +685 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/wireless_controller/_helpers/ble_profile.py +479 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/wireless_controller/_helpers/bonjour_profile.py +165 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/wireless_controller/_helpers/global_.py +467 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/wireless_controller/_helpers/hotspot20_anqp_3gpp_cellular.py +135 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/wireless_controller/_helpers/hotspot20_anqp_ip_address_type.py +182 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/wireless_controller/_helpers/hotspot20_anqp_nai_realm.py +134 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/wireless_controller/_helpers/hotspot20_anqp_network_auth_type.py +172 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/wireless_controller/_helpers/hotspot20_anqp_roaming_consortium.py +136 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/wireless_controller/_helpers/hotspot20_anqp_venue_name.py +134 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/wireless_controller/_helpers/hotspot20_anqp_venue_url.py +134 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/wireless_controller/_helpers/hotspot20_h2qp_advice_of_charge.py +135 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/wireless_controller/_helpers/hotspot20_h2qp_conn_capability.py +344 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/wireless_controller/_helpers/hotspot20_h2qp_operator_name.py +135 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/wireless_controller/_helpers/hotspot20_h2qp_osu_provider.py +190 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/wireless_controller/_helpers/hotspot20_h2qp_osu_provider_nai.py +135 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/wireless_controller/_helpers/hotspot20_h2qp_terms_and_conditions.py +188 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/wireless_controller/_helpers/hotspot20_h2qp_wan_metric.py +325 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/wireless_controller/_helpers/hotspot20_hs_profile.py +916 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/wireless_controller/_helpers/hotspot20_icon.py +134 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/wireless_controller/_helpers/hotspot20_qos_map.py +134 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/wireless_controller/_helpers/inter_controller.py +138 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/wireless_controller/_helpers/log.py +312 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/wireless_controller/_helpers/lw_profile.py +251 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/wireless_controller/_helpers/mpsk_profile.py +218 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/wireless_controller/_helpers/nac_profile.py +158 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/wireless_controller/_helpers/qos_profile.py +517 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/wireless_controller/_helpers/region.py +183 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/wireless_controller/_helpers/setting.py +408 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/wireless_controller/_helpers/snmp.py +120 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/wireless_controller/_helpers/ssid_policy.py +158 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/wireless_controller/_helpers/syslog_profile.py +246 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/wireless_controller/_helpers/timers.py +475 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/wireless_controller/_helpers/utm_profile.py +232 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/wireless_controller/_helpers/vap.py +3445 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/wireless_controller/_helpers/vap_group.py +146 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/wireless_controller/_helpers/wag_profile.py +271 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/wireless_controller/_helpers/wids_profile.py +2740 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/wireless_controller/_helpers/wtp.py +423 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/wireless_controller/_helpers/wtp_group.py +228 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/wireless_controller/_helpers/wtp_profile.py +1553 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/wireless_controller/access_control_list.py +361 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/wireless_controller/ap_status.py +316 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/wireless_controller/apcfg_profile.py +403 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/wireless_controller/arrp_profile.py +563 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/wireless_controller/ble_profile.py +481 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/wireless_controller/bonjour_profile.py +363 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/wireless_controller/global_.py +347 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/wireless_controller/hotspot20_anqp_3gpp_cellular.py +308 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/wireless_controller/hotspot20_anqp_ip_address_type.py +319 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/wireless_controller/hotspot20_anqp_nai_realm.py +301 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/wireless_controller/hotspot20_anqp_network_auth_type.py +319 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/wireless_controller/hotspot20_anqp_roaming_consortium.py +310 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/wireless_controller/hotspot20_anqp_venue_name.py +303 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/wireless_controller/hotspot20_anqp_venue_url.py +301 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/wireless_controller/hotspot20_h2qp_advice_of_charge.py +311 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/wireless_controller/hotspot20_h2qp_conn_capability.py +397 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/wireless_controller/hotspot20_h2qp_operator_name.py +306 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/wireless_controller/hotspot20_h2qp_osu_provider.py +346 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/wireless_controller/hotspot20_h2qp_osu_provider_nai.py +311 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/wireless_controller/hotspot20_h2qp_terms_and_conditions.py +328 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/wireless_controller/hotspot20_h2qp_wan_metric.py +365 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/wireless_controller/hotspot20_hs_profile.py +672 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/wireless_controller/hotspot20_icon.py +300 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/wireless_controller/hotspot20_qos_map.py +312 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/wireless_controller/inter_controller.py +210 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/wireless_controller/log.py +233 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/wireless_controller/lw_profile.py +407 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/wireless_controller/mpsk_profile.py +391 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/wireless_controller/nac_profile.py +353 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/wireless_controller/qos_profile.py +557 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/wireless_controller/region.py +359 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/wireless_controller/setting.py +248 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/wireless_controller/snmp.py +195 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/wireless_controller/ssid_policy.py +353 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/wireless_controller/syslog_profile.py +393 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/wireless_controller/timers.py +317 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/wireless_controller/utm_profile.py +395 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/wireless_controller/vap.py +2110 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/wireless_controller/vap_group.py +351 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/wireless_controller/wag_profile.py +409 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/wireless_controller/wids_profile.py +1417 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/wireless_controller/wtp.py +791 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/wireless_controller/wtp_group.py +361 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/wireless_controller/wtp_profile.py +1181 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/ztna/__init__.py +36 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/ztna/_helpers/__init__.py +1 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/ztna/_helpers/reverse_connector.py +264 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/ztna/_helpers/traffic_forward_proxy.py +238 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/ztna/_helpers/web_portal.py +576 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/ztna/_helpers/web_portal_bookmark.py +134 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/ztna/_helpers/web_proxy.py +353 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/ztna/reverse_connector.py +400 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/ztna/traffic_forward_proxy.py +395 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/ztna/web_portal.py +560 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/ztna/web_portal_bookmark.py +358 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/cmdb/ztna/web_proxy.py +419 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/log/__init__.py +46 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/log/anomaly.py +134 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/log/app_ctrl.py +143 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/log/base.py +350 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/log/cifs.py +134 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/log/disk/__init__.py +5 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/log/disk/_helpers/__init__.py +1 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/log/disk/_helpers/disk.py +39 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/log/disk/disk.py +106 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/log/dlp.py +134 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/log/dns.py +134 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/log/emailfilter.py +134 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/log/event.py +1102 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/log/file_filter.py +134 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/log/fortianalyzer/__init__.py +3 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/log/fortianalyzer/_helpers/__init__.py +1 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/log/fortianalyzer/_helpers/fortianalyzer.py +39 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/log/fortianalyzer/fortianalyzer.py +107 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/log/forticloud/__init__.py +7 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/log/forticloud/_helpers/__init__.py +1 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/log/forticloud/_helpers/forticloud.py +39 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/log/forticloud/forticloud.py +108 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/log/gtp.py +134 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/log/ips.py +141 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/log/memory/__init__.py +7 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/log/memory/_helpers/__init__.py +1 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/log/memory/_helpers/memory.py +39 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/log/memory/memory.py +108 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/log/search/__init__.py +7 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/log/search/_helpers/__init__.py +1 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/log/search/_helpers/search.py +69 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/log/search/search.py +182 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/log/ssh.py +134 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/log/ssl.py +134 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/log/traffic.py +580 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/log/virus.py +199 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/log/voip.py +134 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/log/waf.py +134 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/log/webfilter.py +134 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/__init__.py +507 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/azure/__init__.py +33 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/azure/_helpers/__init__.py +1 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/azure/_helpers/application_list.py +59 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/azure/application_list.py +131 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/casb/__init__.py +33 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/casb/_helpers/__init__.py +1 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/casb/_helpers/saas_application.py +52 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/casb/saas_application.py +102 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/endpoint_control/__init__.py +162 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/endpoint_control/_helpers/__init__.py +1 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/endpoint_control/_helpers/avatar.py +39 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/endpoint_control/_helpers/ems.py +39 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/endpoint_control/_helpers/installer.py +52 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/endpoint_control/_helpers/record_list.py +39 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/endpoint_control/_helpers/summary.py +39 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/endpoint_control/avatar.py +117 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/endpoint_control/ems.py +353 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/endpoint_control/installer.py +133 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/endpoint_control/record_list.py +87 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/endpoint_control/summary.py +82 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/extender_controller/__init__.py +45 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/extender_controller/_helpers/__init__.py +1 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/extender_controller/_helpers/extender.py +29 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/extender_controller/_helpers/modem_firmware.py +39 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/extender_controller/extender.py +284 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/extender_controller/modem_firmware.py +108 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/extension_controller/__init__.py +74 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/extension_controller/_helpers/__init__.py +1 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/extension_controller/_helpers/fortigate.py +39 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/extension_controller/_helpers/lan_extension_vdom.py +39 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/extension_controller/_helpers/lan_extension_vdom_status.py +39 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/extension_controller/fortigate.py +82 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/extension_controller/lan_extension_vdom.py +116 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/extension_controller/lan_extension_vdom_status.py +88 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/firewall/__init__.py +367 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/firewall/_helpers/__init__.py +1 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/firewall/_helpers/acl.py +57 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/firewall/_helpers/acl6.py +57 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/firewall/_helpers/address6_dynamic.py +72 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/firewall/_helpers/address_dynamic.py +72 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/firewall/_helpers/address_fqdns.py +72 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/firewall/_helpers/address_fqdns6.py +72 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/firewall/_helpers/central_snat_map.py +72 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/firewall/_helpers/check_addrgrp_exclude_mac_member.py +74 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/firewall/_helpers/clearpass_address.py +59 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/firewall/_helpers/dnat.py +57 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/firewall/_helpers/gtp.py +57 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/firewall/_helpers/gtp_runtime_statistics.py +59 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/firewall/_helpers/gtp_statistics.py +59 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/firewall/_helpers/health.py +57 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/firewall/_helpers/internet_service.py +59 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/firewall/_helpers/internet_service_basic.py +59 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/firewall/_helpers/internet_service_details.py +72 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/firewall/_helpers/internet_service_fqdn.py +59 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/firewall/_helpers/internet_service_fqdn_icon_ids.py +59 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/firewall/_helpers/internet_service_match.py +59 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/firewall/_helpers/internet_service_reputation.py +59 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/firewall/_helpers/ippool.py +57 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/firewall/_helpers/load_balance.py +59 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/firewall/_helpers/local_in.py +57 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/firewall/_helpers/local_in6.py +59 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/firewall/_helpers/multicast_policy.py +72 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/firewall/_helpers/multicast_policy6.py +72 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/firewall/_helpers/network_service_dynamic.py +73 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/firewall/_helpers/per_ip_shaper.py +59 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/firewall/_helpers/policy.py +70 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/firewall/_helpers/policy_lookup.py +59 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/firewall/_helpers/proxy.py +70 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/firewall/_helpers/proxy_policy.py +72 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/firewall/_helpers/saas_application.py +59 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/firewall/_helpers/sdn_connector_filters.py +59 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/firewall/_helpers/security_policy.py +72 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/firewall/_helpers/session.py +57 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/firewall/_helpers/session6.py +57 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/firewall/_helpers/sessions.py +70 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/firewall/_helpers/shaper.py +57 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/firewall/_helpers/shaper_multi_class_shaper.py +59 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/firewall/_helpers/uuid.py +57 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/firewall/_helpers/uuid_list.py +59 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/firewall/_helpers/uuid_type_lookup.py +59 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/firewall/_helpers/vip_overlap.py +59 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/firewall/_helpers/ztna_firewall_policy.py +59 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/firewall/acl.py +126 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/firewall/acl6.py +126 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/firewall/address6_dynamic.py +88 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/firewall/address_dynamic.py +87 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/firewall/address_fqdns.py +88 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/firewall/address_fqdns6.py +88 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/firewall/central_snat_map.py +178 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/firewall/check_addrgrp_exclude_mac_member.py +96 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/firewall/clearpass_address.py +158 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/firewall/dnat.py +178 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/firewall/gtp.py +181 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/firewall/gtp_runtime_statistics.py +82 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/firewall/gtp_statistics.py +82 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/firewall/health.py +80 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/firewall/internet_service.py +162 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/firewall/internet_service_basic.py +86 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/firewall/internet_service_details.py +106 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/firewall/internet_service_fqdn.py +82 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/firewall/internet_service_fqdn_icon_ids.py +84 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/firewall/internet_service_match.py +101 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/firewall/internet_service_reputation.py +93 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/firewall/ippool.py +125 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/firewall/load_balance.py +85 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/firewall/local_in.py +84 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/firewall/local_in6.py +82 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/firewall/multicast_policy.py +173 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/firewall/multicast_policy6.py +174 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/firewall/network_service_dynamic.py +86 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/firewall/per_ip_shaper.py +128 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/firewall/policy.py +232 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/firewall/policy_lookup.py +149 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/firewall/proxy.py +189 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/firewall/proxy_policy.py +133 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/firewall/saas_application.py +82 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/firewall/sdn_connector_filters.py +87 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/firewall/security_policy.py +192 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/firewall/session.py +232 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/firewall/session6.py +123 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/firewall/sessions.py +203 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/firewall/shaper.py +166 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/firewall/shaper_multi_class_shaper.py +74 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/firewall/uuid.py +130 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/firewall/uuid_list.py +82 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/firewall/uuid_type_lookup.py +86 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/firewall/vip_overlap.py +82 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/firewall/ztna_firewall_policy.py +106 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/firmware/__init__.py +33 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/firmware/_helpers/__init__.py +1 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/firmware/_helpers/extension_device.py +39 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/firmware/extension_device.py +96 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/fortiguard/__init__.py +37 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/fortiguard/_helpers/__init__.py +1 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/fortiguard/_helpers/answers.py +39 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/fortiguard/_helpers/redirect_portal.py +39 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/fortiguard/_helpers/service_communication_stats.py +39 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/fortiguard/answers.py +102 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/fortiguard/redirect_portal.py +82 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/fortiguard/service_communication_stats.py +94 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/fortiview/__init__.py +44 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/fortiview/_helpers/__init__.py +1 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/fortiview/_helpers/historical_statistics.py +59 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/fortiview/_helpers/realtime_proxy_statistics.py +73 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/fortiview/_helpers/realtime_statistics.py +73 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/fortiview/_helpers/session.py +70 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/fortiview/historical_statistics.py +115 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/fortiview/realtime_proxy_statistics.py +172 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/fortiview/realtime_statistics.py +196 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/fortiview/session.py +114 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/geoip/__init__.py +33 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/geoip/_helpers/__init__.py +1 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/geoip/_helpers/geoip_query.py +31 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/geoip/geoip_query.py +104 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/ips/__init__.py +47 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/ips/_helpers/__init__.py +1 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/ips/_helpers/anomaly.py +39 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/ips/_helpers/hold_signatures.py +39 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/ips/_helpers/metadata.py +39 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/ips/_helpers/rate_based.py +39 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/ips/_helpers/session.py +39 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/ips/anomaly.py +80 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/ips/hold_signatures.py +89 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/ips/metadata.py +80 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/ips/rate_based.py +80 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/ips/session.py +98 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/license/__init__.py +47 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/license/_helpers/__init__.py +1 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/license/_helpers/database.py +57 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/license/_helpers/fortianalyzer_status.py +59 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/license/_helpers/forticare_org_list.py +59 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/license/_helpers/forticare_resellers.py +59 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/license/_helpers/status.py +57 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/license/database.py +127 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/license/fortianalyzer_status.py +83 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/license/forticare_org_list.py +82 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/license/forticare_resellers.py +86 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/license/status.py +80 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/log/__init__.py +77 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/log/_helpers/__init__.py +1 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/log/_helpers/av_archive.py +72 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/log/_helpers/current_disk_usage.py +59 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/log/_helpers/device.py +57 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/log/_helpers/feature_set.py +59 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/log/_helpers/fortianalyzer.py +59 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/log/_helpers/fortianalyzer_queue.py +59 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/log/_helpers/forticloud.py +59 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/log/_helpers/forticloud_report.py +72 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/log/_helpers/forticloud_report_list.py +59 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/log/_helpers/historic_daily_remote_logs.py +59 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/log/_helpers/hourly_disk_usage.py +59 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/log/_helpers/local_report.py +72 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/log/_helpers/local_report_list.py +59 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/log/_helpers/policy_archive.py +72 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/log/_helpers/stats.py +57 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/log/av_archive.py +101 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/log/current_disk_usage.py +82 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/log/device.py +101 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/log/feature_set.py +80 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/log/fortianalyzer.py +95 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/log/fortianalyzer_queue.py +87 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/log/forticloud.py +122 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/log/forticloud_report.py +109 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/log/forticloud_report_list.py +82 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/log/historic_daily_remote_logs.py +88 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/log/hourly_disk_usage.py +82 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/log/local_report.py +151 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/log/local_report_list.py +82 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/log/policy_archive.py +108 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/log/stats.py +126 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/network/__init__.py +53 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/network/_helpers/__init__.py +1 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/network/_helpers/arp.py +57 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/network/_helpers/ddns.py +57 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/network/_helpers/dns.py +57 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/network/_helpers/fortiguard.py +59 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/network/_helpers/lldp.py +57 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/network/_helpers/reverse_ip_lookup.py +59 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/network/arp.py +80 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/network/ddns.py +141 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/network/dns.py +98 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/network/fortiguard.py +100 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/network/lldp.py +154 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/network/reverse_ip_lookup.py +85 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/registration/__init__.py +37 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/registration/_helpers/__init__.py +1 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/registration/_helpers/forticare.py +59 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/registration/_helpers/forticloud.py +59 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/registration/_helpers/vdom.py +57 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/registration/forticare.py +442 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/registration/forticloud.py +404 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/registration/vdom.py +102 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/router/__init__.py +65 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/router/_helpers/__init__.py +1 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/router/_helpers/bgp.py +57 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/router/_helpers/charts.py +57 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/router/_helpers/ipv4.py +57 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/router/_helpers/ipv6.py +57 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/router/_helpers/lookup.py +57 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/router/_helpers/lookup_policy.py +59 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/router/_helpers/ospf.py +57 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/router/_helpers/policy.py +57 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/router/_helpers/policy6.py +57 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/router/_helpers/sdwan.py +57 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/router/_helpers/statistics.py +59 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/router/bgp.py +429 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/router/charts.py +110 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/router/ipv4.py +104 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/router/ipv6.py +104 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/router/lookup.py +140 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/router/lookup_policy.py +109 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/router/ospf.py +98 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/router/policy.py +85 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/router/policy6.py +85 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/router/sdwan.py +183 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/router/statistics.py +109 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/sdwan/__init__.py +33 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/sdwan/_helpers/__init__.py +1 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/sdwan/_helpers/link_monitor_metrics.py +31 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/sdwan/link_monitor_metrics.py +138 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/service/__init__.py +33 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/service/_helpers/__init__.py +1 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/service/_helpers/ldap.py +52 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/service/ldap.py +119 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/switch_controller/__init__.py +61 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/switch_controller/_helpers/__init__.py +1 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/switch_controller/_helpers/detected_device.py +39 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/switch_controller/_helpers/fsw_firmware.py +31 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/switch_controller/_helpers/isl_lockdown.py +39 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/switch_controller/_helpers/known_nac_device_criteria_list.py +40 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/switch_controller/_helpers/managed_switch.py +52 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/switch_controller/_helpers/matched_devices.py +52 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/switch_controller/_helpers/mclag_icl.py +39 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/switch_controller/_helpers/nac_device.py +39 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/switch_controller/_helpers/recommendation.py +31 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/switch_controller/detected_device.py +82 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/switch_controller/fsw_firmware.py +242 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/switch_controller/isl_lockdown.py +150 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/switch_controller/known_nac_device_criteria_list.py +88 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/switch_controller/managed_switch.py +866 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/switch_controller/matched_devices.py +96 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/switch_controller/mclag_icl.py +278 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/switch_controller/nac_device.py +99 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/switch_controller/recommendation.py +106 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/system/3g_modem.py +80 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/system/5g_modem.py +103 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/system/__init__.py +277 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/system/_helpers/3g_modem.py +57 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/system/_helpers/5g_modem.py +57 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/system/_helpers/__init__.py +1 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/system/_helpers/acme_certificate_status.py +73 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/system/_helpers/acquired_dns.py +59 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/system/_helpers/admin.py +57 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/system/_helpers/api_user.py +57 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/system/_helpers/automation_action.py +72 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/system/_helpers/automation_stitch.py +72 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/system/_helpers/available_certificates.py +72 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/system/_helpers/available_interfaces.py +72 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/system/_helpers/botnet.py +57 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/system/_helpers/botnet_domains.py +59 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/system/_helpers/central_management.py +59 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/system/_helpers/certificate.py +72 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/system/_helpers/check_port_availability.py +59 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/system/_helpers/cluster.py +57 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/system/_helpers/com_log.py +57 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/system/_helpers/config.py +57 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/system/_helpers/config_error_log.py +59 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/system/_helpers/config_revision.py +59 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/system/_helpers/config_script.py +59 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/system/_helpers/config_sync.py +59 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/system/_helpers/crash_log.py +59 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/system/_helpers/csf.py +57 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/system/_helpers/current_admins.py +59 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/system/_helpers/debug.py +57 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/system/_helpers/dhcp.py +57 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/system/_helpers/dhcp6.py +57 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/system/_helpers/disconnect_admins.py +59 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/system/_helpers/external_resource.py +72 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/system/_helpers/firmware.py +57 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/system/_helpers/fortiguard.py +59 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/system/_helpers/fortimanager.py +59 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/system/_helpers/fsck.py +57 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/system/_helpers/global_resources.py +59 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/system/_helpers/global_search.py +59 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/system/_helpers/ha_backup_hb_used.py +59 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/system/_helpers/ha_checksums.py +59 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/system/_helpers/ha_history.py +59 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/system/_helpers/ha_hw_interface.py +59 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/system/_helpers/ha_nonsync_checksums.py +59 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/system/_helpers/ha_peer.py +57 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/system/_helpers/ha_statistics.py +59 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/system/_helpers/ha_table_checksums.py +59 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/system/_helpers/hscalefw_license.py +59 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/system/_helpers/interface.py +59 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/system/_helpers/interface_connected_admins_info.py +59 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/system/_helpers/ipam.py +57 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/system/_helpers/ipconf.py +57 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/system/_helpers/link_monitor.py +72 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/system/_helpers/logdisk.py +57 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/system/_helpers/lte_modem.py +59 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/system/_helpers/modem.py +57 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/system/_helpers/modem_3g.py +57 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/system/_helpers/modem_5g.py +57 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/system/_helpers/monitor_sensor.py +59 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/system/_helpers/ntp.py +57 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/system/_helpers/object.py +70 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/system/_helpers/os.py +57 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/system/_helpers/performance.py +59 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/system/_helpers/private_data_encryption.py +59 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/system/_helpers/process.py +57 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/system/_helpers/resolve_fqdn.py +59 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/system/_helpers/resource.py +57 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/system/_helpers/running_processes.py +59 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/system/_helpers/sandbox.py +57 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/system/_helpers/sdn_connector.py +72 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/system/_helpers/sensor_info.py +59 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/system/_helpers/status.py +57 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/system/_helpers/storage.py +57 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/system/_helpers/time.py +57 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/system/_helpers/timezone.py +57 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/system/_helpers/traffic_history.py +59 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/system/_helpers/trusted_cert_authorities.py +59 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/system/_helpers/upgrade_report.py +59 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/system/_helpers/usb_device.py +59 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/system/_helpers/usb_log.py +57 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/system/_helpers/vdom_link.py +59 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/system/_helpers/vdom_resource.py +59 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/system/_helpers/vm_information.py +59 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/system/_helpers/vmlicense.py +59 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/system/acme_certificate_status.py +90 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/system/acquired_dns.py +82 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/system/admin.py +102 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/system/api_user.py +108 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/system/automation_action.py +102 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/system/automation_stitch.py +200 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/system/available_certificates.py +107 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/system/available_interfaces.py +151 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/system/botnet.py +126 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/system/botnet_domains.py +166 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/system/central_management.py +103 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/system/certificate.py +154 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/system/check_port_availability.py +95 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/system/cluster.py +98 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/system/com_log.py +176 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/system/config.py +296 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/system/config_error_log.py +98 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/system/config_revision.py +308 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/system/config_script.py +222 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/system/config_sync.py +98 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/system/crash_log.py +138 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/system/csf.py +200 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/system/current_admins.py +82 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/system/debug.py +98 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/system/dhcp.py +140 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/system/dhcp6.py +101 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/system/disconnect_admins.py +110 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/system/external_resource.py +316 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/system/firmware.py +215 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/system/fortiguard.py +276 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/system/fortimanager.py +195 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/system/fsck.py +97 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/system/global_resources.py +83 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/system/global_search.py +106 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/system/ha_backup_hb_used.py +82 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/system/ha_checksums.py +82 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/system/ha_history.py +80 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/system/ha_hw_interface.py +82 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/system/ha_nonsync_checksums.py +82 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/system/ha_peer.py +206 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/system/ha_statistics.py +82 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/system/ha_table_checksums.py +91 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/system/hscalefw_license.py +104 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/system/interface.py +525 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/system/interface_connected_admins_info.py +86 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/system/ipam.py +176 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/system/ipconf.py +86 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/system/link_monitor.py +86 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/system/logdisk.py +98 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/system/lte_modem.py +188 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/system/modem.py +236 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/system/modem_3g.py +80 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/system/modem_5g.py +103 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/system/monitor_sensor.py +82 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/system/ntp.py +96 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/system/object.py +123 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/system/os.py +142 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/system/performance.py +98 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/system/private_data_encryption.py +106 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/system/process.py +105 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/system/resolve_fqdn.py +89 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/system/resource.py +119 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/system/running_processes.py +82 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/system/sandbox.py +263 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/system/sdn_connector.py +239 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/system/sensor_info.py +82 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/system/status.py +80 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/system/storage.py +80 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/system/time.py +150 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/system/timezone.py +80 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/system/traffic_history.py +197 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/system/trusted_cert_authorities.py +86 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/system/upgrade_report.py +179 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/system/usb_device.py +98 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/system/usb_log.py +159 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/system/vdom_link.py +85 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/system/vdom_resource.py +82 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/system/vm_information.py +82 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/system/vmlicense.py +205 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/user/__init__.py +80 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/user/_helpers/__init__.py +1 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/user/_helpers/banned.py +57 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/user/_helpers/collected_email.py +59 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/user/_helpers/device.py +57 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/user/_helpers/firewall.py +57 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/user/_helpers/fsso.py +57 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/user/_helpers/guest.py +57 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/user/_helpers/info.py +57 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/user/_helpers/local.py +57 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/user/_helpers/proxy.py +57 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/user/_helpers/query.py +57 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/user/_helpers/radius.py +70 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/user/_helpers/scim.py +57 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/user/_helpers/tacacs_plus.py +59 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/user/banned.py +258 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/user/collected_email.py +86 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/user/device.py +321 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/user/firewall.py +272 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/user/fsso.py +122 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/user/guest.py +150 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/user/info.py +232 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/user/local.py +106 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/user/proxy.py +120 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/user/query.py +101 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/user/radius.py +212 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/user/scim.py +152 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/user/tacacs_plus.py +131 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/utm/__init__.py +47 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/utm/_helpers/__init__.py +1 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/utm/_helpers/antivirus.py +59 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/utm/_helpers/app_lookup.py +59 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/utm/_helpers/application_categories.py +59 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/utm/_helpers/blacklisted_certificates.py +59 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/utm/_helpers/rating_lookup.py +59 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/utm/antivirus.py +98 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/utm/app_lookup.py +84 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/utm/application_categories.py +82 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/utm/blacklisted_certificates.py +134 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/utm/rating_lookup.py +106 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/videofilter/__init__.py +33 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/videofilter/_helpers/__init__.py +1 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/videofilter/_helpers/fortiguard_categories.py +39 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/videofilter/fortiguard_categories.py +82 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/virtual_wan/__init__.py +41 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/virtual_wan/_helpers/__init__.py +1 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/virtual_wan/_helpers/health_check.py +39 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/virtual_wan/_helpers/interface_log.py +39 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/virtual_wan/_helpers/members.py +39 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/virtual_wan/_helpers/sla_log.py +39 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/virtual_wan/_helpers/sladb.py +39 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/virtual_wan/health_check.py +87 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/virtual_wan/interface_log.py +96 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/virtual_wan/members.py +103 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/virtual_wan/sla_log.py +126 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/virtual_wan/sladb.py +81 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/vpn/__init__.py +37 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/vpn/_helpers/__init__.py +1 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/vpn/_helpers/ike.py +57 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/vpn/_helpers/ipsec.py +57 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/vpn/_helpers/ssl.py +57 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/vpn/ike.py +100 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/vpn/ipsec.py +272 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/vpn/ssl.py +204 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/vpn_certificate/__init__.py +43 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/vpn_certificate/_helpers/__init__.py +1 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/vpn_certificate/_helpers/ca.py +29 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/vpn_certificate/_helpers/cert_name_available.py +52 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/vpn_certificate/_helpers/crl.py +29 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/vpn_certificate/_helpers/csr.py +29 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/vpn_certificate/_helpers/local.py +29 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/vpn_certificate/_helpers/remote.py +29 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/vpn_certificate/ca.py +123 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/vpn_certificate/cert_name_available.py +91 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/vpn_certificate/crl.py +109 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/vpn_certificate/csr.py +177 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/vpn_certificate/local.py +204 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/vpn_certificate/remote.py +109 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/wanopt/__init__.py +37 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/wanopt/_helpers/__init__.py +1 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/wanopt/_helpers/history.py +57 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/wanopt/_helpers/peer_stats.py +59 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/wanopt/_helpers/webcache.py +57 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/wanopt/history.py +125 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/wanopt/peer_stats.py +122 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/wanopt/webcache.py +127 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/web_ui/__init__.py +35 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/web_ui/_helpers/__init__.py +1 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/web_ui/_helpers/custom_language.py +31 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/web_ui/_helpers/language.py +29 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/web_ui/custom_language.py +214 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/web_ui/language.py +104 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/webcache/__init__.py +33 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/webcache/_helpers/__init__.py +1 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/webcache/_helpers/stats.py +57 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/webcache/stats.py +124 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/webfilter/__init__.py +47 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/webfilter/_helpers/__init__.py +1 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/webfilter/_helpers/category_quota.py +59 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/webfilter/_helpers/fortiguard_categories.py +59 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/webfilter/_helpers/malicious_urls.py +59 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/webfilter/_helpers/override.py +57 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/webfilter/_helpers/trusted_urls.py +59 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/webfilter/category_quota.py +140 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/webfilter/fortiguard_categories.py +82 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/webfilter/malicious_urls.py +124 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/webfilter/override.py +128 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/webfilter/trusted_urls.py +82 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/webproxy/__init__.py +33 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/webproxy/_helpers/__init__.py +1 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/webproxy/_helpers/pacfile.py +57 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/webproxy/pacfile.py +148 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/wifi/__init__.py +95 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/wifi/_helpers/__init__.py +1 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/wifi/_helpers/ap_channels.py +59 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/wifi/_helpers/ap_names.py +57 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/wifi/_helpers/ap_profile.py +59 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/wifi/_helpers/ap_status.py +59 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/wifi/_helpers/client.py +57 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/wifi/_helpers/euclid.py +57 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/wifi/_helpers/firmware.py +57 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/wifi/_helpers/interfering_ap.py +59 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/wifi/_helpers/managed_ap.py +59 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/wifi/_helpers/matched_devices.py +59 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/wifi/_helpers/meta.py +57 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/wifi/_helpers/nac_device.py +59 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/wifi/_helpers/network.py +57 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/wifi/_helpers/region_image.py +59 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/wifi/_helpers/rogue_ap.py +57 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/wifi/_helpers/spectrum.py +57 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/wifi/_helpers/ssid.py +57 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/wifi/_helpers/station_capability.py +59 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/wifi/_helpers/statistics.py +59 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/wifi/_helpers/unassociated_devices.py +59 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/wifi/_helpers/vlan_probe.py +59 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/wifi/ap_channels.py +95 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/wifi/ap_names.py +82 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/wifi/ap_profile.py +103 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/wifi/ap_status.py +80 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/wifi/client.py +145 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/wifi/euclid.py +120 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/wifi/firmware.py +233 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/wifi/interfering_ap.py +90 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/wifi/managed_ap.py +242 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/wifi/matched_devices.py +86 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/wifi/meta.py +80 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/wifi/nac_device.py +98 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/wifi/network.py +218 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/wifi/region_image.py +139 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/wifi/rogue_ap.py +180 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/wifi/spectrum.py +238 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/wifi/ssid.py +120 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/wifi/station_capability.py +97 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/wifi/statistics.py +80 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/wifi/unassociated_devices.py +88 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/monitor/wifi/vlan_probe.py +201 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/service/__init__.py +42 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/service/security_rating/__init__.py +14 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/service/security_rating/_helpers/__init__.py +1 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/service/security_rating/_helpers/security_rating.py +39 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/service/security_rating/security_rating.py +215 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/service/sniffer/__init__.py +14 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/service/sniffer/_helpers/__init__.py +1 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/service/sniffer/_helpers/sniffer.py +70 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/service/sniffer/sniffer.py +460 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/service/system/__init__.py +14 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/service/system/_helpers/__init__.py +1 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/service/system/_helpers/system.py +39 -0
- hfortix-0.3.34/hfortix/FortiOS/api/v2/service/system/system.py +265 -0
- hfortix-0.3.34/hfortix/FortiOS/exceptions.py +76 -0
- hfortix-0.3.34/hfortix/FortiOS/exceptions_forti.py +1288 -0
- hfortix-0.3.34/hfortix/FortiOS/firewall/__init__.py +17 -0
- hfortix-0.3.34/hfortix/FortiOS/firewall/_helpers.py +246 -0
- hfortix-0.3.34/hfortix/FortiOS/firewall/firewallPolicy.py +1865 -0
- hfortix-0.3.34/hfortix/FortiOS/firewall/ipmacBindingSetting.py +76 -0
- hfortix-0.3.34/hfortix/FortiOS/firewall/ipmacBindingTable.py +160 -0
- hfortix-0.3.34/hfortix/FortiOS/firewall/scheduleGroup.py +264 -0
- hfortix-0.3.34/hfortix/FortiOS/firewall/scheduleOnetime.py +239 -0
- hfortix-0.3.34/hfortix/FortiOS/firewall/scheduleRecurring.py +231 -0
- hfortix-0.3.34/hfortix/FortiOS/fortios.py +1044 -0
- hfortix-0.3.34/hfortix/FortiOS/http_client.py +1441 -0
- hfortix-0.3.34/hfortix/FortiOS/http_client_async.py +988 -0
- hfortix-0.3.34/hfortix/FortiOS/http_client_base.py +613 -0
- hfortix-0.3.34/hfortix/FortiOS/http_client_interface.py +302 -0
- hfortix-0.3.34/hfortix/FortiOS/performance_test.py +687 -0
- hfortix-0.3.34/hfortix/__init__.py +205 -0
- hfortix-0.3.34/hfortix/py.typed +0 -0
- hfortix-0.3.34/hfortix.egg-info/PKG-INFO +1549 -0
- hfortix-0.3.34/hfortix.egg-info/SOURCES.txt +1871 -0
- hfortix-0.3.34/hfortix.egg-info/dependency_links.txt +1 -0
- hfortix-0.3.34/hfortix.egg-info/not-zip-safe +1 -0
- hfortix-0.3.34/hfortix.egg-info/requires.txt +9 -0
- hfortix-0.3.34/hfortix.egg-info/top_level.txt +1 -0
- hfortix-0.3.34/pyproject.toml +187 -0
- hfortix-0.3.34/requirements.txt +12 -0
- hfortix-0.3.34/setup.cfg +4 -0
- hfortix-0.3.34/setup.py +74 -0
|
@@ -0,0 +1,1915 @@
|
|
|
1
|
+
# Changelog
|
|
2
|
+
|
|
3
|
+
All notable changes to this project will be documented in this file.
|
|
4
|
+
|
|
5
|
+
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
|
|
6
|
+
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
|
|
7
|
+
|
|
8
|
+
## [0.3.34] - 2025-12-25
|
|
9
|
+
|
|
10
|
+
### Added
|
|
11
|
+
|
|
12
|
+
- **Schedule Convenience Methods**: Added comprehensive convenience methods to all schedule types
|
|
13
|
+
- **New Methods** (available for `schedule_onetime`, `schedule_recurring`, `schedule_group`):
|
|
14
|
+
- `get_by_name(name, vdom=None)`: Returns schedule data directly (not full API response)
|
|
15
|
+
- `rename(name, new_name, vdom=None)`: Rename a schedule in one call
|
|
16
|
+
- `clone(name, new_name, **overrides, vdom=None)`: Clone schedule with optional modifications
|
|
17
|
+
- **Response Helpers** (added to `hfortix.FortiOS.api._helpers`):
|
|
18
|
+
- `get_mkey(response)`: Extract created object's name from response
|
|
19
|
+
- `is_success(response)`: Check if operation succeeded
|
|
20
|
+
- `get_results(response)`: Extract results from response
|
|
21
|
+
- Matches the convenience method pattern from `firewallPolicy`
|
|
22
|
+
- Makes schedule management more user-friendly and consistent
|
|
23
|
+
- See `SCHEDULE_CONVENIENCE_METHODS.md` for full documentation
|
|
24
|
+
- See `examples/schedule_convenience_demo.py` for usage examples
|
|
25
|
+
|
|
26
|
+
- **IP/MAC Binding Convenience Wrapper**: New helper class for firewall IP/MAC binding management
|
|
27
|
+
- Located at `hfortix.FortiOS.api.v2.cmdb.firewall._helpers.ipmacbinding_table`
|
|
28
|
+
- **Core Methods**:
|
|
29
|
+
- `create(seq_num, ip, mac, name=None, status='enable', vdom=None)`: Create new binding
|
|
30
|
+
- `update(seq_num, **kwargs, vdom=None)`: Update existing binding
|
|
31
|
+
- `delete(seq_num, vdom=None)`: Delete binding
|
|
32
|
+
- `get(seq_num=None, vdom=None)`: Get binding(s) by sequence number
|
|
33
|
+
- `get_all(vdom=None)`: Get all bindings
|
|
34
|
+
- **Convenience Methods**:
|
|
35
|
+
- `exists(seq_num, vdom=None)`: Check if binding exists
|
|
36
|
+
- `enable(seq_num, vdom=None)`: Enable a binding
|
|
37
|
+
- `disable(seq_num, vdom=None)`: Disable a binding
|
|
38
|
+
- **Validation**: IP addresses, MAC addresses, status values, name length
|
|
39
|
+
- Comprehensive test suite: `examples/ipmacbinding_test_suite.py` (19 pytest tests)
|
|
40
|
+
|
|
41
|
+
- **Circuit Breaker Auto-Retry**: Optional automatic retry when circuit breaker opens
|
|
42
|
+
- New parameters:
|
|
43
|
+
- `circuit_breaker_auto_retry` (bool, default=False) - Enable/disable auto-retry
|
|
44
|
+
- `circuit_breaker_max_retries` (int, default=3) - Maximum retry attempts
|
|
45
|
+
- `circuit_breaker_retry_delay` (float, default=5.0) - Delay in seconds between retries
|
|
46
|
+
- When enabled, client automatically waits and retries when circuit breaker opens instead of failing immediately
|
|
47
|
+
- Useful for production scripts that need resilience against temporary service degradation
|
|
48
|
+
- **IMPORTANT**: Retry delay is configurable and separate from circuit_breaker_timeout
|
|
49
|
+
- `circuit_breaker_retry_delay`: How long to wait between retry attempts (default: 5s)
|
|
50
|
+
- `circuit_breaker_timeout`: How long circuit stays open before transitioning to half-open (default: 30s)
|
|
51
|
+
- **WARNING**: Not recommended for test environments - may cause long delays
|
|
52
|
+
- Fail-fast behavior is preserved by default (auto-retry disabled)
|
|
53
|
+
- Available in both sync (`HTTPClient`) and async (`AsyncHTTPClient`) clients
|
|
54
|
+
- Examples:
|
|
55
|
+
|
|
56
|
+
```python
|
|
57
|
+
# Fail-fast (default) - raises CircuitBreakerOpenError immediately
|
|
58
|
+
fgt = FortiOS(host="192.0.2.10", token="api_token")
|
|
59
|
+
|
|
60
|
+
# Auto-retry - waits 5 seconds between retries (up to 3 attempts)
|
|
61
|
+
fgt = FortiOS(
|
|
62
|
+
host="192.0.2.10",
|
|
63
|
+
token="api_token",
|
|
64
|
+
circuit_breaker_auto_retry=True,
|
|
65
|
+
circuit_breaker_max_retries=3,
|
|
66
|
+
circuit_breaker_retry_delay=5.0 # Wait 5s between retries
|
|
67
|
+
)
|
|
68
|
+
|
|
69
|
+
# Custom retry delay for slower recovery scenarios
|
|
70
|
+
fgt = FortiOS(
|
|
71
|
+
host="192.0.2.10",
|
|
72
|
+
token="api_token",
|
|
73
|
+
circuit_breaker_auto_retry=True,
|
|
74
|
+
circuit_breaker_max_retries=5,
|
|
75
|
+
circuit_breaker_retry_delay=10.0 # Wait 10s between retries
|
|
76
|
+
)
|
|
77
|
+
```
|
|
78
|
+
|
|
79
|
+
- **Pytest Test Suites**: Comprehensive test coverage for convenience wrapper classes
|
|
80
|
+
- `examples/ipmacbinding_test_suite.py`: 19 tests covering IP/MAC binding CRUD operations
|
|
81
|
+
- Tests: create, read, update, delete operations
|
|
82
|
+
- Validation: IP addresses, MAC addresses, status values, name length
|
|
83
|
+
- Convenience methods: enable(), disable(), exists()
|
|
84
|
+
- Error handling: duplicate entries, non-existent resources
|
|
85
|
+
- List operations and cleanup fixtures
|
|
86
|
+
- `examples/circuit_breaker_test.py`: Circuit breaker behavior demonstration
|
|
87
|
+
- Fail-fast vs auto-retry comparison
|
|
88
|
+
- Circuit breaker state transitions
|
|
89
|
+
- Recovery scenarios with valid endpoints
|
|
90
|
+
- All tests use pytest framework with fixtures for cleanup
|
|
91
|
+
- Tests validate both convenience wrappers and direct API access
|
|
92
|
+
|
|
93
|
+
### Changed
|
|
94
|
+
|
|
95
|
+
- **Circuit Breaker Defaults**: Adjusted thresholds for better testing and general use
|
|
96
|
+
- `circuit_breaker_threshold`: 5 → 10 consecutive failures (more tolerant)
|
|
97
|
+
- `circuit_breaker_timeout`: 60.0s → 30.0s (faster recovery)
|
|
98
|
+
- **Rationale**: Previous settings (5 failures, 60s timeout) were too aggressive for:
|
|
99
|
+
- Testing environments where some failures are expected
|
|
100
|
+
- Development workflows with frequent code changes
|
|
101
|
+
- Networks with occasional transient issues
|
|
102
|
+
- New settings still provide circuit breaker protection while being more practical
|
|
103
|
+
- Users can override via `circuit_breaker_threshold` and `circuit_breaker_timeout` parameters if needed
|
|
104
|
+
|
|
105
|
+
- **FirewallPolicy.exists()**: Enhanced to support lookup by name or policy ID
|
|
106
|
+
- Added optional `name` parameter for checking policy existence by name
|
|
107
|
+
- `policy_id` parameter is now optional (either `policy_id` or `name` required)
|
|
108
|
+
- Maintains backward compatibility - existing code using `policy_id` continues to work
|
|
109
|
+
- **Performance Note**: Using `name` performs a recursive lookup (slower), while `policy_id` uses direct API call (faster)
|
|
110
|
+
- Improves API consistency with schedule wrapper methods
|
|
111
|
+
- Examples:
|
|
112
|
+
```python
|
|
113
|
+
# Direct lookup by ID (recommended for performance)
|
|
114
|
+
exists = fgt.firewall.policy.exists(policy_id=5)
|
|
115
|
+
|
|
116
|
+
# Lookup by name (convenient but slower)
|
|
117
|
+
exists = fgt.firewall.policy.exists(name="Allow-Web-Traffic")
|
|
118
|
+
```
|
|
119
|
+
|
|
120
|
+
## [0.3.33] - 2025-12-25
|
|
121
|
+
|
|
122
|
+
### Fixed
|
|
123
|
+
|
|
124
|
+
- **Package Distribution**: Fixed missing `password_policy.py` module in PyPI package
|
|
125
|
+
- Version 0.3.32 was missing the `hfortix.FortiOS.api.v2.cmdb.system.password_policy` module
|
|
126
|
+
- This caused `ModuleNotFoundError` when initializing FortiOS instance
|
|
127
|
+
- Updated version in both `setup.py` and `pyproject.toml` to ensure consistency
|
|
128
|
+
- Rebuilt and republished package with all required modules included
|
|
129
|
+
- Users experiencing the import error should upgrade: `pip install --upgrade hfortix`
|
|
130
|
+
|
|
131
|
+
## [0.3.32] - 2025-12-24
|
|
132
|
+
|
|
133
|
+
### Fixed
|
|
134
|
+
|
|
135
|
+
- **CI/CD Pipeline**: Publishing now properly blocked if CI fails
|
|
136
|
+
- Removed `if: always()` from wait-for-ci job
|
|
137
|
+
- Job now fails if CI checks don't pass, preventing publishing
|
|
138
|
+
- Fixed trailing whitespace in workflow file
|
|
139
|
+
|
|
140
|
+
## [0.3.31] - 2025-12-24
|
|
141
|
+
|
|
142
|
+
### Fixed
|
|
143
|
+
|
|
144
|
+
- **CI/CD Pipeline**: Fixed wait-for-ci job to properly wait for CI completion
|
|
145
|
+
- Switched to `fountainhead/action-wait-for-check` for better reliability
|
|
146
|
+
- Added 30-minute timeout with 10-second polling interval
|
|
147
|
+
- Prevents race condition where publishing started before CI completed
|
|
148
|
+
- Job now always runs but conditionally waits based on trigger type
|
|
149
|
+
|
|
150
|
+
## [0.3.30] - 2025-12-24
|
|
151
|
+
|
|
152
|
+
### Changed
|
|
153
|
+
|
|
154
|
+
- **CI/CD Pipeline**: Publishing workflow now waits for CI checks to pass
|
|
155
|
+
- Added `wait-for-ci` job to ensure all quality checks pass before publishing
|
|
156
|
+
- Configured trusted publishing for TestPyPI (no API token needed)
|
|
157
|
+
- Publishing flow: CI passes → TestPyPI → verify → PyPI production
|
|
158
|
+
- Added comprehensive PyPI setup documentation (`docs/PYPI_SETUP.md`)
|
|
159
|
+
|
|
160
|
+
## [0.3.29] - 2025-12-24
|
|
161
|
+
|
|
162
|
+
### Changed
|
|
163
|
+
|
|
164
|
+
- **CI/CD Pipeline**: Enhanced PyPI publication workflow
|
|
165
|
+
- Now publishes to TestPyPI first for validation
|
|
166
|
+
- Only publishes to production PyPI after successful TestPyPI verification
|
|
167
|
+
- Added package availability verification steps
|
|
168
|
+
- Prevents publishing broken packages to production
|
|
169
|
+
|
|
170
|
+
## [0.3.28] - 2025-12-24
|
|
171
|
+
|
|
172
|
+
### Fixed
|
|
173
|
+
|
|
174
|
+
- **Critical Syntax Errors**: Fixed 512 broken f-strings in CMDB _helpers files
|
|
175
|
+
- Black formatter had incorrectly reformatted multi-line f-strings
|
|
176
|
+
- Caused 511 E999 syntax errors across all _helpers files
|
|
177
|
+
- Used regex pattern to rejoin broken f-string expressions
|
|
178
|
+
- All files now pass flake8 validation
|
|
179
|
+
|
|
180
|
+
### Changed
|
|
181
|
+
|
|
182
|
+
- **Pre-commit Configuration**: Enhanced Black exclusion documentation
|
|
183
|
+
- Added critical warning comment about _helpers exclusion
|
|
184
|
+
- Documented why exclusion must be maintained (prevents 500+ syntax errors)
|
|
185
|
+
- Prevents accidental removal of necessary exclusion pattern
|
|
186
|
+
|
|
187
|
+
## [0.3.27] - 2025-12-24
|
|
188
|
+
|
|
189
|
+
### Changed
|
|
190
|
+
|
|
191
|
+
- **Import Refactoring**: Refactored monitor API imports for better code quality
|
|
192
|
+
- `hfortix/FortiOS/api/v2/monitor/firewall/__init__.py` now uses direct class imports
|
|
193
|
+
- Eliminated confusing module alias pattern (e.g., `sessions as sessions_module`)
|
|
194
|
+
- Imports are now alphabetically sorted and properly formatted
|
|
195
|
+
- Cleaner, more maintainable code that passes isort/black checks
|
|
196
|
+
|
|
197
|
+
### Fixed
|
|
198
|
+
|
|
199
|
+
- **Pre-commit Configuration**: Removed monitor API from exclusions
|
|
200
|
+
- Monitor API files now included in black, isort, flake8, and mypy checks
|
|
201
|
+
- Fixed yamllint errors (trailing blank lines in YAML files)
|
|
202
|
+
- All pre-commit hooks now pass successfully
|
|
203
|
+
|
|
204
|
+
## [0.3.26] - 2025-12-24
|
|
205
|
+
|
|
206
|
+
### Fixed
|
|
207
|
+
|
|
208
|
+
- **Syntax Errors**: Fixed 32 files with broken f-strings (E999 errors)
|
|
209
|
+
- f-strings now properly formatted on single lines
|
|
210
|
+
- All files pass flake8 syntax validation
|
|
211
|
+
- Pre-release workflow now catches syntax errors immediately
|
|
212
|
+
|
|
213
|
+
### Changed
|
|
214
|
+
|
|
215
|
+
- **Directory Naming**: Renamed hyphenated directories to follow Python conventions
|
|
216
|
+
- `wireless-controller` → `wireless_controller`
|
|
217
|
+
- `switch-controller` → `switch_controller`
|
|
218
|
+
- `extension-controller` → `extension_controller`
|
|
219
|
+
- `endpoint-control` → `endpoint_control`
|
|
220
|
+
- `web-proxy` → `web_proxy`
|
|
221
|
+
- **BREAKING CHANGE**: Import paths updated, users must update their code
|
|
222
|
+
- Mypy can now properly validate all API modules
|
|
223
|
+
|
|
224
|
+
### Added
|
|
225
|
+
|
|
226
|
+
- `X/scripts/fix_fstrings.py` - Utility to fix broken f-strings in generated code
|
|
227
|
+
- `X/scripts/rename_hyphenated_dirs.py` - Utility for directory renaming
|
|
228
|
+
|
|
229
|
+
## [0.3.25] - 2025-12-24
|
|
230
|
+
|
|
231
|
+
### Added
|
|
232
|
+
|
|
233
|
+
- **Pre-Release Workflow**: Comprehensive code quality automation
|
|
234
|
+
- `make pre-release` - Auto-fix and validate code before release
|
|
235
|
+
- `make fix` - Auto-fix formatting and import issues
|
|
236
|
+
- `make fix-check` - Dry-run to see what would be fixed
|
|
237
|
+
- `X/scripts/pre_release_fix.py` - Auto-fix script with Black and isort
|
|
238
|
+
- `X/scripts/pre_release_check.py` - Validation script with all quality checks
|
|
239
|
+
|
|
240
|
+
### Changed
|
|
241
|
+
|
|
242
|
+
- **Code Quality Configuration**: Centralized and consistent settings
|
|
243
|
+
- Created `.flake8` config file with PEP 8 standards (79 char line length)
|
|
244
|
+
- API folders excluded from E501 line-length checks (auto-generated code)
|
|
245
|
+
- Updated `.pre-commit-config.yaml` to use `.flake8` config
|
|
246
|
+
- Updated GitHub Actions CI to use `.flake8` config
|
|
247
|
+
- All tools (Makefile, scripts, pre-commit, CI) now use same configuration
|
|
248
|
+
|
|
249
|
+
- **Pre-commit Hooks**: Improved configuration
|
|
250
|
+
- Excluded `X/` directory from all checks (development tools, not package code)
|
|
251
|
+
- Consistent exclude patterns across all hooks
|
|
252
|
+
- Pre-commit check added to pre-release workflow (warning only)
|
|
253
|
+
|
|
254
|
+
### Fixed
|
|
255
|
+
|
|
256
|
+
- **Test Execution**: Tests excluded from pre-release workflow
|
|
257
|
+
- Pre-release checks no longer run tests (run separately with `make test`)
|
|
258
|
+
- Focus on code quality, formatting, and linting only
|
|
259
|
+
|
|
260
|
+
### Documentation
|
|
261
|
+
|
|
262
|
+
- `X/scripts/README.md` - Pre-release workflow guide
|
|
263
|
+
- `X/CODE_QUALITY_CONFIG.md` - Comprehensive configuration documentation
|
|
264
|
+
|
|
265
|
+
## [0.3.24] - 2025-12-24
|
|
266
|
+
|
|
267
|
+
### Added
|
|
268
|
+
|
|
269
|
+
- **Exception Hierarchy**: Comprehensive retry logic support
|
|
270
|
+
- `RetryableError` base class for transient errors (rate limits, timeouts, service unavailable)
|
|
271
|
+
- `NonRetryableError` base class for permanent errors (bad request, duplicate entry, not found)
|
|
272
|
+
- All existing exceptions updated to inherit from appropriate base class
|
|
273
|
+
- Enables intelligent retry strategies: `if isinstance(error, RetryableError)`
|
|
274
|
+
|
|
275
|
+
- **New Exception Types**: Client-side and specialized errors
|
|
276
|
+
- `ConfigurationError` - FortiOS instance misconfiguration (replaces generic ValueError)
|
|
277
|
+
- `VDOMError` - VDOM-specific errors with vdom attribute
|
|
278
|
+
- `OperationNotSupportedError` - Unsupported operations on endpoints
|
|
279
|
+
- `ReadOnlyModeError` - Already existed, now properly documented
|
|
280
|
+
|
|
281
|
+
- **Enhanced Exception Metadata**: Better debugging and error tracking
|
|
282
|
+
- `request_id` - Unique UUID for each request (auto-generated)
|
|
283
|
+
- `timestamp` - ISO 8601 timestamp when error occurred
|
|
284
|
+
- Enhanced `__str__()` - Human-readable with emoji hints (💡)
|
|
285
|
+
- Added `__repr__()` - Developer-friendly representation for debugging
|
|
286
|
+
- All APIError exceptions now capture full context automatically
|
|
287
|
+
|
|
288
|
+
- **Recovery Suggestions**: Built-in error recovery guidance
|
|
289
|
+
- `DuplicateEntryError.suggest_recovery()` - Suggests using PUT or checking existing
|
|
290
|
+
- `EntryInUseError.suggest_recovery()` - Suggests removing references first
|
|
291
|
+
- `ResourceNotFoundError.suggest_recovery()` - Suggests using POST or listing available
|
|
292
|
+
- Helps developers understand how to handle common error scenarios
|
|
293
|
+
|
|
294
|
+
- **Helper Utility Functions**: Simplify retry logic implementation
|
|
295
|
+
- `is_retryable_error(error)` - Check if error should be retried
|
|
296
|
+
- `get_retry_delay(error, attempt, base_delay, max_delay)` - Calculate backoff delay
|
|
297
|
+
- Exponential backoff for `RateLimitError`
|
|
298
|
+
- Linear backoff for `ServiceUnavailableError`
|
|
299
|
+
- Moderate backoff for `TimeoutError`
|
|
300
|
+
- Makes implementing retry logic simple and consistent
|
|
301
|
+
|
|
302
|
+
- **Comprehensive Tests**: Full test coverage for new functionality
|
|
303
|
+
- Exception hierarchy tests (RetryableError vs NonRetryableError)
|
|
304
|
+
- Metadata capture tests (request_id, timestamp)
|
|
305
|
+
- String representation tests (__str__ and __repr__)
|
|
306
|
+
- Recovery suggestion tests
|
|
307
|
+
- Helper function tests (is_retryable_error, get_retry_delay)
|
|
308
|
+
- Client-side exception tests
|
|
309
|
+
- All tests passing ✅
|
|
310
|
+
|
|
311
|
+
### Changed
|
|
312
|
+
|
|
313
|
+
- **Exception Inheritance**: Updated all HTTP status exceptions
|
|
314
|
+
- `BadRequestError` now inherits from `NonRetryableError` (was APIError)
|
|
315
|
+
- `ResourceNotFoundError` now inherits from `NonRetryableError` (was APIError)
|
|
316
|
+
- `RateLimitError` now inherits from `RetryableError` (was APIError)
|
|
317
|
+
- `ServerError` now inherits from `RetryableError` (was APIError)
|
|
318
|
+
- `ServiceUnavailableError` now inherits from `RetryableError` (was APIError)
|
|
319
|
+
- `TimeoutError` now inherits from `RetryableError` (was APIError)
|
|
320
|
+
- `CircuitBreakerOpenError` now inherits from `RetryableError` (was APIError)
|
|
321
|
+
|
|
322
|
+
- **FortiOS-Specific Exceptions**: Updated inheritance
|
|
323
|
+
- `DuplicateEntryError` now inherits from `NonRetryableError` (was APIError)
|
|
324
|
+
- `EntryInUseError` now inherits from `NonRetryableError` (was APIError)
|
|
325
|
+
- `InvalidValueError` now inherits from `NonRetryableError` (was APIError)
|
|
326
|
+
- `PermissionDeniedError` now inherits from `NonRetryableError` (was APIError)
|
|
327
|
+
|
|
328
|
+
- **Error Hints**: Enhanced with emoji for better visibility
|
|
329
|
+
- All hints now prefixed with 💡 emoji in __str__ output
|
|
330
|
+
- Makes hints stand out in error messages and logs
|
|
331
|
+
|
|
332
|
+
### Documentation
|
|
333
|
+
|
|
334
|
+
- Updated `docs/ERROR_HANDLING_CONFIG.md` with retry examples
|
|
335
|
+
- Added exception hierarchy diagram in inline documentation
|
|
336
|
+
- Enhanced docstrings for all new exception classes
|
|
337
|
+
- Added comprehensive examples for helper functions
|
|
338
|
+
|
|
339
|
+
### Migration Guide
|
|
340
|
+
|
|
341
|
+
**No Breaking Changes**: All existing code continues to work. The changes are additive:
|
|
342
|
+
|
|
343
|
+
```python
|
|
344
|
+
# Old code still works
|
|
345
|
+
try:
|
|
346
|
+
fgt.api.cmdb.firewall.policy.post(data=...)
|
|
347
|
+
except DuplicateEntryError as e:
|
|
348
|
+
print(f"Error: {e}")
|
|
349
|
+
|
|
350
|
+
# New capabilities available
|
|
351
|
+
try:
|
|
352
|
+
fgt.api.cmdb.firewall.policy.post(data=...)
|
|
353
|
+
except DuplicateEntryError as e:
|
|
354
|
+
print(f"Request ID: {e.request_id}")
|
|
355
|
+
print(f"Timestamp: {e.timestamp}")
|
|
356
|
+
print(e.suggest_recovery())
|
|
357
|
+
|
|
358
|
+
# Intelligent retry logic
|
|
359
|
+
try:
|
|
360
|
+
result = fgt.api.cmdb.firewall.policy.get()
|
|
361
|
+
except Exception as e:
|
|
362
|
+
if is_retryable_error(e):
|
|
363
|
+
delay = get_retry_delay(e, attempt=1)
|
|
364
|
+
time.sleep(delay)
|
|
365
|
+
# retry...
|
|
366
|
+
```
|
|
367
|
+
|
|
368
|
+
## [0.3.23] - 2025-12-23
|
|
369
|
+
|
|
370
|
+
### Added
|
|
371
|
+
|
|
372
|
+
- **API Endpoints**: Added missing monitor API endpoints
|
|
373
|
+
- `check_addrgrp_exclude_mac_member` - Firewall address group MAC exclusion checking
|
|
374
|
+
- `check_port_availability` - System port availability checking
|
|
375
|
+
- Helper modules for both endpoints with validation support
|
|
376
|
+
|
|
377
|
+
### Fixed
|
|
378
|
+
|
|
379
|
+
- **CI/CD Pipeline**: Resolved issues blocking automated builds
|
|
380
|
+
- All pre-commit hooks now pass consistently
|
|
381
|
+
- Fixed recurring formatting issues that caused CI failures
|
|
382
|
+
- Mypy type checking passes without errors
|
|
383
|
+
- Ready for automated PyPI publishing via GitHub Actions
|
|
384
|
+
- **Code Quality**: Resolved persistent pre-commit formatting issues
|
|
385
|
+
- Fixed black formatting instability with inline comments in `http_client.py` and `http_client_base.py`
|
|
386
|
+
- Moved inline type annotation comments to separate lines for stable formatting
|
|
387
|
+
- Added missing `__all__` exports to resolve mypy module attribute errors
|
|
388
|
+
- Prevents format/check/format loops in CI pipeline
|
|
389
|
+
- **Git Configuration**: Fixed `.gitignore` pattern blocking legitimate API files
|
|
390
|
+
- Changed `check_*.py` to `/check_*.py` to only ignore root-level temporary scripts
|
|
391
|
+
- Prevents accidental exclusion of API endpoint modules with `check_` prefix
|
|
392
|
+
- Previously ignored files now properly tracked and versioned
|
|
393
|
+
- **Module Imports**: Removed unnecessary imports causing mypy errors
|
|
394
|
+
- Cleaned up redundant module-level imports in `firewall/__init__.py`
|
|
395
|
+
- Fixed "Module has no attribute" errors in type checking
|
|
396
|
+
|
|
397
|
+
### Changed
|
|
398
|
+
|
|
399
|
+
- **Code Formatting**: Applied black/isort formatting to all newly tracked files
|
|
400
|
+
- Consistent quote style (double quotes) across all API modules
|
|
401
|
+
- Proper import ordering and grouping per PEP 8
|
|
402
|
+
- Standardized blank line placement
|
|
403
|
+
- All 1596 source files pass mypy type checking
|
|
404
|
+
|
|
405
|
+
## [0.3.22] - 2025-12-23
|
|
406
|
+
|
|
407
|
+
### Added
|
|
408
|
+
|
|
409
|
+
- **CI/CD Pipeline**: Complete GitHub Actions workflow automation
|
|
410
|
+
- **CI Workflow** (`ci.yml`): Automated code quality checks on every push/PR
|
|
411
|
+
- Lint & format checking (Black, isort, flake8)
|
|
412
|
+
- Type checking with mypy
|
|
413
|
+
- Security scanning with Bandit (JSON reports as artifacts)
|
|
414
|
+
- Build validation with twine
|
|
415
|
+
- Pre-commit hook enforcement
|
|
416
|
+
- Multi-Python version testing (3.10, 3.11, 3.12)
|
|
417
|
+
- All checks gate job (blocks merge if any fail)
|
|
418
|
+
- **Publish Workflow** (`publish.yml`): Automated PyPI publishing
|
|
419
|
+
- Automatic publishing on git tag push (`v*.*.*`)
|
|
420
|
+
- Manual workflow dispatch for TestPyPI testing
|
|
421
|
+
- Version consistency validation across pyproject.toml, setup.py, __init__.py
|
|
422
|
+
- Trusted publishing support (no API tokens needed)
|
|
423
|
+
- Automatic GitHub release creation with changelog extraction
|
|
424
|
+
- **CodeQL Analysis** (`codeql.yml`): Advanced security scanning
|
|
425
|
+
- Runs on push to main, PRs, and weekly schedule
|
|
426
|
+
- GitHub Advanced Security vulnerability detection
|
|
427
|
+
- **Dependency Review** (`dependency-review.yml`): PR dependency checking
|
|
428
|
+
- Detects new dependencies and vulnerabilities
|
|
429
|
+
- Blocks moderate+ severity issues and GPL licenses
|
|
430
|
+
- **Auto-label PRs** (`label-pr.yml`): Automatic PR categorization
|
|
431
|
+
- Labels based on changed files (docs, tests, api, core, etc.)
|
|
432
|
+
- **Documentation**: Complete CI/CD guide in `docs/CICD.md`
|
|
433
|
+
- Workflow explanations and usage examples
|
|
434
|
+
- Local development integration
|
|
435
|
+
- Troubleshooting guide
|
|
436
|
+
|
|
437
|
+
### Changed
|
|
438
|
+
|
|
439
|
+
- **Code Quality**: Applied comprehensive PEP 8 compliance
|
|
440
|
+
- Reformatted 796 files with Black (line-length=79)
|
|
441
|
+
- Fixed 1000+ flake8 lint errors for strict PEP 8 compliance
|
|
442
|
+
- Standardized on 79-character line limit (PEP 8 standard)
|
|
443
|
+
- Only ignoring E203 (Black slice spacing) and W503 (modern line break style)
|
|
444
|
+
- All auto-generated API v2 files excluded from linting
|
|
445
|
+
- **Import Cleanup**: Removed unused imports across core modules
|
|
446
|
+
- Fixed F401 (unused imports) warnings
|
|
447
|
+
- Added proper noqa comments for intentional exceptions
|
|
448
|
+
|
|
449
|
+
### Fixed
|
|
450
|
+
|
|
451
|
+
- **Empty F-Strings**: Fixed F541 errors (f-strings without placeholders)
|
|
452
|
+
- Converted empty f-strings to regular strings in performance_test.py
|
|
453
|
+
- Proper string formatting in all print statements
|
|
454
|
+
- **Unused Variables**: Fixed F841 warnings in test functions
|
|
455
|
+
- Added explicit ignore markers for intentionally unused variables
|
|
456
|
+
- **Long Lines**: Systematic fixing of E501 errors
|
|
457
|
+
- Wrapped docstrings to 79 characters
|
|
458
|
+
- Split long log messages across lines
|
|
459
|
+
- Added strategic noqa comments for unavoidable long lines
|
|
460
|
+
|
|
461
|
+
### Removed
|
|
462
|
+
|
|
463
|
+
## [0.3.21] - 2025-12-22
|
|
464
|
+
|
|
465
|
+
### Fixed
|
|
466
|
+
|
|
467
|
+
- **Type Errors in Core Modules**: Fixed multiple type checking errors across the codebase
|
|
468
|
+
- **fortios.py line 472**: Fixed `Operator "in" not supported for types "Literal[' ']" and "str | None"`
|
|
469
|
+
- Added None check before using `in` operator for token validation
|
|
470
|
+
- Changed from `if has_token:` to `if has_token and token is not None:`
|
|
471
|
+
- **firewallPolicy.py**: Fixed return type mismatches for API method calls (5 locations)
|
|
472
|
+
- Added `Coroutine` to type imports for proper type hint support
|
|
473
|
+
- Added `# type: ignore[return-value]` comments at lines 733, 777, 1220, 1246, 1455
|
|
474
|
+
- Issue: API methods return `Union[dict, Coroutine]` for async/sync compatibility
|
|
475
|
+
- Wrapper methods declare strict `Dict` return types for better IDE autocomplete
|
|
476
|
+
- **performance_test.py**: Fixed dynamic attribute access errors
|
|
477
|
+
- Line 323: Added `hasattr` check before calling dynamic `get()` method
|
|
478
|
+
- Line 359: Replaced non-existent `logout()` method with `close()` method
|
|
479
|
+
- All reported type errors now resolved while maintaining full functionality
|
|
480
|
+
|
|
481
|
+
- **Type Annotation Runtime Error**: Fixed `NameError: name 'Coroutine' is not defined` error
|
|
482
|
+
- Added `from __future__ import annotations` to 832 files across the entire API codebase
|
|
483
|
+
- Issue: `Coroutine` type was imported in `TYPE_CHECKING` blocks (False at runtime) but used in runtime type annotations
|
|
484
|
+
- Solution: Deferred evaluation of all type annotations using PEP 563 (`__future__.annotations`)
|
|
485
|
+
- Enables proper type checking while avoiding runtime evaluation errors
|
|
486
|
+
- Affected files: All API endpoint modules (cmdb, log, monitor, service)
|
|
487
|
+
- Created automated fix script (`fix_coroutine_imports.py`) for systematic resolution
|
|
488
|
+
- All tests now pass without runtime type annotation errors
|
|
489
|
+
|
|
490
|
+
### Added
|
|
491
|
+
|
|
492
|
+
- **API Validators - Complete Coverage**: Generated validation helpers for all FortiOS API types
|
|
493
|
+
- Generated 832 validation helper modules across 77 categories (4 API types)
|
|
494
|
+
- **CMDB API**: 37 categories, 548 validators
|
|
495
|
+
- **LOG API**: 5 categories, 5 validators
|
|
496
|
+
- **MONITOR API**: 32 categories, 276 validators
|
|
497
|
+
- **SERVICE API**: 3 categories, 3 validators
|
|
498
|
+
- Extended validator generator to support all API types (cmdb, log, monitor, service)
|
|
499
|
+
- Implemented API-type-specific path matching (CMDB uses `/cmdb/` prefix, others don't)
|
|
500
|
+
- Enhanced fuzzy path matching for complex endpoint structures (0 endpoints skipped)
|
|
501
|
+
- Consistent `VALID_BODY_*` and `VALID_QUERY_*` naming convention for parameter constants
|
|
502
|
+
- Body parameter validation: Payload field validation with `VALID_BODY_ACTION`, `VALID_BODY_STATUS`, etc.
|
|
503
|
+
- Query parameter validation: URL parameter validation with `VALID_QUERY_ACTION`, etc.
|
|
504
|
+
- Handles parameter name collisions (e.g., `action` in both body and query contexts)
|
|
505
|
+
- **Validation coverage**:
|
|
506
|
+
- ✅ Enum validation (predefined allowed values)
|
|
507
|
+
- ✅ Length validation (minLength/maxLength for strings)
|
|
508
|
+
- ✅ Range validation (min/max for numeric values)
|
|
509
|
+
- ✅ Pattern validation (regex patterns)
|
|
510
|
+
- ✅ Type validation (implicit via type coercion with error handling)
|
|
511
|
+
- ⚠️ **Required field validation NOT YET IMPLEMENTED** - needs to be added
|
|
512
|
+
- All validators auto-generated from FortiOS 7.6.5 OpenAPI specifications
|
|
513
|
+
- CMDB Categories: alertemail, antivirus, application, authentication, automation, casb, certificate,
|
|
514
|
+
diameter-filter, dlp, dnsfilter, emailfilter, endpoint-control, ethernet-oam, extension-controller,
|
|
515
|
+
file-filter, firewall, ftp-proxy, icap, ips, log, monitoring, report, router, rule, sctp-filter,
|
|
516
|
+
switch-controller, system, user, videofilter, virtual-patch, voip, vpn, waf, web-proxy, webfilter,
|
|
517
|
+
wireless-controller, ztna
|
|
518
|
+
|
|
519
|
+
- **Builder Pattern Refactoring (Phase 1)**: Eliminated code duplication in firewall policy endpoints
|
|
520
|
+
- Created `hfortix/FortiOS/api/v2/cmdb/firewall/_helpers/policy_helpers.py` (123 lines)
|
|
521
|
+
- Implemented `build_policy_payload()` - API layer function (no normalization)
|
|
522
|
+
- Implemented `build_policy_payload_normalized()` - Wrapper layer function (with normalization)
|
|
523
|
+
- Implemented `normalize_to_name_list()` - Format converter for flexible inputs
|
|
524
|
+
- Refactored `policy.py`: 1796 → 1381 lines (-415 lines, -23% reduction)
|
|
525
|
+
- Refactored `firewallPolicy.py`: 1703 → 1541 lines (-162 lines, -10% reduction)
|
|
526
|
+
- Total: 454 lines removed, 13% reduction across both files
|
|
527
|
+
- All 226 integration tests passing - Zero breaking changes
|
|
528
|
+
- Proper architectural separation: API layer (no normalization) vs Wrapper layer (with normalization)
|
|
529
|
+
|
|
530
|
+
- **Code Quality Improvements**: Comprehensive codebase quality audit and improvements
|
|
531
|
+
- **Code Formatting**: Applied `isort` and `black` to all 823 files in `hfortix/`
|
|
532
|
+
- Fixed syntax error in `lldp_profile.py` (renamed variables with dots to underscores)
|
|
533
|
+
- All files now follow consistent PEP 8 formatting standards
|
|
534
|
+
- Consistent import ordering across entire codebase
|
|
535
|
+
- **Type Hints**: Added missing type hints to 7 functions
|
|
536
|
+
- `performance_test.py`: Added return types to `print_summary()`, `quick_test()`
|
|
537
|
+
- `exceptions_forti.py`: Added type hints to 5 functions (error handling utilities)
|
|
538
|
+
- `api/__init__.py`: Added return type to `__dir__()`
|
|
539
|
+
- Added `Optional` import where needed
|
|
540
|
+
- **Docstring Audit**: Verified Google-style docstrings across all public APIs
|
|
541
|
+
- Core classes: `FortiOS`, `AsyncHTTPClient`, `HTTPClient`, `BaseHTTPClient` - all comprehensive
|
|
542
|
+
- Exception classes: All have proper descriptions, args, and examples
|
|
543
|
+
- API endpoint classes: All have complete method documentation
|
|
544
|
+
- Helper functions: All utility functions properly documented
|
|
545
|
+
- **Legacy Code Review**: Scanned for deprecated patterns and legacy implementations
|
|
546
|
+
- No actual legacy code found (only config options with "legacy" in names)
|
|
547
|
+
- Codebase is clean and modern
|
|
548
|
+
|
|
549
|
+
### Changed
|
|
550
|
+
|
|
551
|
+
- **Documentation Updates**: Updated roadmap and project status documentation
|
|
552
|
+
- Updated `ROADMAP.md` with comprehensive feature history from v0.3.14-v0.3.21
|
|
553
|
+
- Added detailed v0.3.18 features (custom HTTP clients, environment variables, credential validation)
|
|
554
|
+
- Added v0.3.10-0.3.13 features (circuit breaker, connection pool, request tracking, structured logging)
|
|
555
|
+
- Changed builder pattern status from ✅ to ⏳ (only 1 of 30+ resources completed)
|
|
556
|
+
- Updated version tracking: v0.3.20 released, v0.3.21 in development
|
|
557
|
+
- Created `REFACTORING_SUMMARY.md` documenting builder pattern implementation
|
|
558
|
+
|
|
559
|
+
### Fixed
|
|
560
|
+
|
|
561
|
+
- **Firewall Policy Wrapper**: Improved parameter handling and code consistency
|
|
562
|
+
- Fixed `get()` method to properly construct API parameters dictionary
|
|
563
|
+
- Fixed `move()` method to use consistent parameter passing pattern
|
|
564
|
+
- Simplified implementation to match other wrapper methods
|
|
565
|
+
- All parameters now passed correctly to underlying API layer
|
|
566
|
+
|
|
567
|
+
- **Validator Generator**: Fixed parameter type handling and naming consistency
|
|
568
|
+
- Fixed undefined constant bug where query parameters referenced non-existent body constants
|
|
569
|
+
- Separated validation logic: body parameters (payload) vs query parameters (URL)
|
|
570
|
+
- Implemented consistent naming: `VALID_BODY_*` for payload, `VALID_QUERY_*` for URL params
|
|
571
|
+
- Prevents parameter name collision issues (e.g., `action` can exist in both contexts)
|
|
572
|
+
- Examples: `firewall/policy.py` (VALID_BODY_ACTION), `log/syslogd_setting.py` (both types)
|
|
573
|
+
|
|
574
|
+
## [0.3.20] - 2025-12-21
|
|
575
|
+
|
|
576
|
+
### Fixed
|
|
577
|
+
|
|
578
|
+
- **Firewall Policy Wrapper**: Fixed critical bugs in policy management wrapper
|
|
579
|
+
- Fixed `move()` method "top" and "bottom" positions now work correctly
|
|
580
|
+
- Properly queries all policies to find first/last policy IDs
|
|
581
|
+
- Excludes the policy being moved from consideration
|
|
582
|
+
- Uses query parameters instead of data payload for move action
|
|
583
|
+
- Bypasses generated API layer to call HTTP client directly with `params`
|
|
584
|
+
- Fixed `get_by_name()` return type - now returns single dict or None (not a list)
|
|
585
|
+
- Fixed `get(policy_id=X)` response handling - properly extracts policy from list response
|
|
586
|
+
- Fixed parameter names in all methods: `mkey` → `policyid` for consistency
|
|
587
|
+
- Added `raw_json` parameter support to `create()`, `get()`, `update()`, `delete()`, `move()`
|
|
588
|
+
- All 10 wrapper methods now fully tested and working with live FortiGate
|
|
589
|
+
|
|
590
|
+
### Tested
|
|
591
|
+
|
|
592
|
+
- **Integration Testing**: Verified all firewall policy wrapper functions against live FortiGate
|
|
593
|
+
- ✅ `create()` - Create policies with all parameters
|
|
594
|
+
- ✅ `get()` - Get all policies or specific policy by ID
|
|
595
|
+
- ✅ `get_by_name()` - Get policy by exact name match
|
|
596
|
+
- ✅ `update()` - Partial policy updates
|
|
597
|
+
- ✅ `delete()` - Delete policies
|
|
598
|
+
- ✅ `exists()` - Check policy existence
|
|
599
|
+
- ✅ `move()` - Reorder policies (before/after/top/bottom)
|
|
600
|
+
- ✅ `clone()` - Duplicate policies with modifications
|
|
601
|
+
- ✅ `enable()` / `disable()` - Toggle policy status
|
|
602
|
+
|
|
603
|
+
### Documentation
|
|
604
|
+
|
|
605
|
+
- **Filtering Guide**: Confirmed filter operators for policy searches
|
|
606
|
+
- `==` - Exact match (case insensitive)
|
|
607
|
+
- `=@` - Contains (substring match)
|
|
608
|
+
- `!=` - Not equals
|
|
609
|
+
- `!@` - Does not contain
|
|
610
|
+
- Multiple conditions with `&` (AND logic)
|
|
611
|
+
- Examples: `filter="name=@API_TEST"` returns all policies containing "API_TEST"
|
|
612
|
+
|
|
613
|
+
## [0.3.19] - 2025-12-21
|
|
614
|
+
|
|
615
|
+
### Changed
|
|
616
|
+
|
|
617
|
+
- **Type Checking Configuration**: Cleaned up mypy configuration in pyproject.toml
|
|
618
|
+
- Removed unnecessary `httpx.*` mypy override (httpx v0.28.1 has built-in type hints)
|
|
619
|
+
- Removed obsolete `requests.*` mypy override (library migrated to httpx in v0.3.12)
|
|
620
|
+
- Enables better IDE autocomplete and type checking for HTTP client usage
|
|
621
|
+
- Verified: Zero new mypy errors after cleanup
|
|
622
|
+
|
|
623
|
+
### Improved
|
|
624
|
+
|
|
625
|
+
- **Build Configuration**: Updated .gitignore to exclude GitHub templates
|
|
626
|
+
- Excludes `.github/ISSUE_TEMPLATE/` and `.github/PULL_REQUEST_TEMPLATE.md`
|
|
627
|
+
- Prevents inclusion of work-in-progress templates in releases
|
|
628
|
+
|
|
629
|
+
## [0.3.18] - 2025-12-21
|
|
630
|
+
|
|
631
|
+
### Fixed
|
|
632
|
+
|
|
633
|
+
- **Test File Naming**: Fixed critical circular import issues caused by test files shadowing Python stdlib modules
|
|
634
|
+
- Renamed all 354 test files to use `test_` prefix (e.g., `statistics.py` → `test_statistics.py`)
|
|
635
|
+
- Prevents shadowing of Python stdlib modules: `statistics`, `ssl`, `os`, `time`, `profile`, `resource`, `test`
|
|
636
|
+
- Fixes "cannot import name 'fgt' from partially initialized module" errors
|
|
637
|
+
- All monitor, vpn, wifi, router, and system tests now execute correctly
|
|
638
|
+
- Follows Python testing best practices and PEP 8 conventions
|
|
639
|
+
- Created automated `rename_tests.py` script for systematic renaming
|
|
640
|
+
|
|
641
|
+
### Added
|
|
642
|
+
|
|
643
|
+
- **Extensibility: Custom HTTP Clients**: Library now supports custom HTTP client implementations
|
|
644
|
+
- `IHTTPClient` Protocol interface (PEP 544) for type-safe extensibility
|
|
645
|
+
- All 750+ endpoint files use TYPE_CHECKING pattern for protocol imports
|
|
646
|
+
- `FortiOS.__init__()` accepts custom clients via `client` parameter
|
|
647
|
+
- Enables audit logging, response caching, fake clients for testing, custom authentication
|
|
648
|
+
- Complete example file: `examples/custom_http_client_example.py`
|
|
649
|
+
- Three production-ready examples: AuditLoggingHTTPClient, CachingHTTPClient, FakeHTTPClient
|
|
650
|
+
- Documentation in README.md "Extensibility" section
|
|
651
|
+
- Use cases: SOX/HIPAA/PCI-DSS compliance, CI/CD testing, performance optimization
|
|
652
|
+
|
|
653
|
+
- **Environment Variables Support**: Load credentials from environment variables
|
|
654
|
+
- Support for `FORTIOS_HOST`, `FORTIOS_TOKEN`, `FORTIOS_USERNAME`, `FORTIOS_PASSWORD`
|
|
655
|
+
- Explicit parameters take priority over environment variables
|
|
656
|
+
- Enables clean separation of credentials from code
|
|
657
|
+
- Perfect for CI/CD pipelines, Docker containers, and security best practices
|
|
658
|
+
- Example: `export FORTIOS_TOKEN="..." && python script.py`
|
|
659
|
+
- No hardcoded credentials needed in scripts
|
|
660
|
+
- Comprehensive documentation in README.md and QUICKSTART.md
|
|
661
|
+
|
|
662
|
+
- **Credential Validation**: Comprehensive validation for authentication credentials
|
|
663
|
+
- Validates token format (25+ characters minimum, alphanumeric with hyphens/underscores)
|
|
664
|
+
- Catches common copy-paste errors: spaces in tokens, invalid special characters
|
|
665
|
+
- Detects placeholder tokens: "your_token_here", "xxx", "api_token", "your-api-token", etc.
|
|
666
|
+
- Version-agnostic: works with all FortiOS versions (31-32 chars in older, 40+ chars in newer)
|
|
667
|
+
- Enforces username+password pairing (both must be provided together)
|
|
668
|
+
- Provides actionable error messages with clear examples
|
|
669
|
+
- Prevents authentication failures before making API calls
|
|
670
|
+
- Added comprehensive inline documentation
|
|
671
|
+
|
|
672
|
+
- **Protocol Method Stubs**: Enhanced IHTTPClient protocol interface
|
|
673
|
+
- Added `get_operations()` method stub for operation tracking
|
|
674
|
+
- Added `get_write_operations()` method stub for write operation filtering
|
|
675
|
+
- Added `get_health_metrics()` method stub for connection health monitoring
|
|
676
|
+
- All methods marked as optional with comprehensive docstrings
|
|
677
|
+
- Enables type-safe access to optional features without suppressions
|
|
678
|
+
|
|
679
|
+
### Improved
|
|
680
|
+
|
|
681
|
+
- **Documentation**: Updated authentication documentation
|
|
682
|
+
- Added detailed token requirements section in README.md
|
|
683
|
+
- Documented 25-character minimum and version variability
|
|
684
|
+
- Updated QUICKSTART.md with credential validation examples
|
|
685
|
+
- Added error handling examples for common mistakes
|
|
686
|
+
- Documented username/password validation requirements
|
|
687
|
+
- Added best practices for token format
|
|
688
|
+
|
|
689
|
+
- **Documentation Links**: Fixed PyPI compatibility for all documentation
|
|
690
|
+
- Updated all doc links to use full GitHub URLs (works on PyPI)
|
|
691
|
+
- Removed broken HELPER_METHODS.md references (file doesn't exist)
|
|
692
|
+
- Consolidated helper method docs in ENDPOINT_METHODS.md
|
|
693
|
+
- Renamed DOCS_INDEX.md → INDEX.md for clarity
|
|
694
|
+
- All cross-references verified and working
|
|
695
|
+
|
|
696
|
+
- **Code Quality**: Fixed type checking errors
|
|
697
|
+
- Added PerformanceTestResults to TYPE_CHECKING imports in utils.py
|
|
698
|
+
- Fixed "not defined" error on line 55
|
|
699
|
+
- Updated .gitignore to include .mypy_cache/
|
|
700
|
+
|
|
701
|
+
### Changed
|
|
702
|
+
|
|
703
|
+
- **Token Validation Logic**: Improved from length-based to format-based validation
|
|
704
|
+
- Removed strict 20-character minimum (too restrictive)
|
|
705
|
+
- Changed to flexible 25-character minimum (catches invalid tokens, allows all FortiOS versions)
|
|
706
|
+
- Treats tokens as opaque strings per Fortinet best practices
|
|
707
|
+
- No maximum length restriction (supports all current and future FortiOS versions)
|
|
708
|
+
- Enhanced alphanumeric validation with hyphen/underscore support
|
|
709
|
+
- Expanded placeholder detection list for better error catching
|
|
710
|
+
|
|
711
|
+
## [0.3.17] - 2025-12-20
|
|
712
|
+
|
|
713
|
+
### Added
|
|
714
|
+
- New `fgt.api.utils.performance_test()` method for integrated testing
|
|
715
|
+
- Validates connection pool settings automatically
|
|
716
|
+
- Tests real-world API endpoints (status, policies, addresses, interfaces, resources)
|
|
717
|
+
- Identifies device performance profile (high-performance, fast-lan, remote-wan)
|
|
718
|
+
- Provides device-specific recommendations for optimal settings
|
|
719
|
+
- Accessible via `fgt.api.utils` namespace
|
|
720
|
+
- Standalone functions also available: `quick_test()`, `run_performance_test()`
|
|
721
|
+
- Command-line interface: `python -m hfortix.FortiOS.performance_test`
|
|
722
|
+
- Comprehensive documentation in `docs/PERFORMANCE_TESTING.md`
|
|
723
|
+
|
|
724
|
+
- **Read-Only Mode**: Protect production environments by blocking write operations
|
|
725
|
+
- Add `read_only=True` flag to FortiOS constructor
|
|
726
|
+
- Blocks all POST, PUT, and DELETE requests with `ReadOnlyModeError`
|
|
727
|
+
- GET requests execute normally for queries and monitoring
|
|
728
|
+
- Perfect for testing, CI/CD pipelines, dry-run previews, and training
|
|
729
|
+
- Works with both sync and async modes
|
|
730
|
+
|
|
731
|
+
- **Operation Tracking**: Complete audit log of all API operations
|
|
732
|
+
- Add `track_operations=True` flag to enable operation logging
|
|
733
|
+
- Records timestamp, method, URL, request data, response status, and VDOM
|
|
734
|
+
- Access via `get_operations()` or `get_write_operations()`
|
|
735
|
+
- Tracks both successful operations and those blocked by read-only mode
|
|
736
|
+
- Perfect for debugging, auditing, change logs, and documentation
|
|
737
|
+
- Works with both sync and async modes
|
|
738
|
+
|
|
739
|
+
- **Extended Filter Documentation**: Comprehensive guide to FortiOS filtering
|
|
740
|
+
- New `docs/FILTERING_GUIDE.md` with complete operator documentation
|
|
741
|
+
- Covers all FortiOS native filter operators: `==`, `!=`, `=@`, `!@`, `<`, `<=`, `>`, `>=`
|
|
742
|
+
- 50+ practical examples for common use cases
|
|
743
|
+
- Field-specific examples for addresses, policies, interfaces, routes
|
|
744
|
+
- Advanced patterns: range queries, combined filters, exclusions
|
|
745
|
+
|
|
746
|
+
- **Username/Password Authentication**: Alternative to API token authentication
|
|
747
|
+
- Session-based authentication using username and password
|
|
748
|
+
- Automatic session management and renewal
|
|
749
|
+
- Useful when API tokens are not available or for temporary access
|
|
750
|
+
- Example: `FortiOS(host='...', username='admin', password='...')`
|
|
751
|
+
|
|
752
|
+
### Improved
|
|
753
|
+
|
|
754
|
+
- **Type Safety**: Reduced type ignores from 4 to 1 in core fortios.py
|
|
755
|
+
- Added protocol method stubs to IHTTPClient interface
|
|
756
|
+
- Eliminated type: ignore[attr-defined] suppressions
|
|
757
|
+
- Only architectural async type ignore remains
|
|
758
|
+
- Better IDE support and type inference- **Firewall Policy Convenience Wrapper**: Intuitive interface for policy management
|
|
759
|
+
- Access via `fgt.firewall.policy` namespace
|
|
760
|
+
- Methods: `create()`, `update()`, `get()`, `delete()`, `exists()`, `enable()`, `disable()`, `move()`, `clone()`
|
|
761
|
+
- 150+ explicit parameters matching FortiOS terminology
|
|
762
|
+
- Comprehensive documentation in `docs/FIREWALL_POLICY_WRAPPER.md`
|
|
763
|
+
|
|
764
|
+
### Changed
|
|
765
|
+
|
|
766
|
+
- **Connection Pool Defaults Optimized**: Based on multi-device performance testing
|
|
767
|
+
- `max_connections`: Reduced from 100 → 30 → **10** (conservative default)
|
|
768
|
+
- `max_keepalive_connections`: Reduced from 20 → 15 → **5** (conservative default)
|
|
769
|
+
- Defaults set 50% below lowest-performing device tested
|
|
770
|
+
- Tested across 3 FortiGate models with varying performance characteristics
|
|
771
|
+
- Use `fgt.api.utils.performance_test()` to get device-specific recommendations
|
|
772
|
+
- Performance testing shows most FortiGates serialize API requests internally
|
|
773
|
+
- Sequential requests recommended for most deployments
|
|
774
|
+
|
|
775
|
+
### Fixed
|
|
776
|
+
|
|
777
|
+
- **Connection Pool Validation**: Auto-adjust instead of error
|
|
778
|
+
- Changed from hard error to auto-adjust when `max_keepalive_connections > max_connections`
|
|
779
|
+
- Logs warning and adjusts `max_keepalive_connections` to match `max_connections`
|
|
780
|
+
- Allows testing different concurrency levels without configuration errors
|
|
781
|
+
|
|
782
|
+
## [0.3.16] - 2025-12-20
|
|
783
|
+
|
|
784
|
+
### Added
|
|
785
|
+
|
|
786
|
+
- **Read-Only Mode**: Protect production environments by blocking write operations
|
|
787
|
+
- Add `read_only=True` flag to FortiOS constructor to prevent accidental changes
|
|
788
|
+
- Blocks all POST, PUT, and DELETE requests with `ReadOnlyModeError` exception
|
|
789
|
+
- GET requests execute normally for queries and monitoring
|
|
790
|
+
- Perfect for testing automation scripts, CI/CD pipelines, dry-run previews, and training environments
|
|
791
|
+
- Works with both sync and async modes
|
|
792
|
+
- Examples:
|
|
793
|
+
```python
|
|
794
|
+
# Enable read-only mode for safe testing
|
|
795
|
+
fgt = FortiOS("192.0.2.10", token="...", read_only=True)
|
|
796
|
+
|
|
797
|
+
# GET requests work normally
|
|
798
|
+
addresses = fgt.api.cmdb.firewall.address.get() # ✓ Works
|
|
799
|
+
|
|
800
|
+
# Write operations are blocked
|
|
801
|
+
try:
|
|
802
|
+
fgt.api.cmdb.firewall.address.post(data={"name": "test"})
|
|
803
|
+
except ReadOnlyModeError as e:
|
|
804
|
+
print(f"Blocked: {e}") # ✗ Raises ReadOnlyModeError
|
|
805
|
+
|
|
806
|
+
# Combine with operation tracking for audit trail
|
|
807
|
+
fgt = FortiOS("fw", token="...", read_only=True, track_operations=True)
|
|
808
|
+
# ... make API calls ...
|
|
809
|
+
for op in fgt.get_operations():
|
|
810
|
+
if op.get('blocked_by_read_only'):
|
|
811
|
+
print(f"BLOCKED: {op['method']} {op['path']}")
|
|
812
|
+
```
|
|
813
|
+
|
|
814
|
+
- **Operation Tracking**: Complete audit log of all API operations
|
|
815
|
+
- Add `track_operations=True` flag to enable operation logging
|
|
816
|
+
- Records timestamp, method, URL, request data, response status, and VDOM for every API call
|
|
817
|
+
- Access via `get_operations()` (all operations) or `get_write_operations()` (POST/PUT/DELETE only)
|
|
818
|
+
- Tracks both successful operations and those blocked by read-only mode
|
|
819
|
+
- Perfect for debugging, auditing, generating change logs, and documentation
|
|
820
|
+
- Works with both sync and async modes
|
|
821
|
+
- Examples:
|
|
822
|
+
```python
|
|
823
|
+
# Enable operation tracking
|
|
824
|
+
fgt = FortiOS("192.0.2.10", token="...", track_operations=True)
|
|
825
|
+
|
|
826
|
+
# Make various API calls
|
|
827
|
+
fgt.api.monitor.system.status.get()
|
|
828
|
+
fgt.api.cmdb.firewall.address.post(data={"name": "test", "subnet": "10.0.0.1/32"})
|
|
829
|
+
fgt.api.cmdb.firewall.policy.put("10", data={"action": "deny"})
|
|
830
|
+
|
|
831
|
+
# Get all operations
|
|
832
|
+
all_ops = fgt.get_operations()
|
|
833
|
+
for op in all_ops:
|
|
834
|
+
print(f"{op['timestamp']} {op['method']} {op['path']}")
|
|
835
|
+
# Output:
|
|
836
|
+
# 2024-12-20T10:30:15Z GET /system/status
|
|
837
|
+
# 2024-12-20T10:30:16Z POST /firewall/address
|
|
838
|
+
# 2024-12-20T10:30:17Z PUT /firewall/policy/10
|
|
839
|
+
|
|
840
|
+
# Get only write operations (POST/PUT/DELETE)
|
|
841
|
+
write_ops = fgt.get_write_operations()
|
|
842
|
+
for op in write_ops:
|
|
843
|
+
print(f"{op['method']} {op['path']}")
|
|
844
|
+
if op['data']:
|
|
845
|
+
print(f" Data: {op['data']}")
|
|
846
|
+
# Output:
|
|
847
|
+
# POST /firewall/address
|
|
848
|
+
# Data: {'data': {'name': 'test', 'subnet': '10.0.0.1/32'}}
|
|
849
|
+
# PUT /firewall/policy/10
|
|
850
|
+
# Data: {'name': '10', 'data': {'action': 'deny'}}
|
|
851
|
+
```
|
|
852
|
+
|
|
853
|
+
- **Extended Filter Documentation**: Comprehensive guide to FortiOS filter operators
|
|
854
|
+
- New `FILTERING_GUIDE.md` with complete documentation of all FortiOS native filter operators
|
|
855
|
+
- Covers all 8 operators: `==`, `!=`, `=@`, `!@`, `<`, `<=`, `>`, `>=`
|
|
856
|
+
- 50+ practical examples for firewall addresses, policies, interfaces, and routes
|
|
857
|
+
- Advanced patterns: range queries, exclusions, combined filters, pagination
|
|
858
|
+
- Tips and best practices for efficient filtering
|
|
859
|
+
- Examples:
|
|
860
|
+
```python
|
|
861
|
+
# Equality
|
|
862
|
+
fgt.api.cmdb.firewall.address.get(filter="name==test-host")
|
|
863
|
+
|
|
864
|
+
# Contains (substring match)
|
|
865
|
+
fgt.api.cmdb.firewall.address.get(filter="subnet=@10.0")
|
|
866
|
+
|
|
867
|
+
# Range query
|
|
868
|
+
fgt.api.cmdb.firewall.policy.get(filter="policyid>=100&policyid<=200")
|
|
869
|
+
|
|
870
|
+
# Multiple conditions (AND logic)
|
|
871
|
+
fgt.api.cmdb.firewall.policy.get(filter="status==enable&action==accept")
|
|
872
|
+
|
|
873
|
+
# Not contains (exclusion)
|
|
874
|
+
fgt.api.cmdb.firewall.address.get(filter="subnet!@192.168")
|
|
875
|
+
```
|
|
876
|
+
|
|
877
|
+
- **Username/Password Authentication**: Alternative authentication method for FortiOS devices
|
|
878
|
+
- Session-based authentication using username and password (alternative to API tokens)
|
|
879
|
+
- Automatic login on initialization, automatic logout on context manager exit
|
|
880
|
+
- Context manager support for automatic session cleanup: `with FortiOS(username="admin", password="***") as fgt:`
|
|
881
|
+
- Proactive session refresh to prevent idle timeout expiration
|
|
882
|
+
- Configurable session idle timeout (default: 5 minutes, matching FortiGate defaults)
|
|
883
|
+
- Automatic re-authentication on 401 errors if session expires
|
|
884
|
+
- Session tracking with last activity timestamps
|
|
885
|
+
- **⚠️ Deprecation Notice**: Username/password authentication **still works in FortiOS 7.4.x** but is **removed in FortiOS 7.6.x and later**. Fortinet recommends using API token authentication for all new deployments. See [FortiOS 7.4 Release Notes](https://docs.fortinet.com/document/fortigate/7.4.0/fortios-release-notes).
|
|
886
|
+
- **Important**: Proactive re-authentication only works with context manager (`with` statement). Without context manager, you must manually manage login/logout.
|
|
887
|
+
- **Note**: The idle timer resets on each API request. Proactive re-auth triggers when time since *last request* exceeds the threshold (not time since login).
|
|
888
|
+
- Examples:
|
|
889
|
+
```python
|
|
890
|
+
# Recommended: Context manager (automatic login/logout + proactive re-auth)
|
|
891
|
+
with FortiOS(host="fw", username="admin", password="***") as fgt:
|
|
892
|
+
addresses = fgt.api.cmdb.firewall.address.get()
|
|
893
|
+
# Session automatically refreshed if approaching timeout
|
|
894
|
+
# Auto-logout on exit
|
|
895
|
+
|
|
896
|
+
# Custom timeout (match your FortiGate's remoteauthtimeout setting)
|
|
897
|
+
with FortiOS(host="fw", username="admin", password="***",
|
|
898
|
+
session_idle_timeout=120) as fgt: # 2 minutes
|
|
899
|
+
# Proactive re-auth at 96 seconds (80% of 120s)
|
|
900
|
+
status = fgt.api.monitor.system.status.get()
|
|
901
|
+
|
|
902
|
+
# Disable proactive re-authentication
|
|
903
|
+
with FortiOS(host="fw", username="admin", password="***",
|
|
904
|
+
session_idle_timeout=None) as fgt:
|
|
905
|
+
# Will only re-auth on 401 errors
|
|
906
|
+
addresses = fgt.api.cmdb.firewall.address.get()
|
|
907
|
+
```
|
|
908
|
+
- Implementation details:
|
|
909
|
+
- Login via POST to `/logincheck` with `secretkey` parameter (FortiOS convention)
|
|
910
|
+
- CSRF token extracted from `ccsrftoken` cookie
|
|
911
|
+
- Session cookies managed automatically by httpx client
|
|
912
|
+
- Logout via POST to `/logout` (clears session, sets cookies to expire in 1976)
|
|
913
|
+
- Proactive re-auth triggered at 80% of idle timeout (before expiration)
|
|
914
|
+
- Fallback re-auth on 401 Unauthorized responses
|
|
915
|
+
- Session timestamps: `_session_created_at`, `_session_last_activity`
|
|
916
|
+
|
|
917
|
+
- **Firewall Policy Convenience Wrapper**: Intuitive, GUI-like interface for managing firewall policies
|
|
918
|
+
- Access via `fgt.firewall.policy` namespace with explicit parameter names
|
|
919
|
+
- Simplified syntax: `fgt.firewall.policy.create(name='MyPolicy', srcintf=['port1'], ...)` instead of complex REST API calls
|
|
920
|
+
- Auto-normalizes inputs: accepts strings or lists, converts to FortiOS format automatically
|
|
921
|
+
- Full CRUD operations: `.create()`, `.update()`, `.get()`, `.delete()`, `.exists()`
|
|
922
|
+
- Convenience methods: `.enable()`, `.disable()`, `.move()`, `.clone()`
|
|
923
|
+
- Supports all 100+ firewall policy parameters from FortiOS 7.6.5 API
|
|
924
|
+
- Works with both sync and async modes
|
|
925
|
+
- Examples:
|
|
926
|
+
```python
|
|
927
|
+
# Create policy with intuitive syntax
|
|
928
|
+
fgt.firewall.policy.create(
|
|
929
|
+
name='Allow-Web',
|
|
930
|
+
srcintf=['port1'],
|
|
931
|
+
dstintf=['port2'],
|
|
932
|
+
srcaddr=['internal-net'],
|
|
933
|
+
dstaddr=['all'],
|
|
934
|
+
service=['HTTP', 'HTTPS'],
|
|
935
|
+
action='accept',
|
|
936
|
+
nat='enable'
|
|
937
|
+
)
|
|
938
|
+
|
|
939
|
+
# Enable/disable policies
|
|
940
|
+
fgt.firewall.policy.disable(policy_id=10)
|
|
941
|
+
fgt.firewall.policy.enable(policy_id=10)
|
|
942
|
+
|
|
943
|
+
# Move policy
|
|
944
|
+
fgt.firewall.policy.move(policy_id=5, position='before', reference_id=3)
|
|
945
|
+
|
|
946
|
+
# Clone policy with modifications
|
|
947
|
+
fgt.firewall.policy.clone(policy_id=1, new_name='Cloned-Policy')
|
|
948
|
+
```
|
|
949
|
+
|
|
950
|
+
## [0.3.15] - 2025-12-20
|
|
951
|
+
|
|
952
|
+
### Added
|
|
953
|
+
|
|
954
|
+
- **Async/Await Support**: Full dual-mode support for asynchronous operations
|
|
955
|
+
- Single `FortiOS` class now supports both sync and async modes via `mode` parameter
|
|
956
|
+
- All 750+ API methods work transparently in async mode with `await`
|
|
957
|
+
- All 288 `.exists()` helper methods are async-aware
|
|
958
|
+
- Async context manager support with `async with`
|
|
959
|
+
- Zero breaking changes - existing sync code continues to work
|
|
960
|
+
- Implementation:
|
|
961
|
+
- New `AsyncHTTPClient` class mirroring sync `HTTPClient` with async/await
|
|
962
|
+
- `mode="async"` parameter on `FortiOS.__init__()`
|
|
963
|
+
- Automatic coroutine detection using `inspect.iscoroutine()`
|
|
964
|
+
- Type hints with `@overload` decorators for IDE support
|
|
965
|
+
- Performance: Enables concurrent operations with `asyncio.gather()` for 3x+ speedup
|
|
966
|
+
- See [ASYNC_GUIDE.md](https://github.com/hermanwjacobsen/hfortix/blob/main/ASYNC_GUIDE.md) for complete documentation
|
|
967
|
+
|
|
968
|
+
- **Helper Methods**: Added `.exists()` helper method to 288 CMDB endpoints
|
|
969
|
+
- Provides safe existence checking without raising exceptions
|
|
970
|
+
- Returns `True` if object exists, `False` if not found
|
|
971
|
+
- Works transparently in both sync and async modes
|
|
972
|
+
- Available on all endpoints that support full CRUD operations
|
|
973
|
+
- Example (sync): `if fgt.api.cmdb.firewall.address.exists("test-host"): ...`
|
|
974
|
+
- Example (async): `if await fgt.api.cmdb.firewall.address.exists("test-host"): ...`
|
|
975
|
+
- See [docs/ENDPOINT_METHODS.md](https://github.com/hermanwjacobsen/hfortix/blob/main/docs/ENDPOINT_METHODS.md) for complete API reference
|
|
976
|
+
|
|
977
|
+
### Changed
|
|
978
|
+
|
|
979
|
+
- **Code Refactoring**: Eliminated code duplication in HTTP client implementation
|
|
980
|
+
- Created `BaseHTTPClient` base class with shared logic for sync and async clients
|
|
981
|
+
- `HTTPClient` and `AsyncHTTPClient` now inherit from `BaseHTTPClient`
|
|
982
|
+
- Removed 744 lines of duplicated code (35% reduction in HTTP client code)
|
|
983
|
+
- Zero duplication between sync and async implementations
|
|
984
|
+
- Improved maintainability: bug fixes now apply to both sync and async modes automatically
|
|
985
|
+
- Better consistency: retry logic, circuit breaker, and validation identical across modes
|
|
986
|
+
- Enhanced testability: shared logic tested once in base class
|
|
987
|
+
- Implementation:
|
|
988
|
+
- `BaseHTTPClient`: Parameter validation, URL building, retry logic, circuit breaker, statistics
|
|
989
|
+
- `HTTPClient`: Sync-specific HTTP operations (httpx.Client)
|
|
990
|
+
- `AsyncHTTPClient`: Async-specific HTTP operations (httpx.AsyncClient)
|
|
991
|
+
- Created `IHTTPClient` Protocol interface for extensibility
|
|
992
|
+
- Updated 863 endpoint files to use Protocol-based type hints
|
|
993
|
+
- Enables users to provide custom HTTP client implementations
|
|
994
|
+
|
|
995
|
+
### Fixed
|
|
996
|
+
|
|
997
|
+
- **Test Fixes**: Fixed certificate/local test helper methods to properly filter by source
|
|
998
|
+
- Updated `test_get_factory_helper()` and `test_get_user_helper()` to use correct filters
|
|
999
|
+
- Added `filter='source==factory'` and `filter='source==user'` parameters
|
|
1000
|
+
- All 9 certificate/local tests now pass correctly
|
|
1001
|
+
|
|
1002
|
+
### Documentation
|
|
1003
|
+
|
|
1004
|
+
- **Async Guide**: Created comprehensive [ASYNC_GUIDE.md](https://github.com/hermanwjacobsen/hfortix/blob/main/ASYNC_GUIDE.md) documentation
|
|
1005
|
+
- Complete async/await usage guide with examples
|
|
1006
|
+
- Common patterns: concurrent requests, bulk operations, error handling
|
|
1007
|
+
- Migration guide from sync to async
|
|
1008
|
+
- Performance comparisons and best practices
|
|
1009
|
+
- Advanced usage: rate limiting, timeouts, multiple FortiGates
|
|
1010
|
+
- Troubleshooting common async errors
|
|
1011
|
+
- **API Reference**: Created comprehensive [docs/ENDPOINT_METHODS.md](https://github.com/hermanwjacobsen/hfortix/blob/main/docs/ENDPOINT_METHODS.md) documentation
|
|
1012
|
+
- Complete listing of all 857 FortiOS API endpoints
|
|
1013
|
+
- Shows available methods (`.get()`, `.post()`, `.put()`, `.delete()`, `.exists()`) for each endpoint
|
|
1014
|
+
- Organized by API category (CMDB, LOG, MONITOR, SERVICE)
|
|
1015
|
+
- Quick navigation with anchor links to all subcategories
|
|
1016
|
+
- Coverage: 561 CMDB endpoints, 19 LOG endpoints, 274 MONITOR endpoints, 3 SERVICE endpoints
|
|
1017
|
+
- **Helper Methods**: Added `.exists()` helper method documentation in [docs/ENDPOINT_METHODS.md](https://github.com/hermanwjacobsen/hfortix/blob/main/docs/ENDPOINT_METHODS.md)
|
|
1018
|
+
- In-depth guide to the `.exists()` helper method
|
|
1019
|
+
- Practical usage examples for common scenarios (idempotent operations, safe deletion, batch processing)
|
|
1020
|
+
- Reference table of identifier types for all 288 endpoints with `.exists()`
|
|
1021
|
+
- Organized by category with example code snippets
|
|
1022
|
+
- **README Updates**: Improved documentation organization
|
|
1023
|
+
- Updated documentation links to use GitHub URLs for PyPI compatibility
|
|
1024
|
+
- Added [docs/ASYNC_GUIDE.md](https://github.com/hermanwjacobsen/hfortix/blob/main/docs/ASYNC_GUIDE.md) and [docs/ENDPOINT_METHODS.md](https://github.com/hermanwjacobsen/hfortix/blob/main/docs/ENDPOINT_METHODS.md) to main documentation section
|
|
1025
|
+
- Updated roadmap to mark async support as completed (v0.3.15)
|
|
1026
|
+
- Added async/await to features list
|
|
1027
|
+
- Improved discoverability for PyPI users
|
|
1028
|
+
- **QUICKSTART Updates**: Added async/await section
|
|
1029
|
+
- Quick example of async mode usage
|
|
1030
|
+
- Link to comprehensive ASYNC_GUIDE.md
|
|
1031
|
+
- Updated tips section to mention async for concurrent operations
|
|
1032
|
+
- **Project Cleanup**: Cleaned up root folder and updated documentation
|
|
1033
|
+
- Moved refactoring documentation to internal development workspace
|
|
1034
|
+
- Removed `update_endpoints.py` (one-time migration script)
|
|
1035
|
+
- Updated `CHANGELOG.md` with comprehensive refactoring details
|
|
1036
|
+
- Updated `README.md` to highlight refactored architecture
|
|
1037
|
+
|
|
1038
|
+
## [0.3.14] - 2025-12-19
|
|
1039
|
+
|
|
1040
|
+
### Fixed
|
|
1041
|
+
|
|
1042
|
+
- **Critical**: Fixed httpx dependency in requirements.txt (was incorrectly listing requests/urllib3)
|
|
1043
|
+
- Package now correctly declares httpx[http2]>=0.27.0 as dependency
|
|
1044
|
+
- Resolves installation issues where wrong HTTP library was installed
|
|
1045
|
+
- **Build**: Updated MANIFEST.in to reflect moved development docs
|
|
1046
|
+
- Commented out CONTRIBUTING.md and DEVELOPMENT.md (moved to development workspace)
|
|
1047
|
+
- Prevents build warnings about missing files
|
|
1048
|
+
- **Type Checking**: Fixed mypy configuration for Python 3.10+ syntax
|
|
1049
|
+
- Updated pyproject.toml: python_version = "3.10" (was "3.8")
|
|
1050
|
+
- Added httpx module ignore for missing type stubs
|
|
1051
|
+
- Fixes compatibility with modern union syntax (str | None)
|
|
1052
|
+
|
|
1053
|
+
### Added
|
|
1054
|
+
|
|
1055
|
+
- **PEP 561 Compliance**: Full type checker support for hfortix package
|
|
1056
|
+
- ✅ `py.typed` marker file included in package
|
|
1057
|
+
- ✅ All public APIs have complete type hints
|
|
1058
|
+
- ✅ mypy/pyright can now validate user code using hfortix
|
|
1059
|
+
- ✅ IDE autocomplete with full type information
|
|
1060
|
+
- Benefits: Catch type errors at development time, better developer experience
|
|
1061
|
+
- Example: Type checkers now understand `fgt.api.cmdb.firewall.address.get()` returns `dict[str, Any]`
|
|
1062
|
+
- **Public API**: Added `get_connection_stats()` method to FortiOS class
|
|
1063
|
+
- Monitor HTTP connection pool health and performance
|
|
1064
|
+
- Track retry statistics by reason and endpoint
|
|
1065
|
+
- Access circuit breaker state and failure counts
|
|
1066
|
+
- Example: `stats = fgt.get_connection_stats()`
|
|
1067
|
+
- **Exception Exports**: Exported all 16 exception classes from main hfortix package
|
|
1068
|
+
- Complete exception hierarchy now available: `from hfortix import CircuitBreakerOpenError, ...`
|
|
1069
|
+
- Added 10 new exception exports: ServiceUnavailableError, CircuitBreakerOpenError, TimeoutError, DuplicateEntryError, EntryInUseError, InvalidValueError, PermissionDeniedError
|
|
1070
|
+
- Exported helper functions: get_error_description(), raise_for_status()
|
|
1071
|
+
- Exported data structures: FORTIOS_ERROR_CODES, HTTP_STATUS_CODES
|
|
1072
|
+
|
|
1073
|
+
### Changed
|
|
1074
|
+
|
|
1075
|
+
- **Python Version Requirement**: Updated minimum Python version from 3.8 to 3.10
|
|
1076
|
+
- Code uses Python 3.10+ syntax (str | None union types)
|
|
1077
|
+
- Updated pyproject.toml: requires-python = ">=3.10"
|
|
1078
|
+
- Removed Python 3.8, 3.9 from classifiers
|
|
1079
|
+
- Added "Typing :: Typed" classifier for PEP 561 compliance
|
|
1080
|
+
- **Development Status**: Updated from Alpha (3) to Beta (4)
|
|
1081
|
+
- Package metadata now consistently declares Beta status
|
|
1082
|
+
- Updated in setup.py, pyproject.toml classifiers
|
|
1083
|
+
- Reflects maturity of codebase and API stability
|
|
1084
|
+
- **Documentation**: Updated API_COVERAGE.md to reflect 100% coverage achievement
|
|
1085
|
+
- Changed from "38/77 (49%)" to "77/77 (100%)"
|
|
1086
|
+
- Added celebration section for milestone achievement
|
|
1087
|
+
- Updated test coverage statistics (226 test files)
|
|
1088
|
+
- **Documentation**: Removed broken internal development references from README.md
|
|
1089
|
+
- Cleaned up references to development workspace content
|
|
1090
|
+
|
|
1091
|
+
### Notes
|
|
1092
|
+
|
|
1093
|
+
- Version synchronized across setup.py (0.3.14), pyproject.toml (0.3.14), and hfortix/FortiOS/__init__.py (0.3.14)
|
|
1094
|
+
- All changes are backward compatible
|
|
1095
|
+
- PEP 561 compliance makes hfortix a first-class typed Python package
|
|
1096
|
+
- This release prepares the package for broader beta testing
|
|
1097
|
+
|
|
1098
|
+
## [Unreleased]
|
|
1099
|
+
|
|
1100
|
+
### Added
|
|
1101
|
+
|
|
1102
|
+
- **🎉 100% API COVERAGE ACHIEVED** (December 2025) - **Complete FortiOS 7.6.5 implementation!**
|
|
1103
|
+
- **CMDB API**: All 37 documented categories (100% coverage)
|
|
1104
|
+
- **Refactored**: alertemail, antivirus, application, authentication, automation, casb, certificate, dlp, dnsfilter, emailfilter, firewall, icap, ips, log, monitoring, report, router, rule, system (19 categories)
|
|
1105
|
+
- Complete categories: diameter-filter, endpoint-control, ethernet-oam, extension-controller, file-filter, ftp-proxy, sctp-filter, switch-controller, user, videofilter, virtual-patch, voip, vpn, waf, web-proxy, webfilter, wireless-controller, ztna (18 categories)
|
|
1106
|
+
- Note: ssh-filter, telemetry-controller, wanopt, extender-controller not yet documented on FNDN
|
|
1107
|
+
- **Monitor API**: All 32 documented categories (100% coverage)
|
|
1108
|
+
- **Previously implemented**: azure, casb, endpoint-control, extender-controller, extension-controller, firewall (6 categories)
|
|
1109
|
+
- **Added in this session**: firmware, fortiguard, fortiview, geoip, ips, license, log, network, registration, router, sdwan, service, switch-controller, system, user, utm, videofilter, virtual-wan, vpn, vpn-certificate, wanopt, web-ui, webcache, webfilter, webproxy, wifi (26 categories)
|
|
1110
|
+
- **Log API**: 5 categories (100% coverage) - disk, fortianalyzer, memory, forticloud, search
|
|
1111
|
+
- **Service API**: 3 categories (100% coverage) - sniffer, security-rating, system
|
|
1112
|
+
- **Total**: 77 of 77 documented categories with 750+ API methods
|
|
1113
|
+
- **Generated via unified module generator** with automatic edge case handling
|
|
1114
|
+
- **Status**: All endpoints generated, ~50% tested with live FortiGate
|
|
1115
|
+
- **Quality**: All follow standardized dual-pattern interface with full type hints
|
|
1116
|
+
|
|
1117
|
+
- **Router CMDB Category** - Complete routing protocol configuration support (BETA)
|
|
1118
|
+
- Implemented all 26 router endpoints with full CRUD operations
|
|
1119
|
+
- Collection endpoints: static, static6, access-list, access-list6, prefix-list, prefix-list6, route-map, policy, policy6, aspath-list, community-list, extcommunity-list, key-chain, auth-path, multicast, multicast6, multicast-flow
|
|
1120
|
+
- Singleton endpoints: bgp, ospf, ospf6, rip, ripng, isis, bfd, bfd6, setting
|
|
1121
|
+
- Comprehensive test coverage: 22/26 endpoints tested (85%), 100% pass rate
|
|
1122
|
+
- **Note:** Singleton endpoints (BGP, OSPF, RIP, etc.) require GET→Modify→PUT pattern for nested objects
|
|
1123
|
+
|
|
1124
|
+
### Changed
|
|
1125
|
+
|
|
1126
|
+
- **🔄 MAJOR API REFACTORING** (December 2025) - **All 500+ endpoints refactored**
|
|
1127
|
+
- **Breaking Change**: Standardized method names across all endpoints
|
|
1128
|
+
- **Old API**: `create()`, `update()`, `delete()` - required manual `mkey` parameter handling
|
|
1129
|
+
- **New API**: `list()`, `get()`, `create()`, `update()`, `delete()` - RESTful and intuitive
|
|
1130
|
+
- **Dual-Pattern Interface**: All `create()` and `update()` methods now support:
|
|
1131
|
+
- Dictionary pattern: `create(data_dict={'name': 'x', 'subnet': '10.0.0.0/24'})`
|
|
1132
|
+
- Keyword pattern: `create(name='x', subnet='10.0.0.0/24')`
|
|
1133
|
+
- Mixed pattern: `create(data_dict=base_config, name='override')`
|
|
1134
|
+
- **Benefits**: Cleaner code, better IDE autocomplete, template-friendly, more Pythonic
|
|
1135
|
+
- **Migration**: Old code will break - update `create(data)` → `create(data_dict=data)`
|
|
1136
|
+
- **Scope**: All 37 CMDB categories + 32 Monitor categories refactored with unified generator
|
|
1137
|
+
- **Scope**: 200+ endpoints across 24 CMDB categories refactored
|
|
1138
|
+
- **Status**: ~85% complete, router endpoints verified with comprehensive tests
|
|
1139
|
+
|
|
1140
|
+
- **Repository Organization** (December 19, 2025)
|
|
1141
|
+
- Moved development tools (CONTRIBUTING.md, DEVELOPMENT.md) to development workspace
|
|
1142
|
+
- Cleaned up public documentation to focus on user-facing content
|
|
1143
|
+
- Simplified README.md contributing section
|
|
1144
|
+
- Updated all documentation cross-references
|
|
1145
|
+
|
|
1146
|
+
- **Module Naming Improvements** (December 19, 2025)
|
|
1147
|
+
- Fixed invalid Python identifiers: renamed `3g_modem` → `modem_3g`, `5g_modem` → `modem_5g`
|
|
1148
|
+
- Module classes: `Modem3g`, `Modem5g` with proper attribute access
|
|
1149
|
+
- Test files updated to match new naming convention
|
|
1150
|
+
- All modem tests now passing
|
|
1151
|
+
|
|
1152
|
+
- **Development Workflow** (December 19, 2025)
|
|
1153
|
+
- Created unified module generator handling all edge cases automatically
|
|
1154
|
+
- Auto-detects digit-prefixed names and sanitizes to valid Python identifiers
|
|
1155
|
+
- Auto-adds certificate helper methods for certificate endpoints
|
|
1156
|
+
- Generates nested resource classes for complex endpoints
|
|
1157
|
+
- Detects read-only endpoints and generates appropriate methods
|
|
1158
|
+
- Consolidated all generation tools into single location
|
|
1159
|
+
- All new modules follow standardized dual-pattern interface
|
|
1160
|
+
|
|
1161
|
+
- **Singleton Endpoint Pattern** - Important behavioral note for routing protocols
|
|
1162
|
+
- Routing protocol endpoints (BGP, OSPF, RIP, ISIS, etc.) work differently than other endpoints
|
|
1163
|
+
- Unlike firewall addresses or policies, you cannot add/remove individual neighbors or networks
|
|
1164
|
+
- Instead, you must retrieve the entire configuration, make changes, and send it back
|
|
1165
|
+
- This requires more code than typical CRUD operations (see README examples)
|
|
1166
|
+
- **Why?** FortiOS API design - routing configs are single objects with nested lists
|
|
1167
|
+
- **Future:** Helper methods like `add_neighbor()`, `remove_neighbor()` are planned to simplify this
|
|
1168
|
+
|
|
1169
|
+
## [0.3.13] - 2025-12-17
|
|
1170
|
+
|
|
1171
|
+
### Added
|
|
1172
|
+
|
|
1173
|
+
- **Custom User-Agent Header** - Identify applications in FortiGate logs
|
|
1174
|
+
- Configure via `user_agent` parameter in `FortiOS()` constructor
|
|
1175
|
+
- Default: `hfortix/{version}` if not specified
|
|
1176
|
+
- Useful for multi-team environments and troubleshooting
|
|
1177
|
+
- Shows up in FortiGate admin logs for better visibility
|
|
1178
|
+
- Example: `FortiOS(host='...', token='...', user_agent='BackupScript/2.1.0')`
|
|
1179
|
+
|
|
1180
|
+
- **New Exception Classes** - Better error handling and type safety
|
|
1181
|
+
- `ServiceUnavailableError` - HTTP 503 service unavailable
|
|
1182
|
+
- `CircuitBreakerOpenError` - Circuit breaker is open (replaces generic RuntimeError)
|
|
1183
|
+
- `TimeoutError` - Request timeout errors
|
|
1184
|
+
- More specific exceptions for better error handling
|
|
1185
|
+
|
|
1186
|
+
- **Configurable Circuit Breaker** - Customize circuit breaker behavior
|
|
1187
|
+
- `circuit_breaker_threshold` - Number of failures before opening (default: 5)
|
|
1188
|
+
- `circuit_breaker_timeout` - Seconds before transitioning to half-open (default: 60.0)
|
|
1189
|
+
- Configure per FortiGate size/environment
|
|
1190
|
+
- Example: `FortiOS(host='...', circuit_breaker_threshold=10, circuit_breaker_timeout=120.0)`
|
|
1191
|
+
|
|
1192
|
+
- **Configurable Connection Pool** - Tune connection limits
|
|
1193
|
+
- `max_connections` - Maximum connections in pool (default: 100)
|
|
1194
|
+
- `max_keepalive_connections` - Maximum keepalive connections (default: 20)
|
|
1195
|
+
- Adjust for small embedded FortiGates or large enterprise models
|
|
1196
|
+
- Example: `FortiOS(host='...', max_connections=50, max_keepalive_connections=10)`
|
|
1197
|
+
|
|
1198
|
+
- **Enhanced Retry Statistics** - More detailed metrics
|
|
1199
|
+
- `total_requests` - Total number of requests made
|
|
1200
|
+
- `successful_requests` - Number of successful requests
|
|
1201
|
+
- `failed_requests` - Number of failed requests
|
|
1202
|
+
- `last_retry_time` - Timestamp of last retry
|
|
1203
|
+
- `success_rate` - Percentage of successful requests (0-100)
|
|
1204
|
+
- Better visibility into client performance
|
|
1205
|
+
|
|
1206
|
+
- **Advanced Wildcard Matching** - fnmatch support for endpoint timeouts
|
|
1207
|
+
- Supports shell-style patterns: `monitor/*`, `*/status`, `monitor/*/interface`
|
|
1208
|
+
- More flexible than simple prefix matching
|
|
1209
|
+
- Exact match still takes priority over patterns
|
|
1210
|
+
|
|
1211
|
+
### Changed
|
|
1212
|
+
|
|
1213
|
+
- **Enhanced Parameter Sanitization** - Security improvement
|
|
1214
|
+
- Now sanitizes query parameters in addition to request data
|
|
1215
|
+
- Prevents leaking API keys, tokens, passwords in logs
|
|
1216
|
+
- Added more sensitive key patterns: `api_key`, `api-key`, `apikey`, `auth`, `authorization`
|
|
1217
|
+
- Improves security for production logging
|
|
1218
|
+
|
|
1219
|
+
- **Parameter Validation** - Fail fast with clear errors
|
|
1220
|
+
- Validates `max_retries` (must be >= 0, warns if > 100)
|
|
1221
|
+
- Validates `connect_timeout` and `read_timeout` (must be > 0)
|
|
1222
|
+
- Validates `circuit_breaker_threshold` (must be > 0)
|
|
1223
|
+
- Validates `max_connections` and `max_keepalive_connections` (must be > 0)
|
|
1224
|
+
- Validates `host` parameter is required (no longer accepts None)
|
|
1225
|
+
- Better error messages for invalid configurations
|
|
1226
|
+
|
|
1227
|
+
- **Code Quality Improvements**
|
|
1228
|
+
- Reduced code duplication with `_normalize_path()` helper method
|
|
1229
|
+
- Improved type hints for `__exit__()` method
|
|
1230
|
+
- Enhanced docstrings with examples
|
|
1231
|
+
- Better logging consistency
|
|
1232
|
+
|
|
1233
|
+
### Fixed
|
|
1234
|
+
|
|
1235
|
+
- **Integer ID Path Encoding** - Fixed URL encoding for numeric IDs
|
|
1236
|
+
- `dos_policy.get()`, `dos_policy.update()`, `dos_policy.delete()` - Convert policyid to string before encoding
|
|
1237
|
+
- `dos_policy6.get()`, `dos_policy6.update()`, `dos_policy6.delete()` - Convert policyid to string before encoding
|
|
1238
|
+
- `ipmacbinding.table.get()`, `ipmacbinding.table.update()`, `ipmacbinding.table.delete()` - Convert seq_num to string before encoding
|
|
1239
|
+
- Resolves `TypeError: quote_from_bytes() expected bytes` when using numeric IDs
|
|
1240
|
+
- All numeric identifiers are now properly converted to strings for URL path encoding
|
|
1241
|
+
|
|
1242
|
+
- **Type Safety** - Fixed type checking errors
|
|
1243
|
+
- `host` parameter properly validated (no longer Optional in practice)
|
|
1244
|
+
- Better type hints for exception handling
|
|
1245
|
+
- Cleaner type checking for HTTPClient initialization
|
|
1246
|
+
|
|
1247
|
+
### Technical Details
|
|
1248
|
+
|
|
1249
|
+
- **100% backwards compatible** - all existing code works unchanged
|
|
1250
|
+
- Test coverage: 28 tests (all passing)
|
|
1251
|
+
- Zero breaking changes - all improvements are additive or internal
|
|
1252
|
+
|
|
1253
|
+
## [0.3.13] - 2025-12-17 (if releasing the v0.3.13 from earlier)
|
|
1254
|
+
|
|
1255
|
+
### Added
|
|
1256
|
+
|
|
1257
|
+
- **Request ID / Correlation Tracking** - Track requests across logs for better debugging
|
|
1258
|
+
- Auto-generates short 8-character UUID if not provided
|
|
1259
|
+
- Support for custom correlation IDs via `request_id` parameter
|
|
1260
|
+
- Request ID appears in all log entries for full traceability
|
|
1261
|
+
- Enables distributed tracing across multiple systems
|
|
1262
|
+
|
|
1263
|
+
- **Connection Pool Metrics** - Monitor HTTP client health and performance
|
|
1264
|
+
- `get_connection_stats()` method returns pool health metrics
|
|
1265
|
+
- Track: HTTP/2 status, max connections, circuit breaker state, failures
|
|
1266
|
+
- Enable proactive monitoring and alerting
|
|
1267
|
+
- Zero performance overhead
|
|
1268
|
+
|
|
1269
|
+
- **Circuit Breaker Pattern** - Prevent cascading failures with automatic fail-fast
|
|
1270
|
+
- Opens after 5 consecutive failures (configurable)
|
|
1271
|
+
- Automatically enters half-open state after 60s timeout
|
|
1272
|
+
- Manual reset via `reset_circuit_breaker()` method
|
|
1273
|
+
- Clear error messages with time-until-retry
|
|
1274
|
+
- Protects downstream services from overload
|
|
1275
|
+
|
|
1276
|
+
- **Per-Endpoint Timeout Configuration** - Fine-grained timeout control
|
|
1277
|
+
- `configure_endpoint_timeout(pattern, timeout)` for custom timeouts
|
|
1278
|
+
- Supports wildcard patterns: `monitor/*`, `log/*/report`
|
|
1279
|
+
- Exact match takes priority over wildcard
|
|
1280
|
+
- Ideal for slow endpoints (reports, large policy lists)
|
|
1281
|
+
- Zero overhead if not configured
|
|
1282
|
+
|
|
1283
|
+
- **Structured Logging** - Machine-readable logs with extra fields
|
|
1284
|
+
- All log entries include: request_id, method, endpoint, status_code, duration, vdom
|
|
1285
|
+
- Compatible with JSON log formatters (Elasticsearch, Splunk, CloudWatch)
|
|
1286
|
+
- Enables log aggregation and analysis
|
|
1287
|
+
- Better troubleshooting with correlation
|
|
1288
|
+
- Same performance as string logging
|
|
1289
|
+
|
|
1290
|
+
### Technical Details
|
|
1291
|
+
|
|
1292
|
+
- All features are **100% backwards compatible** - no breaking changes
|
|
1293
|
+
- Comprehensive test coverage: 13 new tests in `test_advanced_features.py`
|
|
1294
|
+
- Total test suite: 24 tests (4 retry + 7 improvements + 13 advanced)
|
|
1295
|
+
- Performance: Minimal overhead (~0.001ms per request for circuit breaker)
|
|
1296
|
+
|
|
1297
|
+
## [0.3.12] - 2025-12-17
|
|
1298
|
+
|
|
1299
|
+
### Changed
|
|
1300
|
+
|
|
1301
|
+
- **BREAKING: Migrated from requests to httpx** - Complete HTTP client library migration
|
|
1302
|
+
- Replaced `requests` library with modern `httpx` library
|
|
1303
|
+
- **HTTP/2 Support Enabled** - Improved performance with connection multiplexing
|
|
1304
|
+
- More explicit timeout configuration using `httpx.Timeout` object
|
|
1305
|
+
- Connection pooling: 100 max connections, 20 keepalive connections
|
|
1306
|
+
- Updated exception handling:
|
|
1307
|
+
* `ConnectionError` → `httpx.ConnectError, httpx.NetworkError`
|
|
1308
|
+
* `Timeout` → `httpx.ReadTimeout, httpx.WriteTimeout, httpx.PoolTimeout, httpx.ConnectTimeout`
|
|
1309
|
+
* `requests.HTTPError` → `httpx.HTTPStatusError`
|
|
1310
|
+
- Response API changes: `response.ok` → `response.is_success`
|
|
1311
|
+
- Requires: `httpx[http2]>=0.27.0` (previously `requests>=2.31.0`)
|
|
1312
|
+
- **No API Changes**: All 644 endpoint methods work unchanged
|
|
1313
|
+
- Better foundation for future async support
|
|
1314
|
+
|
|
1315
|
+
### Added
|
|
1316
|
+
|
|
1317
|
+
- **Automatic Retry Logic** - HTTPClient now automatically retries failed requests with exponential backoff
|
|
1318
|
+
- Retries on transient failures: connection errors, timeouts, rate limits (429), server errors (500, 502, 503, 504)
|
|
1319
|
+
- Configurable via `max_retries` parameter (default: 3 attempts)
|
|
1320
|
+
- Exponential backoff: 1s, 2s, 4s, 8s (capped at 30s)
|
|
1321
|
+
- Respects `Retry-After` header for rate limit responses
|
|
1322
|
+
- Detailed retry logging at INFO level
|
|
1323
|
+
- Improves reliability in unstable network conditions
|
|
1324
|
+
|
|
1325
|
+
- **Context Manager Support** - HTTPClient can now be used with `with` statement
|
|
1326
|
+
- Automatically closes client on exit: `with HTTPClient(...) as client:`
|
|
1327
|
+
- Ensures proper resource cleanup
|
|
1328
|
+
- Implements `__enter__` and `__exit__` methods
|
|
1329
|
+
|
|
1330
|
+
- **Enhanced Documentation**
|
|
1331
|
+
- Query parameter encoding behavior documented in class docstring
|
|
1332
|
+
- Timeout configuration explained with detailed examples
|
|
1333
|
+
- Path encoding strategy documented (safe='/%' prevents double-encoding)
|
|
1334
|
+
- Binary error response handling documented
|
|
1335
|
+
|
|
1336
|
+
### Fixed
|
|
1337
|
+
|
|
1338
|
+
- **URL Normalization** - Base URL now has trailing slashes stripped during initialization
|
|
1339
|
+
- Prevents potential double-slash issues like `https://host//api/v2/...`
|
|
1340
|
+
- Ensures consistent URL construction across all requests
|
|
1341
|
+
|
|
1342
|
+
- **HTTP Client Path Normalization** - Fixed 404 errors when endpoint methods pass paths with leading slashes
|
|
1343
|
+
- HTTPClient now strips leading slashes from paths before URL construction
|
|
1344
|
+
- Prevents double-slash URLs (e.g., `/api/v2/monitor//firewall/acl`)
|
|
1345
|
+
- Backwards compatible: works with both `"firewall/acl"` and `"/firewall/acl"` path formats
|
|
1346
|
+
- Affects `request()` and `get_binary()` methods
|
|
1347
|
+
- Resolves `ResourceNotFoundError` for monitor endpoints like `firewall.acl.list()`
|
|
1348
|
+
|
|
1349
|
+
- **Path Encoding Implementation** - Paths are now properly URL-encoded
|
|
1350
|
+
- Special characters in paths are encoded (e.g., spaces → `%20`, `@` → `%40`)
|
|
1351
|
+
- Safe characters: `/` (path separator) and `%` (already-encoded marker)
|
|
1352
|
+
- Prevents double-encoding of pre-encoded components
|
|
1353
|
+
- Example: `"user@domain"` → `"user%40domain"`
|
|
1354
|
+
|
|
1355
|
+
- **Binary Response Error Handling** - Improved error handling for non-JSON responses
|
|
1356
|
+
- Added try/except around JSON parsing in `_handle_response_errors()`
|
|
1357
|
+
- Falls back to standard HTTP error for binary/HTML error pages
|
|
1358
|
+
- Logs response size for debugging
|
|
1359
|
+
- Handles proxy/firewall error pages gracefully
|
|
1360
|
+
|
|
1361
|
+
- **Rate Limit Handling** - HTTP 429 responses now properly handled with retry logic
|
|
1362
|
+
- Respects `Retry-After` header from server
|
|
1363
|
+
- Falls back to exponential backoff if header not present
|
|
1364
|
+
- Prevents overwhelming servers during rate limiting
|
|
1365
|
+
|
|
1366
|
+
## [0.3.11] - 2025-12-17
|
|
1367
|
+
|
|
1368
|
+
### Added - December 17, 2025
|
|
1369
|
+
|
|
1370
|
+
- **FTP Proxy Category** - FTP proxy configuration (1 endpoint):
|
|
1371
|
+
- **explicit** - FTP proxy explicit configuration (GET, PUT)
|
|
1372
|
+
- Parameters: status, incoming_port, incoming_ip, outgoing_ip, sec_default_action, server_data_mode
|
|
1373
|
+
- SSL/TLS support: ssl, ssl_cert, ssl_dh_bits, ssl_algorithm
|
|
1374
|
+
- Singleton endpoint pattern (no POST/DELETE operations)
|
|
1375
|
+
- Test coverage: 5 test sections with comprehensive parameter validation
|
|
1376
|
+
|
|
1377
|
+
- **Monitor API Categories** - 6 categories implemented (18% coverage):
|
|
1378
|
+
- **azure/** - Azure application list monitoring (1 endpoint)
|
|
1379
|
+
- **casb/** - SaaS application statistics (1 endpoint)
|
|
1380
|
+
- **endpoint-control/** - FortiClient EMS monitoring (7 endpoints):
|
|
1381
|
+
- ems-status, ems-status-summary, installer, profile-xml
|
|
1382
|
+
- record-list, registration-password, summary
|
|
1383
|
+
- **extender-controller/** - FortiExtender status monitoring (1 endpoint)
|
|
1384
|
+
- **extension-controller/** - Extension controller status (2 endpoints):
|
|
1385
|
+
- extender, fortigate
|
|
1386
|
+
- **firewall/** - Firewall monitoring (39 endpoints):
|
|
1387
|
+
- Policy statistics (policy, policy6, proxy-policy, security-policy, etc.)
|
|
1388
|
+
- Session monitoring with 20+ filter parameters
|
|
1389
|
+
- ACL counters (acl, acl6) with clear operations
|
|
1390
|
+
- Address objects (address, address6, address-dynamic, address-fqdn)
|
|
1391
|
+
- Traffic shapers (per-ip-shaper, shaper, multi-class-shaper)
|
|
1392
|
+
- Special endpoints (policy-lookup callable, clearpass-address actions)
|
|
1393
|
+
- GTP statistics, health monitoring, load balancing
|
|
1394
|
+
- Internet service matching and reputation
|
|
1395
|
+
- VIP overlap detection, UUID objects
|
|
1396
|
+
- Test coverage: 39 firewall tests with 100% pass rate
|
|
1397
|
+
- All endpoints support explicit parameters (no **kwargs)
|
|
1398
|
+
|
|
1399
|
+
- **Log Configuration Category** - Complete logging configuration (56 endpoints):
|
|
1400
|
+
- Nested object pattern: `fgt.api.cmdb.log.disk.filter.get()`
|
|
1401
|
+
- **disk/** - Disk logging (filter, setting)
|
|
1402
|
+
- **memory/** - Memory logging (filter, global-setting, setting)
|
|
1403
|
+
- **fortianalyzer-cloud/** - FortiAnalyzer Cloud (4 endpoints)
|
|
1404
|
+
- **fortianalyzer/** - FortiAnalyzer 1/2/3 servers (12 endpoints total)
|
|
1405
|
+
- **fortiguard/** - FortiGuard logging (4 endpoints)
|
|
1406
|
+
- **null-device/** - Null device logging (filter, setting)
|
|
1407
|
+
- **syslogd/** - Syslog servers 1/2/3/4 (16 endpoints total)
|
|
1408
|
+
- **tacacs+accounting/** - TACACS+ accounting 1/2/3 (6 endpoints total)
|
|
1409
|
+
- **webtrends/** - WebTrends logging (filter, setting)
|
|
1410
|
+
- **Singleton endpoints** - custom-field (CRUD), eventfilter, gui-display, setting, threat-weight
|
|
1411
|
+
- Test coverage: 12 test files, 47 test cases (100% pass rate)
|
|
1412
|
+
|
|
1413
|
+
- **ICAP Category** - Internet Content Adaptation Protocol (3 endpoints):
|
|
1414
|
+
- **profile** - ICAP profiles (30+ parameters)
|
|
1415
|
+
- **server** - ICAP server configuration with SSL/TLS support
|
|
1416
|
+
- **server-group** - ICAP server groups for load balancing
|
|
1417
|
+
|
|
1418
|
+
- **IPS Category** - Intrusion Prevention System (8 endpoints):
|
|
1419
|
+
- **custom** - Custom IPS signatures (CRUD)
|
|
1420
|
+
- **decoder** - Protocol decoders (CRUD)
|
|
1421
|
+
- **global** - Global IPS settings (singleton)
|
|
1422
|
+
- **rule** - IPS rules (CRUD)
|
|
1423
|
+
- **rule-settings** - IPS rule settings (CRUD)
|
|
1424
|
+
- **sensor** - IPS sensors/profiles (CRUD)
|
|
1425
|
+
- **settings** - VDOM IPS settings (singleton)
|
|
1426
|
+
- **view-map** - IPS view-map configuration (CRUD)
|
|
1427
|
+
|
|
1428
|
+
- **Monitoring Category** - System monitoring configuration (1 endpoint):
|
|
1429
|
+
- **npu-hpe** - NPU-HPE performance monitoring (3 parameters)
|
|
1430
|
+
|
|
1431
|
+
- **Report Category** - Report configuration (2 endpoints):
|
|
1432
|
+
- **layout** - Report layouts with CRUD (17 parameters)
|
|
1433
|
+
- **setting** - Report settings (5 parameters)
|
|
1434
|
+
|
|
1435
|
+
### Changed
|
|
1436
|
+
- **Module Creation Prompt** - Added nested object pattern documentation
|
|
1437
|
+
- Complete examples of intermediate classes
|
|
1438
|
+
- Property decorators with lazy loading
|
|
1439
|
+
- Usage patterns for nested vs flat endpoints
|
|
1440
|
+
|
|
1441
|
+
### Improved
|
|
1442
|
+
- **API Coverage** - Now at 48% overall (37 of 77 categories):
|
|
1443
|
+
- CMDB: 23 of 40 categories (57.5% - all beta)
|
|
1444
|
+
- Monitor: 6 of 33 categories (18% - all beta)
|
|
1445
|
+
- Log: 5 of 5 categories (100% - all beta)
|
|
1446
|
+
- Service: 3 of 3 categories (100% - all beta)
|
|
1447
|
+
- Total: 200+ endpoints, 250+ API methods
|
|
1448
|
+
- **Note:** All implementations remain in beta until v1.0.0
|
|
1449
|
+
|
|
1450
|
+
### Status
|
|
1451
|
+
- **Beta Release** - All implementations are in beta status:
|
|
1452
|
+
- Functional and tested with real FortiGate devices
|
|
1453
|
+
- May have incomplete parameter coverage or undiscovered edge cases
|
|
1454
|
+
- Production-ready status (v1.0.0) requires comprehensive unit test coverage
|
|
1455
|
+
|
|
1456
|
+
### Planned
|
|
1457
|
+
- Complete CMDB endpoint coverage (23 of 40 categories implemented)
|
|
1458
|
+
- Monitor endpoints implementation (6 of 33 categories)
|
|
1459
|
+
- Remaining Monitor categories: system, user, router, vpn, network, etc.
|
|
1460
|
+
- FortiManager module
|
|
1461
|
+
- FortiAnalyzer module
|
|
1462
|
+
- Async support
|
|
1463
|
+
- CLI tool
|
|
1464
|
+
- Version 1.0.0: Comprehensive unit tests and production-ready status
|
|
1465
|
+
|
|
1466
|
+
## [0.3.10] - 2025-12-16
|
|
1467
|
+
|
|
1468
|
+
### Added
|
|
1469
|
+
- **Configurable Timeouts** - HTTP timeout values are now customizable:
|
|
1470
|
+
- `connect_timeout`: Time to wait for connection establishment (default: 10.0 seconds)
|
|
1471
|
+
- `read_timeout`: Time to wait for response data (default: 300.0 seconds)
|
|
1472
|
+
- Configurable via `FortiOS()` constructor parameters
|
|
1473
|
+
- Useful for slow networks, international connections, or large operations
|
|
1474
|
+
- `max_retries`: Parameter added for future retry mechanism (default: 3)
|
|
1475
|
+
- **URL Encoding Helper** - Centralized URL encoding for special characters:
|
|
1476
|
+
- New `encode_path_component()` function in `http_client.py`
|
|
1477
|
+
- Automatically encodes special characters in object names: `/`, `@`, `:`, spaces, etc.
|
|
1478
|
+
- Applied to all 145 CMDB endpoint files (84 path variables encoded)
|
|
1479
|
+
- Prevents URL parsing errors when object names contain special characters
|
|
1480
|
+
|
|
1481
|
+
### Fixed
|
|
1482
|
+
- **URL Encoding for Special Characters** - Object names with special characters now work correctly:
|
|
1483
|
+
- Fixed issue where objects with `/` in names (e.g., `Test_NET_192.0.2.0/24`) caused 404 errors
|
|
1484
|
+
- Special characters are now properly encoded: `/` → `%2F`, `@` → `%40`, `:` → `%3A`, space → `%20`
|
|
1485
|
+
- Applies to all API operations: get, create, update, delete
|
|
1486
|
+
- Implemented as reusable helper function to avoid code duplication
|
|
1487
|
+
- Covers all path variables: `name`, `mkey`, `policyid`, `seq_num`, `member`
|
|
1488
|
+
|
|
1489
|
+
## [0.3.9] - 2025-12-16
|
|
1490
|
+
|
|
1491
|
+
### Added
|
|
1492
|
+
- **raw_json Parameter** (100% Coverage) - All API methods now support raw_json parameter:
|
|
1493
|
+
- Default behavior: Returns just the results data
|
|
1494
|
+
- With `raw_json=True`: Returns complete API response with status codes, metadata
|
|
1495
|
+
- Coverage: 45+ methods across all CMDB, Log, and Service endpoints
|
|
1496
|
+
- Enables access to `http_status`, `status`, `serial`, `version`, `build` fields
|
|
1497
|
+
|
|
1498
|
+
- **Logging System** (Complete) - Comprehensive logging framework:
|
|
1499
|
+
- Global control: `hfortix.set_log_level('DEBUG'|'INFO'|'WARNING'|'ERROR'|'OFF')`
|
|
1500
|
+
- Per-instance control: `FortiOS(debug='info')`
|
|
1501
|
+
- 5 log levels with automatic sensitive data sanitization
|
|
1502
|
+
- Hierarchical loggers (`hfortix.http`, `hfortix.client`)
|
|
1503
|
+
- Request/response logging with timing information
|
|
1504
|
+
- Replaced all print() statements with proper logging
|
|
1505
|
+
|
|
1506
|
+
### Changed
|
|
1507
|
+
- **Code Quality** - Applied comprehensive formatting and linting:
|
|
1508
|
+
- Black formatter applied to all 195 files (100% PEP 8 compliance)
|
|
1509
|
+
- isort applied to organize imports (86 files updated)
|
|
1510
|
+
- flake8 checks passed with max-complexity=10
|
|
1511
|
+
- All type hints verified
|
|
1512
|
+
- Removed all print() statements in production code (replaced with logging)
|
|
1513
|
+
|
|
1514
|
+
### Fixed
|
|
1515
|
+
- **Bug Fixes** - Fixed multiple undefined variable errors:
|
|
1516
|
+
- `antivirus/profile.py`: Fixed 2 instances of undefined 'data' variable (lines 265, 451)
|
|
1517
|
+
- `certificate` helpers: Added raw_json parameter to import_p12() and other helper methods
|
|
1518
|
+
- `DoS Policy`: Fixed interface_data variable bugs in dos_policy.py and dos_policy6.py
|
|
1519
|
+
- `firewall` access-proxy: Fixed raw_json parameter placement in 6 files
|
|
1520
|
+
- Multiple service/shaper/ssh files: Fixed data→payload_dict variable name consistency
|
|
1521
|
+
|
|
1522
|
+
- **Test Fixes** - Updated test files to use raw_json=True where needed:
|
|
1523
|
+
- Fixed 159 test files to properly check API responses
|
|
1524
|
+
- Updated payload structures in multiple test files
|
|
1525
|
+
- Fixed syntax errors in certificate and firewall tests
|
|
1526
|
+
|
|
1527
|
+
## [0.3.8] - 2025-12-16
|
|
1528
|
+
|
|
1529
|
+
### Added
|
|
1530
|
+
- **Dual-Pattern Interface** (100% Complete) - All 43 create/update methods now support:
|
|
1531
|
+
- Dictionary pattern: `create(data_dict={'name': 'x', 'param': 'y'})`
|
|
1532
|
+
- Keyword pattern: `create(name='x', param='y')`
|
|
1533
|
+
- Mixed pattern: `create(data_dict=base, name='override')`
|
|
1534
|
+
- Coverage: 38 CMDB endpoints + 5 Service methods
|
|
1535
|
+
|
|
1536
|
+
### Changed
|
|
1537
|
+
- **Documentation**: Updated all docs with dual-pattern examples
|
|
1538
|
+
- README.md, QUICKSTART.md with usage examples
|
|
1539
|
+
|
|
1540
|
+
### Fixed
|
|
1541
|
+
- `extension_controller`: Fixed fortigate_profile registration
|
|
1542
|
+
- `firewall.ssl_setting`: Added missing typing imports
|
|
1543
|
+
- `firewall.vendor_mac_summary`: Added get() method for singleton endpoint
|
|
1544
|
+
- Test fixes for alertemail and proxy_addrgrp
|
|
1545
|
+
|
|
1546
|
+
## [0.3.7] - 2025-12-16
|
|
1547
|
+
|
|
1548
|
+
### Improved
|
|
1549
|
+
- Packaging/layout cleanup to align with the canonical `hfortix/` package structure
|
|
1550
|
+
- Additional FortiOS v2 endpoint modules (log/service/cmdb expansions)
|
|
1551
|
+
|
|
1552
|
+
## [0.3.6] - 2025-12-15
|
|
1553
|
+
|
|
1554
|
+
### Improved - IDE Autocomplete Experience 🎯
|
|
1555
|
+
|
|
1556
|
+
**Note:** This is an alpha release with internal refactoring for better developer experience.
|
|
1557
|
+
|
|
1558
|
+
#### Hidden Internal Methods for Cleaner Autocomplete
|
|
1559
|
+
- **Generic CRUD methods renamed** - Methods moved to underscore prefix:
|
|
1560
|
+
- `cmdb.get()` → `cmdb._get()` (escape hatch for unmapped endpoints)
|
|
1561
|
+
- `cmdb.post()` → `cmdb._post()`
|
|
1562
|
+
- `cmdb.put()` → `cmdb._put()`
|
|
1563
|
+
- `cmdb.delete()` → `cmdb._delete()`
|
|
1564
|
+
- Similar changes for log, monitor, service modules
|
|
1565
|
+
- **Benefit:** IDE now shows only endpoint-specific methods (create, update, list, etc.)
|
|
1566
|
+
- **Migration:** If you use generic methods directly, add underscore prefix
|
|
1567
|
+
|
|
1568
|
+
#### Hidden Internal Client Attributes
|
|
1569
|
+
- **Client internals renamed** - FortiOS client implementation details:
|
|
1570
|
+
- `fgt.session` → `fgt._session`
|
|
1571
|
+
- `fgt.url` → `fgt._url`
|
|
1572
|
+
- `fgt.verify` → `fgt._verify`
|
|
1573
|
+
- **Public attributes unchanged:** `host`, `port`, `vdom`, `cmdb`, `monitor`, `log`, `service`
|
|
1574
|
+
- **Benefit:** Cleaner autocomplete showing only user-facing API
|
|
1575
|
+
|
|
1576
|
+
#### Hidden Lazy-Loaded Property Cache
|
|
1577
|
+
- **Firewall lazy loading internals** - Changed cache naming to double underscore
|
|
1578
|
+
- **Affects:** 11 firewall endpoints (dos_policy, address, addrgrp, access_proxy, etc.)
|
|
1579
|
+
- **Benefit:** IDE no longer shows internal cached attributes
|
|
1580
|
+
|
|
1581
|
+
### Added
|
|
1582
|
+
- **`__all__` exports** - Explicit control over public API in all modules
|
|
1583
|
+
- Better documentation and import suggestions
|
|
1584
|
+
|
|
1585
|
+
### Technical Details
|
|
1586
|
+
- 79+ endpoint files updated to use underscore methods internally
|
|
1587
|
+
- Follows Python naming conventions (single _ = internal, double __ = private)
|
|
1588
|
+
- All endpoint-specific methods work as before (no breaking changes)
|
|
1589
|
+
- All tests passing (8/8 for address, access_proxy)
|
|
1590
|
+
|
|
1591
|
+
## [0.3.5] - 2025-12-15
|
|
1592
|
+
|
|
1593
|
+
### Improved - IDE Autocomplete & Type Hints ✨
|
|
1594
|
+
|
|
1595
|
+
#### Developer Experience Enhancements
|
|
1596
|
+
- **Added PEP 561 support** - Created `FortiOS/py.typed` marker file for better IDE type checking
|
|
1597
|
+
- **Enhanced type hints** - Added explicit type annotations to all API helper classes
|
|
1598
|
+
- `self.cmdb: CMDB` - Full autocomplete for CMDB endpoints
|
|
1599
|
+
- `self.firewall: Firewall` - Full autocomplete for firewall endpoints
|
|
1600
|
+
- All 16 CMDB categories now have proper type hints
|
|
1601
|
+
- **Improved `__all__` exports** - Better module discovery and import suggestions
|
|
1602
|
+
- **Updated setup.py** - Added `package_data` for py.typed and "Typing :: Typed" classifier
|
|
1603
|
+
- **Fixed duplicate assignments** - Removed redundant initialization in CMDB `__init__.py`
|
|
1604
|
+
|
|
1605
|
+
#### Documentation Improvements
|
|
1606
|
+
- Added comprehensive docstrings explaining API helper class attributes
|
|
1607
|
+
- Clarified purpose of generic methods (advanced/fallback usage)
|
|
1608
|
+
- Better examples in class docstrings
|
|
1609
|
+
|
|
1610
|
+
### Technical Details
|
|
1611
|
+
- Type hints now work correctly in VS Code, PyCharm, and other PEP 561-compliant IDEs
|
|
1612
|
+
- Autocomplete shows all available endpoints when typing `fgt.api.cmdb.firewall.`
|
|
1613
|
+
- Method signatures display parameter types and return types
|
|
1614
|
+
- No breaking changes - fully backward compatible
|
|
1615
|
+
|
|
1616
|
+
## [0.3.4] - 2025-12-15
|
|
1617
|
+
|
|
1618
|
+
### Documentation - Unified Import Syntax 📚
|
|
1619
|
+
|
|
1620
|
+
#### Updated All Documentation
|
|
1621
|
+
- **README.md** - Changed all examples to use `from hfortix import FortiOS`
|
|
1622
|
+
- **QUICKSTART.md** - Updated import patterns and all code examples
|
|
1623
|
+
- **Added PyPI badges** - Version, Python 3.8+, MIT license
|
|
1624
|
+
- **Status updates** - FortiOS "✅ Active", FortiManager/FortiAnalyzer "⏸️ Planned"
|
|
1625
|
+
|
|
1626
|
+
### Technical Details
|
|
1627
|
+
- All documentation now reflects the unified package import structure
|
|
1628
|
+
- Installation instructions prioritize PyPI method
|
|
1629
|
+
- 190 insertions, 78 deletions across documentation files
|
|
1630
|
+
|
|
1631
|
+
## [0.3.3] - 2025-12-15
|
|
1632
|
+
|
|
1633
|
+
### Added - Unified Package Import Structure 📦
|
|
1634
|
+
|
|
1635
|
+
#### Package Restructuring
|
|
1636
|
+
- **Created `hfortix.py`** - Main module for unified imports
|
|
1637
|
+
- **Enable `from hfortix import FortiOS`** - Clean import syntax
|
|
1638
|
+
- **Backward compatible** - Old imports still work
|
|
1639
|
+
- **Updated `__init__.py`** - Changed from relative to absolute imports
|
|
1640
|
+
|
|
1641
|
+
### Technical Details
|
|
1642
|
+
- Added `py_modules=['hfortix', 'exceptions', 'exceptions_forti']` to setup.py
|
|
1643
|
+
- Package now supports both import styles:
|
|
1644
|
+
- Recommended: `from hfortix import FortiOS`
|
|
1645
|
+
- Also works: `from FortiOS import FortiOS`
|
|
1646
|
+
|
|
1647
|
+
## [0.3.2] - 2025-12-15
|
|
1648
|
+
|
|
1649
|
+
### Fixed - Package Distribution 🔧
|
|
1650
|
+
|
|
1651
|
+
#### Resolved Import Errors
|
|
1652
|
+
- **Fixed ModuleNotFoundError** - Added root-level modules to package
|
|
1653
|
+
- **Updated setup.py** - Added `py_modules` configuration
|
|
1654
|
+
- **Included exceptions modules** - Both `exceptions.py` and `exceptions_forti.py` now in package
|
|
1655
|
+
|
|
1656
|
+
### Technical Details
|
|
1657
|
+
- Root-level Python modules now properly included in wheel and sdist
|
|
1658
|
+
- No code changes needed - pure packaging fix
|
|
1659
|
+
|
|
1660
|
+
## [0.3.1] - 2025-12-15
|
|
1661
|
+
|
|
1662
|
+
### Fixed - Import Error Handling 🛠️
|
|
1663
|
+
|
|
1664
|
+
#### Exception Module Imports
|
|
1665
|
+
- **Added fallback imports** - Better handling for missing exception modules
|
|
1666
|
+
- **Enhanced FortiOS/exceptions.py** - Try/except blocks for imports
|
|
1667
|
+
- **Fallback exceptions defined** - Basic exception classes if imports fail
|
|
1668
|
+
|
|
1669
|
+
### Technical Details
|
|
1670
|
+
- Partial fix for import issues (fully resolved in 0.3.2)
|
|
1671
|
+
|
|
1672
|
+
## [0.3.0] - 2025-12-14
|
|
1673
|
+
|
|
1674
|
+
### Added - Firewall Flat Endpoints + Sub-categories! 🎉
|
|
1675
|
+
|
|
1676
|
+
#### New Flat Firewall Endpoints (6 endpoints)
|
|
1677
|
+
Implemented DoS protection and access proxy endpoints with simplified API:
|
|
1678
|
+
|
|
1679
|
+
- **firewall/DoS-policy** - IPv4 DoS protection policies
|
|
1680
|
+
- Full CRUD operations with automatic type conversion
|
|
1681
|
+
- Comprehensive anomaly detection (18 types with default thresholds)
|
|
1682
|
+
- Simplified API: `interface='port3'` → `{'q_origin_key': 'port3'}`
|
|
1683
|
+
- Test coverage: 8/8 tests passing (100%)
|
|
1684
|
+
|
|
1685
|
+
- **firewall/DoS-policy6** - IPv6 DoS protection policies
|
|
1686
|
+
- Same features as DoS-policy for IPv6
|
|
1687
|
+
- Test coverage: 8/8 tests passing (100%)
|
|
1688
|
+
|
|
1689
|
+
- **firewall/access-proxy** - IPv4 reverse proxy/WAF
|
|
1690
|
+
- Full CRUD with 16+ configuration parameters
|
|
1691
|
+
- VIP integration (requires type="access-proxy")
|
|
1692
|
+
- Server pool multiplexing support
|
|
1693
|
+
- Test coverage: 8/8 tests passing (100%)
|
|
1694
|
+
|
|
1695
|
+
- **firewall/access-proxy6** - IPv6 reverse proxy/WAF
|
|
1696
|
+
- Same features as access-proxy for IPv6
|
|
1697
|
+
- Test coverage: 8/8 tests passing (100%)
|
|
1698
|
+
|
|
1699
|
+
- **firewall/access-proxy-ssh-client-cert** - SSH client certificates
|
|
1700
|
+
- Certificate-based SSH authentication
|
|
1701
|
+
- Permit controls (agent forwarding, port forwarding, PTY, X11, user RC)
|
|
1702
|
+
- Test coverage: 8/8 tests passing (100%)
|
|
1703
|
+
|
|
1704
|
+
- **firewall/access-proxy-virtual-host** - Virtual host configuration
|
|
1705
|
+
- Domain/wildcard/regex host matching
|
|
1706
|
+
- SSL certificate management with automatic list conversion
|
|
1707
|
+
- Test coverage: 8/8 tests passing (100%)
|
|
1708
|
+
|
|
1709
|
+
**Total Test Coverage:** 48/48 tests (100% pass rate)
|
|
1710
|
+
|
|
1711
|
+
**Key Features:**
|
|
1712
|
+
- **Simplified API** - Automatic type conversion for better UX
|
|
1713
|
+
- String → dict: `'port3'` → `{'q_origin_key': 'port3'}`
|
|
1714
|
+
- String list → dict list: `['HTTP']` → `[{'name': 'HTTP'}]`
|
|
1715
|
+
- Certificate string → list: `'cert'` → `[{'name': 'cert'}]`
|
|
1716
|
+
- **Comprehensive Documentation** - Anomaly detection types with thresholds
|
|
1717
|
+
- **Prerequisites Documented** - VIP types, certificates, CAs
|
|
1718
|
+
- **Lazy Loading** - @property pattern for optimal performance
|
|
1719
|
+
|
|
1720
|
+
#### CMDB Category: Firewall Sub-categories (17 endpoints, 7 sub-categories)
|
|
1721
|
+
Implemented nested/hierarchical structure for firewall endpoints with lazy-loading pattern:
|
|
1722
|
+
|
|
1723
|
+
- **firewall.ipmacbinding** (2 endpoints)
|
|
1724
|
+
- `setting` - IP/MAC binding global settings
|
|
1725
|
+
- `table` - IP/MAC binding table entries
|
|
1726
|
+
|
|
1727
|
+
- **firewall.schedule** (3 endpoints)
|
|
1728
|
+
- `group` - Schedule groups
|
|
1729
|
+
- `onetime` - One-time schedules
|
|
1730
|
+
- `recurring` - Recurring schedules
|
|
1731
|
+
|
|
1732
|
+
- **firewall.service** (3 endpoints)
|
|
1733
|
+
- `category` - Service categories
|
|
1734
|
+
- `custom` - Custom service definitions
|
|
1735
|
+
- `group` - Service groups
|
|
1736
|
+
|
|
1737
|
+
- **firewall.shaper** (2 endpoints)
|
|
1738
|
+
- `per-ip-shaper` - Per-IP traffic shaping
|
|
1739
|
+
- `traffic-shaper` - Shared traffic shaping
|
|
1740
|
+
|
|
1741
|
+
- **firewall.ssh** (4 endpoints)
|
|
1742
|
+
- `host-key` - SSH proxy host public keys
|
|
1743
|
+
- `local-ca` - SSH proxy local CA
|
|
1744
|
+
- `local-key` - SSH proxy local keys (with PEM format support)
|
|
1745
|
+
- `setting` - SSH proxy settings
|
|
1746
|
+
|
|
1747
|
+
- **firewall.ssl** (1 endpoint)
|
|
1748
|
+
- `setting` - SSL proxy settings (timeout, DH bits, caching)
|
|
1749
|
+
|
|
1750
|
+
- **firewall.wildcard-fqdn** (2 endpoints)
|
|
1751
|
+
- `custom` - Wildcard FQDN addresses (e.g., *.example.com)
|
|
1752
|
+
- `group` - Wildcard FQDN groups
|
|
1753
|
+
|
|
1754
|
+
### Technical Improvements
|
|
1755
|
+
- ✅ Nested API structure: `fgt.api.cmdb.firewall.[subcategory].[endpoint]`
|
|
1756
|
+
- ✅ Lazy-loading with @property methods
|
|
1757
|
+
- ✅ Singleton pattern for settings endpoints (results as dict)
|
|
1758
|
+
- ✅ Collection pattern for list endpoints (results as list)
|
|
1759
|
+
- ✅ exists() methods with try/except for 404 handling
|
|
1760
|
+
- ✅ Real SSH key generation for testing (PEM format)
|
|
1761
|
+
- ✅ Member management for group endpoints
|
|
1762
|
+
- ✅ 138 comprehensive tests (100% pass rate)
|
|
1763
|
+
|
|
1764
|
+
### Documentation
|
|
1765
|
+
- ✅ Complete module creation guide (1,900+ lines)
|
|
1766
|
+
- ✅ Documentation generation prompt
|
|
1767
|
+
- ✅ Comprehensive docstrings with examples for all methods
|
|
1768
|
+
- ✅ Type hints on all parameters
|
|
1769
|
+
|
|
1770
|
+
## [0.2.0] - 2025-12-14
|
|
1771
|
+
|
|
1772
|
+
### Added - Major Expansion! 🎉
|
|
1773
|
+
|
|
1774
|
+
#### New CMDB Categories (7 categories, 30 endpoints)
|
|
1775
|
+
- **DLP (Data Loss Prevention)** - 8 endpoints
|
|
1776
|
+
- `data-type` - Predefined data type patterns
|
|
1777
|
+
- `dictionary` - Custom DLP dictionaries
|
|
1778
|
+
- `exact-data-match` - Fingerprinting for exact data matching
|
|
1779
|
+
- `filepattern` - File type and pattern matching
|
|
1780
|
+
- `label` - Classification labels
|
|
1781
|
+
- `profile` - DLP policy profiles
|
|
1782
|
+
- `sensor` - DLP sensor configuration
|
|
1783
|
+
- `settings` - Global DLP settings
|
|
1784
|
+
|
|
1785
|
+
- **DNS Filter** - 2 endpoints
|
|
1786
|
+
- `domain-filter` - Custom domain filtering lists
|
|
1787
|
+
- `profile` - DNS filtering profiles
|
|
1788
|
+
|
|
1789
|
+
- **Email Filter** - 8 endpoints
|
|
1790
|
+
- `block-allow-list` - Email sender block/allow lists
|
|
1791
|
+
- `bword` - Banned word filtering
|
|
1792
|
+
- `dnsbl` - DNS-based blacklist checking
|
|
1793
|
+
- `fortishield` - FortiShield spam filtering
|
|
1794
|
+
- `iptrust` - Trusted IP addresses
|
|
1795
|
+
- `mheader` - Email header filtering rules
|
|
1796
|
+
- `options` - Global email filter options
|
|
1797
|
+
- `profile` - Email filtering profiles
|
|
1798
|
+
|
|
1799
|
+
- **Endpoint Control** - 3 endpoints
|
|
1800
|
+
- `fctems` - FortiClient EMS integration
|
|
1801
|
+
- `fctems-override` - EMS override configurations
|
|
1802
|
+
- `settings` - Endpoint control settings
|
|
1803
|
+
|
|
1804
|
+
- **Ethernet OAM** - 1 endpoint
|
|
1805
|
+
- `cfm` - Connectivity Fault Management (requires physical hardware)
|
|
1806
|
+
|
|
1807
|
+
- **Extension Controller** - 6 endpoints
|
|
1808
|
+
- `dataplan` - FortiExtender data plan configuration
|
|
1809
|
+
- `extender` - FortiExtender controller settings
|
|
1810
|
+
- `extender-profile` - FortiExtender profiles
|
|
1811
|
+
- `extender-vap` - FortiExtender WiFi VAP
|
|
1812
|
+
- `fortigate` - FortiGate controller configuration
|
|
1813
|
+
- `fortigate-profile` - FortiGate connector profiles
|
|
1814
|
+
|
|
1815
|
+
- **File Filter** - 1 endpoint
|
|
1816
|
+
- `profile` - File content filtering profiles
|
|
1817
|
+
|
|
1818
|
+
### Changed
|
|
1819
|
+
- **License**: Changed from MIT to Proprietary License with free use
|
|
1820
|
+
- Free for personal, educational, and business use
|
|
1821
|
+
- Companies can use for internal operations and client services
|
|
1822
|
+
- Tech support and MSPs can use in their service offerings
|
|
1823
|
+
- **Cannot sell the software itself as a standalone product**
|
|
1824
|
+
- Simple rule: Use it freely for your work, just don't sell the software
|
|
1825
|
+
|
|
1826
|
+
### Improved
|
|
1827
|
+
- **CMDB Coverage**: 21 → 51 endpoints (+143% growth!)
|
|
1828
|
+
- **CMDB Categories**: 7 → 14 categories (+100% growth!)
|
|
1829
|
+
- All modules follow consistent patterns:
|
|
1830
|
+
- `from __future__ import annotations` for modern type hints
|
|
1831
|
+
- Comprehensive docstrings with examples
|
|
1832
|
+
- Snake_case to hyphen-case parameter conversion
|
|
1833
|
+
- Full CRUD operations where applicable
|
|
1834
|
+
- **kwargs for flexibility
|
|
1835
|
+
|
|
1836
|
+
### Fixed
|
|
1837
|
+
- Directory naming issues (hyphens → underscores for Python imports)
|
|
1838
|
+
- Graceful error handling for hardware-dependent features
|
|
1839
|
+
- Improved test patterns for pre-allocated resource slots
|
|
1840
|
+
- Better handling of list/dict API responses
|
|
1841
|
+
|
|
1842
|
+
### Documentation
|
|
1843
|
+
- Updated PROJECT_STATUS.md with all new modules
|
|
1844
|
+
- Updated README with current statistics
|
|
1845
|
+
- Updated CHANGELOG with detailed release notes
|
|
1846
|
+
- All modules include comprehensive test files
|
|
1847
|
+
|
|
1848
|
+
## [0.1.0] - 2025-12-13
|
|
1849
|
+
|
|
1850
|
+
### Added
|
|
1851
|
+
- Initial release of Fortinet Python SDK
|
|
1852
|
+
- Modular package architecture supporting FortiOS, FortiManager, FortiAnalyzer
|
|
1853
|
+
- FortiOS client with token-based authentication
|
|
1854
|
+
- Comprehensive exception handling system (387 FortiOS error codes)
|
|
1855
|
+
- CMDB endpoints (Beta - partial coverage):
|
|
1856
|
+
- `alertemail` - Email alert settings
|
|
1857
|
+
- `antivirus` - Antivirus profiles and settings
|
|
1858
|
+
- `application` - Application control (custom, list, group, name)
|
|
1859
|
+
- `authentication` - Authentication rules, schemes, and settings
|
|
1860
|
+
- `automation` - Automation settings
|
|
1861
|
+
- `casb` - CASB (Cloud Access Security Broker) profiles
|
|
1862
|
+
- `certificate` - Certificate management (CA, CRL, local, remote, HSM)
|
|
1863
|
+
- `diameter_filter` - Diameter filter profiles
|
|
1864
|
+
- Service endpoints (Beta):
|
|
1865
|
+
- `sniffer` - Packet capture and analysis
|
|
1866
|
+
- `security_rating` - Security Fabric rating
|
|
1867
|
+
- `system` - System information and operations
|
|
1868
|
+
- Log endpoints (Beta):
|
|
1869
|
+
- `disk` - Disk-based logging
|
|
1870
|
+
- `fortianalyzer` - FortiAnalyzer logging
|
|
1871
|
+
- `forticloud` - FortiCloud logging
|
|
1872
|
+
- `memory` - Memory-based logging
|
|
1873
|
+
- `search` - Log search functionality
|
|
1874
|
+
- Base exception classes for all Fortinet products
|
|
1875
|
+
- FortiOS-specific exception classes with detailed error code mapping
|
|
1876
|
+
- Support for both full package and standalone module installation
|
|
1877
|
+
- Module availability detection (`get_available_modules()`)
|
|
1878
|
+
- Version information (`get_version()`)
|
|
1879
|
+
|
|
1880
|
+
### Documentation
|
|
1881
|
+
- Comprehensive README with installation and usage examples
|
|
1882
|
+
- QUICKSTART guide for rapid onboarding
|
|
1883
|
+
- Exception hierarchy documentation
|
|
1884
|
+
- API structure overview
|
|
1885
|
+
- Common usage patterns and examples
|
|
1886
|
+
|
|
1887
|
+
### Infrastructure
|
|
1888
|
+
- Package distribution setup (setup.py, MANIFEST.in)
|
|
1889
|
+
- Requirements management (requirements.txt)
|
|
1890
|
+
- Git ignore configuration
|
|
1891
|
+
- MIT License
|
|
1892
|
+
|
|
1893
|
+
## [0.0.1] - 2025-11-XX
|
|
1894
|
+
|
|
1895
|
+
### Added
|
|
1896
|
+
- Initial project structure
|
|
1897
|
+
- Basic FortiOS client implementation
|
|
1898
|
+
- Core exception handling
|
|
1899
|
+
|
|
1900
|
+
---
|
|
1901
|
+
|
|
1902
|
+
## Version Numbering
|
|
1903
|
+
|
|
1904
|
+
- **Major version (X.0.0)**: Incompatible API changes
|
|
1905
|
+
- **Minor version (0.X.0)**: New features, backward compatible
|
|
1906
|
+
- **Patch version (0.0.X)**: Bug fixes, backward compatible
|
|
1907
|
+
|
|
1908
|
+
## Categories
|
|
1909
|
+
|
|
1910
|
+
- **Added**: New features
|
|
1911
|
+
- **Changed**: Changes in existing functionality
|
|
1912
|
+
- **Deprecated**: Soon-to-be removed features
|
|
1913
|
+
- **Removed**: Removed features
|
|
1914
|
+
- **Fixed**: Bug fixes
|
|
1915
|
+
- **Security**: Security fixes
|