Bug 1380393

Summary: UnboundLocalError in yacc module in FIPS mode
Product: Red Hat Enterprise Linux 7 Reporter: Martin Bašti <mbasti>
Component: python-plyAssignee: Nathaniel McCallum <npmccallum>
Status: CLOSED ERRATA QA Contact: Abhijeet Kasurde <akasurde>
Severity: unspecified Docs Contact:
Priority: unspecified    
Version: 7.3CC: akasurde, lucas.yamanishi, mkosek, nsoman, slaznick
Target Milestone: rc   
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2017-08-01 09:42:02 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On:    
Bug Blocks: 1125174, 1317041, 1427443    
Attachments:
Description Flags
console.log none

Description Martin Bašti 2016-09-29 13:00:59 UTC
Description of problem:
In FIPS mode we are receiving UnboundLocalError

Version-Release number of selected component (if applicable):


How reproducible:
Always

Steps to Reproduce:
1. enable FIPS
2. yum install ipa-client
3. run ipa-client-install

Actual results:
# ipa-client-install

Traceback (most recent call last):
  File "/usr/sbin/ipa-client-install", line 43, in <module>
    import ipaclient.ntpconf
  File "/usr/lib/python2.7/site-packages/ipaclient/ntpconf.py", line 24, in <module>
    from ipaplatform.tasks import tasks
  File "/usr/lib/python2.7/site-packages/ipaplatform/tasks.py", line 24, in <module>
    from ipaplatform.redhat.tasks import RedHatTaskNamespace
  File "/usr/lib/python2.7/site-packages/ipaplatform/redhat/tasks.py", line 54, in <module>
    """)
  File "/usr/lib64/python2.7/site-packages/cffi/api.py", line 103, in cdef
    self._parser.parse(csource, override=override, packed=packed)
  File "/usr/lib64/python2.7/site-packages/cffi/cparser.py", line 166, in parse
    self._internal_parse(csource)
  File "/usr/lib64/python2.7/site-packages/cffi/cparser.py", line 172, in _internal_parse
    ast, macros, csource = self._parse(csource)
  File "/usr/lib64/python2.7/site-packages/cffi/cparser.py", line 127, in _parse
    ast = _get_parser().parse(csource)
  File "/usr/lib64/python2.7/site-packages/cffi/cparser.py", line 32, in _get_parser
    _parser_cache = pycparser.CParser()
  File "/usr/lib/python2.7/site-packages/pycparser/c_parser.py", line 111, in __init__
    outputdir=taboutputdir)
  File "/usr/lib/python2.7/site-packages/ply/yacc.py", line 3065, in yacc
    signature = pinfo.signature()
  File "/usr/lib/python2.7/site-packages/ply/yacc.py", line 2814, in signature
    return sig.digest()
UnboundLocalError: local variable 'sig' referenced before assignment

Local variables in innermost frame:
self: <ply.yacc.ParserReflect object at 0x26e3bd0>
md5: <built-in function openssl_md5>


Expected results:
No Fail

Additional info:

md5 is not supported in FIPS mode, it must be at least SHA256

Comment 2 Standa Laznicka 2017-02-06 07:53:24 UTC
Seems to have been fixed upstream:
https://github.com/dabeaz/ply/commit/3335be2931e42803ddc64ce2df61f7b0aad1f30c

Comment 5 Abhijeet Kasurde 2017-05-03 11:19:58 UTC
Verified using IPA Client version :: ipa-client-4.5.0-9.el7.x86_64

Marking BZ as verified. See attachment for console log.

Comment 6 Abhijeet Kasurde 2017-05-03 11:20:40 UTC
Created attachment 1275881 [details]
console.log

Comment 7 errata-xmlrpc 2017-08-01 09:42:02 UTC
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-2017:2304