Univention Bugzilla – Bug 55196
Creating an ipmanagedclient with multiple IPs leads to traceback
Last modified: 2022-09-26 11:45:21 CEST
Creating an ipmanagedclient like computers/ipmanagedclient create --position cn=computers,$(ucr get ldap/base) --set name='test' --set network=cn=default,cn=networks,$(ucr get ldap/base) --append ip=10.200.21.20 --append ip=10.200.21.21 raises Traceback (most recent call last): File "/usr/share/univention-directory-manager-tools/univention-cli-server", line 241, in doit univention.admincli.admin.main(arglist, stdout, stderr) File "/usr/lib/python3/dist-packages/univention/admincli/admin.py", line 354, in main _doit(arglist, stdout=stdout, stderr=stderr) File "/usr/lib/python3/dist-packages/univention/admincli/admin.py", line 620, in _doit cli.create(input, append, ignore_exists, parsed_options, parsed_append_options, parsed_remove_options, policy_reference) File "/usr/lib/python3/dist-packages/univention/admincli/admin.py", line 648, in create return self._create(self.module_name, self.module, self.dn, self.lo, self.position, self.superordinate, *args, **kwargs) File "/usr/lib/python3/dist-packages/univention/admincli/admin.py", line 683, in _create object_input(module, object, input, append=append, stderr=self.stderr) File "/usr/lib/python3/dist-packages/univention/admincli/admin.py", line 339, in object_input object[key] = value File "/usr/lib/python3/dist-packages/univention/admin/handlers/__init__.py", line 3341, in __setitem__ if not ips or ip_address(u'%s' % (ip1,)) not in subnet: File "/usr/lib/python3.7/ipaddress.py", line 54, in ip_address address) ValueError: '' does not appear to be an IPv4 or IPv6 address This seems to be a regression from Bug #50648 from commit e4f22d87dcf where these lines have been added: ip1 = self['ip'][0] if len(ips) == 1 else '' and I'd guess they should be ip1 = self['ip'][0] if len(ips) >= 1 else '' to account for multiple ips.
Workaround: Only add one ip address at a time