diff --git a/branches/ucs-3.1/ucs/management/univention-directory-manager-modules/modules/univention/admincli/admin.py b/branches/ucs-3.1/ucs/management/univention-directory-manager-modules/modules/univention/admincli/admin.py index ada64d7..0f16e42 100755 --- a/branches/ucs-3.1/ucs/management/univention-directory-manager-modules/modules/univention/admincli/admin.py +++ b/branches/ucs-3.1/ucs/management/univention-directory-manager-modules/modules/univention/admincli/admin.py @@ -36,7 +36,6 @@ import re import string import base64 import os -import subprocess import traceback import univention.debug @@ -47,7 +46,6 @@ import univention.admin.modules import univention.admin.objects from univention.admin.layout import Tab, Group import univention.config_registry -import univention.admin.ipaddress univention.admin.modules.update() @@ -454,7 +452,6 @@ def _doit(arglist): arg=None binddn=None bindpwd=None - list_policies=False policies_with_DN=False policyOptions=[] logfile='/var/log/univention/admin-cmd.log' @@ -1146,99 +1143,6 @@ def _doit(arglist): for el in references['univentionPolicyReference']: out.append(' %s: %s' % ( 'univentionPolicyReference', _2utf8( s.tostring( el ) ) ) ) - - if list_policies: - utf8_objectdn = _2utf8( univention.admin.objects.dn( object ) ) - p1 = subprocess.Popen(['univention_policy_result'] + policyOptions + [utf8_objectdn], stdout=subprocess.PIPE) - policyResults = p1.communicate()[0].split('\n') - - out.append(" Policy-based Settings:") - policy='' - value=[] - client={} - for line in policyResults: - if not (line.strip() == "" or line.strip()[:4]=="DN: " or line.strip()[:7]=="POLICY "): - out.append(" %s"%line.strip()) - if policies_with_DN: - clsplit=string.split(line.strip(), ': ') - if clsplit[0] == 'Policy': - if policy: - client[attribute]=[policy, value] - value=[] - policy=clsplit[1] - elif clsplit[0] == 'Attribute': - attribute=clsplit[1] - elif clsplit[0] == 'Value': - value.append(clsplit[1]) - else: - clsplit=string.split(line.strip(), '=') - if not client.has_key(clsplit[0]): - client[clsplit[0]] = [] - client[clsplit[0]].append(clsplit[1]) - - if policies_with_DN: - client[attribute]=[policy, value] - value=[] - - out.append('') - - if module_name == 'dhcp/host': - subnet_module=univention.admin.modules.get('dhcp/subnet') - for subnet in univention.admin.modules.lookup(subnet_module, co, lo, scope='sub', superordinate=superordinate, base='', filter=''): - - if univention.admin.ipaddress.ip_is_in_network(subnet['subnet'], subnet['subnetmask'], object['fixedaddress'][0]): - utf8_subnet_dn = _2utf8( subnet.dn ) - p1 = subprocess.Popen(['univention_policy_result'] + policyOptions + [utf8_subnet_dn], stdout=subprocess.PIPE) - policyResults = p1.communicate()[0].split('\n') - out.append(" Subnet-based Settings:") - ddict={} - policy='' - value=[] - for line in policyResults: - if not (line.strip() == "" or line.strip()[:4]=="DN: " or line.strip()[:7]=="POLICY "): - out.append(" %s"%line.strip()) - if policies_with_DN: - subsplit=string.split(line.strip(), ': ') - if subsplit[0] == 'Policy': - if policy: - ddict[attribute]=[policy, value] - value=[] - policy=subsplit[1] - elif subsplit[0] == 'Attribute': - attribute=subsplit[1] - elif subsplit[0] == 'Value': - value.append(subsplit[1]) - else: - subsplit=string.split(line.strip(), '=') - if not ddict.has_key(subsplit[0]): - ddict[subsplit[0]] = [] - ddict[subsplit[0]].append(subsplit[1]) - - out.append('') - - if policies_with_DN: - ddict[attribute]=[policy, value] - value=[] - - out.append(" Merged Settings:") - - for key in ddict.keys(): - if not client.has_key(key): - client[key]=ddict[key] - - if policies_with_DN: - for key in client.keys(): - out.append(" Policy: "+client[key][0]) - out.append(" Attribute: "+key) - for i in range(0, len(client[key][1])): - out.append(" Value: "+client[key][1][i]) - else: - for key in client.keys(): - for i in range(0, len(client[key])): - out.append(" %s=%s" % (key, client[key][i])) - out.append('') - - out.append('') except univention.admin.uexceptions.ldapError, errmsg: out.append('%s' %str(errmsg)) return out + ["OPERATION FAILED"]