summaryrefslogtreecommitdiff
path: root/source4/scripting/python/samba/netcmd/__init__.py
diff options
context:
space:
mode:
Diffstat (limited to 'source4/scripting/python/samba/netcmd/__init__.py')
-rw-r--r--source4/scripting/python/samba/netcmd/__init__.py15
1 files changed, 10 insertions, 5 deletions
diff --git a/source4/scripting/python/samba/netcmd/__init__.py b/source4/scripting/python/samba/netcmd/__init__.py
index 3213dd71b3..9798f3529b 100644
--- a/source4/scripting/python/samba/netcmd/__init__.py
+++ b/source4/scripting/python/samba/netcmd/__init__.py
@@ -81,12 +81,15 @@ class Command(object):
for option in option_group.option_list:
del kwargs[option.dest]
kwargs.update(optiongroups)
+ min_args = 0
+ max_args = 0
for i, arg in enumerate(self.takes_args):
- if arg[-1] != "?":
- if len(args) < i:
- self.usage(args)
- return -1
- if len(args) > len(self.takes_args):
+ if arg[-1] not in ("?", "*"):
+ min_args += 1
+ max_args += 1
+ if arg[-1] == "*":
+ max_args = -1
+ if len(args) < min_args or (max_args != -1 and len(args) > max_args):
self.usage(args)
return -1
try:
@@ -137,3 +140,5 @@ from samba.netcmd.setexpiry import cmd_setexpiry
commands["setexpiry"] = cmd_setexpiry()
from samba.netcmd.enableaccount import cmd_enableaccount
commands["enableaccount"] = cmd_enableaccount()
+from samba.netcmd.newuser import cmd_newuser
+commands["newuser"] = cmd_newuser()