Stack Exchange
CentOS 7.4 audit2allow return plural forms expression could be dangerous
Returning to the same issue.
I am receiving some error in python when adding semanage rules:
# semanage port -a -t http_port_t -p tcp 29200
Traceback (most recent call last):
  File "/sbin/semanage", line 32, in <module>
    import seobject
  File "/usr/lib64/python2.7/site-packages/seobject/__init__.py", line 36, in <module>
    import sepolicy
  File "/usr/lib64/python2.7/site-packages/sepolicy/__init__.py", line 21, in <module>
    codeset='utf-8')
  File "/usr/lib64/python2.7/gettext.py", line 495, in install
    t = translation(domain, localedir, fallback=True, codeset=codeset)
  File "/usr/lib64/python2.7/gettext.py", line 480, in translation
    t = _translations.setdefault(key, class_(fp))
  File "/usr/lib64/python2.7/gettext.py", line 180, in __init__
    self._parse(fp)
  File "/usr/lib64/python2.7/gettext.py", line 317, in _parse
    self.plural = c2py(plural)
  File "/usr/lib64/python2.7/gettext.py", line 93, in c2py
    raise ValueError, 'plural forms expression could be dangerous'
ValueError: plural forms expression could be dangerous

After some readings I have found some topics, that stats, that adding swap would help. I have added 700MB,nope, no help, then added 4GiB, but still, no help.
I see nothing special in /var/log/messages or dmesg...
# free -t -m
              total        used        free      shared  buff/cache   available
Mem:          23948         250       23343          16         355       23355
Swap:          4095           0        4095
Total:        28044         250       27439
# lsb_release -a
LSB Version:    :core-4.1-amd64:core-4.1-noarch
Distributor ID: CentOS
Description:    CentOS Linux release 7.4.1708 (Core) 
Release:        7.4.1708
Codename:       Core
# uname -a
Linux hostname 3.10.0-693.17.1.el7.x86_64 #1 SMP Thu Jan 25 20:13:58 UTC 2018 x86_64 x86_64 x86_64 GNU/Linux
# yum check-update
Įkelti įskiepiai: fastestmirror
Loading mirror speeds from cached hostfile
 * base: mirror.vpsnet.com
 * epel: mirror.vpsnet.com
 * extras: mirror.vpsnet.com
 * updates: mirror.vpsnet.com
#

Also I try to check audit2why or audit2allow but I get error:
cat /var/log/audit/audit.log | audit2why 
plural forms expression could be dangerous

Locale:
# locale
LANG=lt_LT.UTF-8
LC_CTYPE="lt_LT.UTF-8"
LC_NUMERIC="lt_LT.UTF-8"
LC_TIME="lt_LT.UTF-8"
LC_COLLATE="lt_LT.UTF-8"
LC_MONETARY="lt_LT.UTF-8"
LC_MESSAGES="lt_LT.UTF-8"
LC_PAPER="lt_LT.UTF-8"
LC_NAME="lt_LT.UTF-8"
LC_ADDRESS="lt_LT.UTF-8"
LC_TELEPHONE="lt_LT.UTF-8"
LC_MEASUREMENT="lt_LT.UTF-8"
LC_IDENTIFICATION="lt_LT.UTF-8"
LC_ALL=

what else could be useful?
I know I have missed something, but what?

In another source I have received an answer.
Quoted Michael Hampton:

It appears you have found a program which is not fully translated into
  your language. Try running it as:
LANG=en_US.UTF-8 semanage port -a -t http_port_t -p tcp 29200 

I was able to reproduce your problem by changing my language to yours,
  i.e.:
# LANG=lt_LT.UTF-8 audit2why < /var/log/audit/audit.log
plural forms expression could be dangerous

But when i use a different language, it works:
# LANG=en_US.UTF-8 audit2why < /var/log/audit/audit.log
Nothing to do


