summaryrefslogtreecommitdiffstats
path: root/ipaserver
diff options
context:
space:
mode:
Diffstat (limited to 'ipaserver')
-rw-r--r--ipaserver/plugins/internal.py6
-rw-r--r--ipaserver/rpcserver.py3
2 files changed, 8 insertions, 1 deletions
diff --git a/ipaserver/plugins/internal.py b/ipaserver/plugins/internal.py
index c0360567c..768433b94 100644
--- a/ipaserver/plugins/internal.py
+++ b/ipaserver/plugins/internal.py
@@ -82,6 +82,7 @@ class json_metadata(Command):
elif objname == "all":
objects = dict(
(o.name, json_serialize(o)) for o in self.api.Object()
+ if o is self.api.Object[o.name]
)
empty = False
except KeyError:
@@ -96,6 +97,7 @@ class json_metadata(Command):
elif methodname == "all":
methods = dict(
(m.name, json_serialize(m)) for m in self.api.Method()
+ if m is self.api.Method[m.name]
)
empty = False
except KeyError:
@@ -109,6 +111,7 @@ class json_metadata(Command):
elif cmdname == "all":
commands = dict(
(c.name, json_serialize(c)) for c in self.api.Command()
+ if c is self.api.Command[c.name]
)
empty = False
except KeyError:
@@ -117,12 +120,15 @@ class json_metadata(Command):
if empty:
objects = dict(
(o.name, json_serialize(o)) for o in self.api.Object()
+ if o is self.api.Object[o.name]
)
methods = dict(
(m.name, json_serialize(m)) for m in self.api.Method()
+ if m is self.api.Method[m.name]
)
commands = dict(
(c.name, json_serialize(c)) for c in self.api.Command()
+ if c is self.api.Command[c.name]
)
retval = dict([
diff --git a/ipaserver/rpcserver.py b/ipaserver/rpcserver.py
index 852cf2ebe..98a243d53 100644
--- a/ipaserver/rpcserver.py
+++ b/ipaserver/rpcserver.py
@@ -673,7 +673,8 @@ class xmlserver(KerberosWSGIExecutioner):
"""list methods for XML-RPC introspection"""
if params:
raise errors.ZeroArgumentError(name='system.listMethods')
- return (tuple(unicode(cmd.name) for cmd in self.Command()) +
+ return (tuple(unicode(cmd.name) for cmd in self.Command()
+ if cmd is self.Command[cmd.name]) +
tuple(unicode(name) for name in self._system_commands))
def _get_method_name(self, name, *params):