#7903 d-bus interface signature failure for oddjobd helper trust-fetch-domains
Closed: fixed 5 years ago by cheimes. Opened 5 years ago by abbra.

When establishing one-way trust, we run an oddjobd helper. Now we pass additional options to it. Unfortunately, oddjobd doesn't register its input as optional for the helpers. As result, D-BUS is strict in expecting full list of arguments:

[Mon Apr 08 03:25:42.728740 2019] [:error] [pid 16071] ipa: ERROR: Unable to set arguments ([u'ipaad2016.test'],) according to signature u'ssssssssssssssssssssssssssssss': <type 'exceptions.TypeError'>: Expected a string or unicode object
[Mon Apr 08 03:25:42.731769 2019] [:error] [pid 16071] ipa: ERROR: non-public: TypeError: Expected a string or unicode object
[Mon Apr 08 03:25:42.731791 2019] [:error] [pid 16071] Traceback (most recent call last):
[Mon Apr 08 03:25:42.731797 2019] [:error] [pid 16071]   File "/usr/lib/python2.7/site-packages/ipaserver/rpcserver.py", line 369, in wsgi_execute
[Mon Apr 08 03:25:42.731803 2019] [:error] [pid 16071]     result = command(*args, **options)
[Mon Apr 08 03:25:42.731808 2019] [:error] [pid 16071]   File "/usr/lib/python2.7/site-packages/ipalib/frontend.py", line 450, in __call__
[Mon Apr 08 03:25:42.731814 2019] [:error] [pid 16071]     return self.__do_call(*args, **options)
[Mon Apr 08 03:25:42.731819 2019] [:error] [pid 16071]   File "/usr/lib/python2.7/site-packages/ipalib/frontend.py", line 478, in __do_call
[Mon Apr 08 03:25:42.731825 2019] [:error] [pid 16071]     ret = self.run(*args, **options)
[Mon Apr 08 03:25:42.731830 2019] [:error] [pid 16071]   File "/usr/lib/python2.7/site-packages/ipalib/frontend.py", line 800, in run
[Mon Apr 08 03:25:42.731836 2019] [:error] [pid 16071]     return self.execute(*args, **options)
[Mon Apr 08 03:25:42.731841 2019] [:error] [pid 16071]   File "/usr/lib/python2.7/site-packages/ipaserver/plugins/trust.py", line 797, in execute
[Mon Apr 08 03:25:42.731847 2019] [:error] [pid 16071]     fetch_trusted_domains_over_dbus(self.api, result['value'])
[Mon Apr 08 03:25:42.731853 2019] [:error] [pid 16071]   File "/usr/lib/python2.7/site-packages/ipaserver/plugins/trust.py", line 450, in fetch_trusted_domains_over_dbus
[Mon Apr 08 03:25:42.731858 2019] [:error] [pid 16071]     [forest_name] + method_options)
[Mon Apr 08 03:25:42.731864 2019] [:error] [pid 16071]   File "/usr/lib64/python2.7/site-packages/dbus/proxies.py", line 70, in __call__
[Mon Apr 08 03:25:42.731869 2019] [:error] [pid 16071]     return self._proxy_method(*args, **keywords)
[Mon Apr 08 03:25:42.731875 2019] [:error] [pid 16071]   File "/usr/lib64/python2.7/site-packages/dbus/proxies.py", line 145, in __call__
[Mon Apr 08 03:25:42.731880 2019] [:error] [pid 16071]     **keywords)
[Mon Apr 08 03:25:42.731885 2019] [:error] [pid 16071]   File "/usr/lib64/python2.7/site-packages/dbus/connection.py", line 641, in call_blocking
[Mon Apr 08 03:25:42.731891 2019] [:error] [pid 16071]     message.append(signature=signature, *args)
[Mon Apr 08 03:25:42.731896 2019] [:error] [pid 16071] TypeError: Expected a string or unicode object
[Mon Apr 08 03:25:42.732328 2019] [:error] [pid 16071] ipa: INFO: [jsonserver_session] admin@TESTRELMU403B.TEST: trust_add/1(u'ipaad2016.test', trust_type=u'ad', realm_admin=u'Administrator', realm_passwd=u'********', external=True, version=u'2.231'): InternalError

Metadata Update from @abbra:
- Issue set to the milestone: FreeIPA 4.6

5 years ago

Metadata Update from @abbra:
- Issue assigned to abbra

5 years ago

Metadata Update from @abbra:
- Custom field rhbz adjusted to https://bugzilla.redhat.com/show_bug.cgi?id=1697242

5 years ago

master:

  • cb0f24b Bypass D-BUS interface definition deficiences for trust-fetch-domains

ipa-4-7:

  • b903df9 Bypass D-BUS interface definition deficiences for trust-fetch-domains

ipa-4-6:

  • 51fdbf2 Bypass D-BUS interface definition deficiences for trust-fetch-domains

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

5 years ago

Login to comment on this ticket.

Metadata