diff --git a/changelogs/fragments/170_pfsense_interface_fix_remove_all_separators.yml b/changelogs/fragments/170_pfsense_interface_fix_remove_all_separators.yml new file mode 100644 index 00000000..a016d88e --- /dev/null +++ b/changelogs/fragments/170_pfsense_interface_fix_remove_all_separators.yml @@ -0,0 +1,2 @@ +bugfixes: + - "pfsense_interface - fixes removal of an interface with `state: absent`. _remove_all_separators() works when no separator exists for that interface. (https://github.com/pfsensible/core/issues/170)" diff --git a/plugins/module_utils/interface.py b/plugins/module_utils/interface.py index 3d9936c9..52f97643 100644 --- a/plugins/module_utils/interface.py +++ b/plugins/module_utils/interface.py @@ -383,7 +383,7 @@ def _remove_all_rules(self, interface): def _remove_all_separators(self, interface): """ delete all interface separators """ todel = [] - separators = self.pfsense.rules.find('separator') + separators = self.pfsense.rules.find('separator') or [] for interface_elt in separators: if interface_elt.tag != interface: continue