Bug 709864

Summary: Web UI Self Service Permissions - unable to change (903 error).
Product: [Fedora] Fedora Reporter: chris <chris>
Component: freeipaAssignee: Rob Crittenden <rcritten>
Status: CLOSED UPSTREAM QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: high Docs Contact:
Priority: unspecified    
Version: 15CC: rcritten, ssorce
Target Milestone: ---   
Target Release: ---   
Hardware: Unspecified   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2011-10-19 15:14:18 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:

Description chris 2011-06-01 19:38:45 UTC
Description of problem:

Unable to change Self Service Permissions in freeIPA web ui.  A 903 error is "popped up".

Version-Release number of selected component (if applicable):
FreeIPA that comes with Fedora 15.
freeipa-server.i686                       2.0.1-2.fc15  

How reproducible:

Every time.

Steps to Reproduce:
-As Administrator
1. Login to FreeIPA web page, and find the Self Service Permissions under the IPA Server tab.
2. Click "User Self Service" and Check or unCheck any box.
3. Click on Update on left hand nav area
4. See 903 pop up.
  
Actual results:
No changes made, 903 error pop up in browser (Firefox 4). Following in apache error_log:
 [error] ipa: ERROR: non-public: AttributeError: 'list' object has no attribute 'encode'
 [error] Traceback (most recent call last):
 [error]   File "/usr/lib/python2.7/site-packages/ipaserver/rpcserver.py", line 218, in wsgi_execute
 [error]     result = self.Command[name](*args, **options)
 [error]   File "/usr/lib/python2.7/site-packages/ipalib/frontend.py", line 412, in __call__
 [error]     params = self.normalize(**params)
 [error]   File "/usr/lib/python2.7/site-packages/ipalib/frontend.py", line 617, in normalize
 [error]     (k, self.params[k].normalize(v)) for (k, v) in kw.iteritems()
   File "/usr/lib/python2.7/site-packages/ipalib/frontend.py", line 617, in <genexpr>
 [error]     (k, self.params[k].normalize(v)) for (k, v) in kw.iteritems()
 [error]   File "/usr/lib/python2.7/site-packages/ipalib/parameters.py", line 1422, in normalize
 [error]     for row in reader:
 [error]   File "/usr/lib/python2.7/site-packages/ipalib/parameters.py", line 1410, in __unicode_csv_reader
 [error]     for row in csv_reader:
 [error]   File "/usr/lib/python2.7/site-packages/ipalib/parameters.py", line 1402, in __utf_8_encoder
 [error]     yield line.encode('utf-8')
 [error] AttributeError: 'list' object has no attribute 'encode'
 [error] ipa: INFO: first.last: selfservice_mod(u'User Self service', attrs=[u'audio', u'businesscategory', u'carlicense', u'cn', u'description', u'displayname', u'employeetype', u'facsimiletelephonenumber', u'gecos', u'givenname', u'homephone', u'inetuserhttpurl', u'initials', u'l', u'labeleduri', u'loginshell', u'manager', u'mobile', u'ou', u'pager', u'postalcode', u'roomnumber', u'secretary', u'seealso', u'sn', u'st', u'street', u'telephonenumber', u'title'], all=True): AttributeError


Expected results:

Checked or unChecked items accepted/change.

Additional info:

Comment 1 Rob Crittenden 2011-06-02 15:17:57 UTC
https://fedorahosted.org/freeipa/ticket/1274

Comment 2 Rob Crittenden 2011-06-14 21:48:19 UTC
master: 6f1b62fb1ad8c4d1639a54874462c9e7204bbf4c

Comment 3 chris 2011-06-15 20:44:26 UTC
Great news that there is a fix.  Any idea on when this would be pushed to the Fedora 15 testing RPMs?  This would help with evaluating freeipa.

Comment 4 Rob Crittenden 2011-06-21 14:30:42 UTC
upstream is considering a 2.0.2 release in the near future. If that happens the Fedora code will be rebased, otherwise the patch will be added.

Comment 5 Rob Crittenden 2011-10-19 15:14:18 UTC
Fixed in 2.1.0