#4049 Server XMLRPC decoding raises "Internal Server Error"
Closed: fixed 5 years ago Opened 10 years ago by mkosek.

Ticket was cloned from Red Hat Bugzilla (product Red Hat Enterprise Linux 7): Bug 1029593

Description of problem:
This error discovered by accident.

[root@rh7a (RH7.0-x86_64) ipa-sudo] ipa sudorule-find sudo.rule | grep "Rule
name:" | cut -d":" -f2 | xargs ipa sudorule-del
ipa: ERROR: cannot connect to 'https://rh7a.yzhang.redhat.com/ipa/session/xml':
Internal Server Error


In order to re-produce this error, some sudo rule like "sudo.rule" has to
exist. In another words, the following command has to success:
[root@rh7a (RH7.0-x86_64) ipa-sudo] ipa sudorule-find sudo.rule | grep "Rule
name:" | cut -d":" -f2
 sudo.rule.14760
 sudo.rule.28088


Version-Release number of selected component (if applicable):
ipa-server-3.3.3-3.el7.x86_64


How reproducible:


Steps to Reproduce:
1. create sudorule "sudo.rule.001" "sudo.rule.002"
2. run above command:
ipa sudorule-find sudo.rule | grep "Rule name:" | cut -d":" -f2 | xargs ipa
sudorule-del
3.

Actual results:
[root@rh7a (RH7.0-x86_64) ipa-sudo] ipa sudorule-find sudo.rule | grep "Rule
name:" | cut -d":" -f2 | xargs ipa sudorule-del
ipa: ERROR: cannot connect to 'https://rh7a.yzhang.redhat.com/ipa/session/xml':
Internal Server Error



Additional info:

corresponding error msg in /var/log/httpd/error_log

[Tue Nov 12 09:07:40.390300 2013] [:error] [pid 1599] [remote
192.168.122.71:160] mod_wsgi (pid=1599): Exception occurred processing WSGI
script '/usr/share/ipa/wsgi.py'.
[Tue Nov 12 09:07:40.390373 2013] [:error] [pid 1599] [remote
192.168.122.71:160] Traceback (most recent call last):
[Tue Nov 12 09:07:40.390396 2013] [:error] [pid 1599] [remote
192.168.122.71:160]   File "/usr/share/ipa/wsgi.py", line 49, in application
[Tue Nov 12 09:07:40.390432 2013] [:error] [pid 1599] [remote
192.168.122.71:160]     return api.Backend.wsgi_dispatch(environ,
start_response)
[Tue Nov 12 09:07:40.390447 2013] [:error] [pid 1599] [remote
192.168.122.71:160]   File
"/usr/lib/python2.7/site-packages/ipaserver/rpcserver.py", line 247, in
__call__
[Tue Nov 12 09:07:40.390471 2013] [:error] [pid 1599] [remote
192.168.122.71:160]     return self.route(environ, start_response)
[Tue Nov 12 09:07:40.390483 2013] [:error] [pid 1599] [remote
192.168.122.71:160]   File
"/usr/lib/python2.7/site-packages/ipaserver/rpcserver.py", line 259, in route
[Tue Nov 12 09:07:40.390502 2013] [:error] [pid 1599] [remote
192.168.122.71:160]     return app(environ, start_response)
[Tue Nov 12 09:07:40.390514 2013] [:error] [pid 1599] [remote
192.168.122.71:160]   File
"/usr/lib/python2.7/site-packages/ipaserver/rpcserver.py", line 1197, in
__call__
[Tue Nov 12 09:07:40.390533 2013] [:error] [pid 1599] [remote
192.168.122.71:160]     response = super(xmlserver_session,
self).__call__(environ, start_response)
[Tue Nov 12 09:07:40.390545 2013] [:error] [pid 1599] [remote
192.168.122.71:160]   File
"/usr/lib/python2.7/site-packages/ipaserver/rpcserver.py", line 709, in
__call__
[Tue Nov 12 09:07:40.390564 2013] [:error] [pid 1599] [remote
192.168.122.71:160]     response = super(xmlserver, self).__call__(environ,
start_response)
[Tue Nov 12 09:07:40.390576 2013] [:error] [pid 1599] [remote
192.168.122.71:160]   File
"/usr/lib/python2.7/site-packages/ipaserver/rpcserver.py", line 374, in
__call__
[Tue Nov 12 09:07:40.390594 2013] [:error] [pid 1599] [remote
192.168.122.71:160]     response = self.wsgi_execute(environ)
[Tue Nov 12 09:07:40.390624 2013] [:error] [pid 1599] [remote
192.168.122.71:160]   File
"/usr/lib/python2.7/site-packages/ipaserver/rpcserver.py", line 328, in
wsgi_execute
[Tue Nov 12 09:07:40.390643 2013] [:error] [pid 1599] [remote
192.168.122.71:160]     (name, args, options, _id) = self.unmarshal(data)
[Tue Nov 12 09:07:40.390654 2013] [:error] [pid 1599] [remote
192.168.122.71:160]   File
"/usr/lib/python2.7/site-packages/ipaserver/rpcserver.py", line 732, in
unmarshal
[Tue Nov 12 09:07:40.390673 2013] [:error] [pid 1599] [remote
192.168.122.71:160]     (params, name) = xml_loads(data)
[Tue Nov 12 09:07:40.390685 2013] [:error] [pid 1599] [remote
192.168.122.71:160]   File "/usr/lib/python2.7/site-packages/ipalib/rpc.py",
line 262, in xml_loads
[Tue Nov 12 09:07:40.390706 2013] [:error] [pid 1599] [remote
192.168.122.71:160]     (params, method) = loads(data)
[Tue Nov 12 09:07:40.390717 2013] [:error] [pid 1599] [remote
192.168.122.71:160]   File "/usr/lib64/python2.7/xmlrpclib.py", line 1135, in
loads
[Tue Nov 12 09:07:40.390738 2013] [:error] [pid 1599] [remote
192.168.122.71:160]     p.feed(data)
[Tue Nov 12 09:07:40.390749 2013] [:error] [pid 1599] [remote
192.168.122.71:160]   File "/usr/lib64/python2.7/xmlrpclib.py", line 557, in
feed
[Tue Nov 12 09:07:40.390768 2013] [:error] [pid 1599] [remote
192.168.122.71:160]     self._parser.Parse(data, 0)
[Tue Nov 12 09:07:40.390792 2013] [:error] [pid 1599] [remote
192.168.122.71:160] ExpatError: not well-formed (invalid token): line 8, column
15
[Tue Nov 12 09:09:13.139490 2013] [:error] [pid 1600] ipa: INFO:
admin@YZHANG.REDHAT.COM: sudorule_find(u'sudo.rule', all=False, raw=False,
version=u'2.65', no_members=False, pkey_only=False): SUCCESS

Metadata Update from @mkosek:
- Issue assigned to someone
- Issue set to the milestone: Future Releases

7 years ago

Unable to reproduce in master. I suspect failed due to the extra output.

$ ipa sudorule-find sudo.rule | grep "Rule name:" | cut -d":" -f2 | xargs echo
2 Sudo Rules matched sudo.rule.001 sudo.rule.002

It works if the grep is simply "name:" instead.

Metadata Update from @rcritten:
- Issue close_status updated to: fixed
- Issue status updated to: Closed (was: Open)

5 years ago

Login to comment on this ticket.

Metadata