summaryrefslogtreecommitdiffstats
path: root/ipalib/plugins/automount.py
diff options
context:
space:
mode:
authorPetr Viktorin <pviktori@redhat.com>2012-04-17 12:42:35 -0400
committerMartin Kosek <mkosek@redhat.com>2012-06-20 15:18:42 +0200
commit1235dfa7bf4b249eb6da8eab8d8a2c7b0eef98db (patch)
treea972262b4ebfdc10de052a05e94cb8961e827041 /ipalib/plugins/automount.py
parent1484ccc4049dc42a5a8a71713253894ade401573 (diff)
downloadfreeipa-1235dfa7bf4b249eb6da8eab8d8a2c7b0eef98db.tar.gz
freeipa-1235dfa7bf4b249eb6da8eab8d8a2c7b0eef98db.tar.xz
freeipa-1235dfa7bf4b249eb6da8eab8d8a2c7b0eef98db.zip
Fail on unknown Command options
When unknown keyword arguments are passed to a Command, raise an error instead of ignoring them. Options used when IPA calls its commands internally are listed in a new Command attribute called internal_options, and allowed. Previous patches (0b01751c, c45174d6, c5689e7f) made IPA not use unknown keyword arguments in its own commands and tests, but since that some violations were reintroduced in permission_find and tests. Fix those. Tests included; both a frontend unittest and a XML-RPC test via the ping plugin (which was untested previously). https://fedorahosted.org/freeipa/ticket/2509
Diffstat (limited to 'ipalib/plugins/automount.py')
-rw-r--r--ipalib/plugins/automount.py6
1 files changed, 5 insertions, 1 deletions
diff --git a/ipalib/plugins/automount.py b/ipalib/plugins/automount.py
index dda14cc78..5c9f42b4c 100644
--- a/ipalib/plugins/automount.py
+++ b/ipalib/plugins/automount.py
@@ -787,6 +787,8 @@ class automountkey_add(LDAPCreate):
msg_summary = _('Added automount key "%(value)s"')
+ internal_options = ['description', 'add_operation']
+
def pre_callback(self, ldap, dn, entry_attrs, *keys, **options):
options.pop('add_operation', None)
options.pop('description', None)
@@ -846,7 +848,7 @@ class automountmap_add_indirect(LDAPCreate):
self.api.Command['automountmap_show'](location, parentmap)
# Add a submount key
self.api.Command['automountkey_add'](
- location, parentmap, automountkey=key, key=key,
+ location, parentmap, automountkey=key,
automountinformation='-fstype=autofs ldap:%s' % map)
else: # adding to auto.master
# Ensure auto.master exists
@@ -910,6 +912,8 @@ class automountkey_mod(LDAPUpdate):
msg_summary = _('Modified automount key "%(value)s"')
+ internal_options = ['newautomountkey']
+
takes_options = LDAPUpdate.takes_options + (
IA5Str('newautomountinformation?',
cli_name='newinfo',