This bug was fixed in the package ufw - 0.36.2-1 --------------- ufw (0.36.2-1) unstable; urgency=medium
* New upstream release (LP: #1946804, LP: #1927737, LP: #1927734, LP: #2015645, LP: #1996636, LP: #1965462, LP: #1951018, Closes: 1034568, Closes: 1034119). Drop the following (included upstream): - 0002-fix-copyright.patch - 0003-python3-versions.patch - 0004-set-default-policy-after-load.patch * Remaining changes: - 0001-optimize-boot.patch * add new debian/po/ro.po. Thanks Remus-Gabriel Chelu (Closes: 1033758) * debian/control: - Breaks with iptables-persistent and netfilter-persistent. When ufw is installed, it is not enabled by default, so it doesn't interfere with other firewall software (until it is enabled). In contrast, iptables-persistent and netfilter-persistent install enabled, which interferes with ufw. Add a breaks on these to avoid them being co-installed with ufw (and causing problems for users). - use Python-Version instead of XB-Python-Version - remove Depends on obsolete lsb-base * ufw.lintian-overrides: - update for breaks-without-version iptables-persistent and netfilter-persistent - update for newer lintian -- Jamie Strandboge <jdstr...@ubuntu.com> Thu, 18 May 2023 14:03:07 +0000 ** Changed in: ufw (Ubuntu) Status: Triaged => Fix Released -- You received this bug notification because you are a member of Ubuntu Touch seeded packages, which is subscribed to ufw in Ubuntu. https://bugs.launchpad.net/bugs/1951018 Title: No ability to discern IPv4 vs IPv6 rules through Python Status in ufw: Fix Released Status in ufw package in Ubuntu: Fix Released Bug description: Version: ufw 0.36 Ubuntu Version: 20.04.3 LTS There doesn't appear to be a Python method for accessing IPv4 and IPv6 rules in a distinguishable manner. In the source code (root/src/backend.py) there is an object that stores IPv4 and IPv6 rules in separate lists. Those lists are then accessed with the following method: def get_rules(self): '''Return list of all rules''' return self.rules + self.rules6 The issue with this is that the returned list doesn't contain an indication of what IP version each item corresponds to and would display something like the following. 1 allow 22/tcp 2 allow 80 3 allow 443 4 allow 22/tcp 5 allow 80 6 allow 443 I don't currently see a way to distinguish between IPv4 and IPv6 rules other than accessing the lists in the backend object directly (but I don't think this is best practice). E.g.: rules_ipv4 = backend.rules rules_ipv6 = backend.rules6 One possible fix would be to add functions that return only the IPv4 or IPv6 rules. E.g.: def get_rules_ipv4(self): '''Return list of all ipv4 rules''' return self.rules def get_rules_ipv6(self): '''Return list of all ipv6 rules''' return self.rules6 To manage notifications about this bug go to: https://bugs.launchpad.net/ufw/+bug/1951018/+subscriptions -- Mailing list: https://launchpad.net/~touch-packages Post to : touch-packages@lists.launchpad.net Unsubscribe : https://launchpad.net/~touch-packages More help : https://help.launchpad.net/ListHelp