Bugzilla will be upgraded to version 5.0. The upgrade date is tentatively scheduled for 2 December 2018, pending final testing and feedback.
Bug 1439907 - Setting booleans causes duplicate ports in semanage listings
Setting booleans causes duplicate ports in semanage listings
Status: CLOSED ERRATA
Product: Red Hat Enterprise Linux 7
Classification: Red Hat
Component: libsemanage (Show other bugs)
7.4
All Linux
medium Severity medium
: rc
: ---
Assigned To: Petr Lautrbach
Milos Malik
:
: 1336343 (view as bug list)
Depends On:
Blocks:
  Show dependency treegraph
 
Reported: 2017-04-06 15:46 EDT by Milos Malik
Modified: 2018-04-10 12:32 EDT (History)
8 users (show)

See Also:
Fixed In Version: libsemanage-2.5-8.el7
Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: 1439875
Environment:
Last Closed: 2018-04-10 12:31:59 EDT
Type: Bug
Regression: ---
Mount Type: ---
Documentation: ---
CRM:
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---


Attachments (Terms of Use)


External Trackers
Tracker ID Priority Status Summary Last Updated
Red Hat Product Errata RHBA-2018:0905 None None None 2018-04-10 12:32 EDT

  None (edit)
Description Milos Malik 2017-04-06 15:46:50 EDT
+++ This bug was initially created as a clone of Bug #1439875 +++

Description of problem:

I've noticed a strange interaction with custom ports and booleans. After setting a boolean, the list of ports for a particular type (which has been customized) shows duplicate entries.

Example:

  $ semanage port -a -t http_port_t -p tcp 12345
  $ semanage port -l | grep http_port_t
  http_port_t                    tcp      12345, 80, 81, ...
  $ setsebool -P zebra_write_config false
  $ semanage port -l | grep http_port_t
  http_port_t                    tcp      12345, 12345, 80, 81, ...
  $ setsebool -P zebra_write_config false
  $ semanage port -l | grep http_port_t
  http_port_t                    tcp      12345, 12345, 12345, 80, 81, ...

As can be seen, each time a boolean is set persistently (it doesn't matter which boolean or which state), the custom port 12345 is duplicated. Running "semodule -B" clears the duplicates.

However, if only the local customizations are listed, the port is always listed only once:

  $ semanage port -l -C
  SELinux Port Type              Proto    Port Number
  http_port_t                    tcp      12345

Version-Release number of selected component (if applicable):
libselinux-ruby-2.5-11.el7.x86_64
libselinux-devel-2.5-11.el7.x86_64
libselinux-2.5-11.el7.x86_64
libselinux-python-2.5-11.el7.x86_64
libselinux-utils-2.5-11.el7.x86_64

How reproducible:
Always

I've submitted this upstream here: https://github.com/SELinuxProject/selinux/issues/50
Comment 1 Petr Lautrbach 2017-04-11 04:04:44 EDT
A fix for this issue is available at upstream mailing list - https://marc.info/?l=selinux&m=149183707331194&w=2
Comment 2 Lukas Vrabec 2017-08-17 04:05:40 EDT
*** Bug 1336343 has been marked as a duplicate of this bug. ***
Comment 7 errata-xmlrpc 2018-04-10 12:31:59 EDT
Since the problem described in this bug report should be
resolved in a recent advisory, it has been closed with a
resolution of ERRATA.

For information on the advisory, and where to find the updated
files, follow the link below.

If the solution does not work for you, open a new bug report.

https://access.redhat.com/errata/RHBA-2018:0905

Note You need to log in before you can comment on or make changes to this bug.