|
Lines 984-991
def ucs_host_record_create(s4connector, object):
Link Here
|
| 984 |
ol_filter = format_escaped('(&(relativeDomainName={0!e})(zoneName={1!e}))', relativeDomainName, zoneName) |
984 |
ol_filter = format_escaped('(&(relativeDomainName={0!e})(zoneName={1!e}))', relativeDomainName, zoneName) |
| 985 |
searchResult = s4connector.lo.search(filter=ol_filter, unique=True) |
985 |
searchResult = s4connector.lo.search(filter=ol_filter, unique=True) |
| 986 |
if len(searchResult) > 0: |
986 |
if len(searchResult) > 0: |
| 987 |
superordinate = s4connector_get_superordinate('dns/host_record', s4connector.lo, searchResult[0][0]) |
987 |
newRecord = univention.admin.handlers.dns.host_record.object(None, s4connector.lo, position=None, dn=searchResult[0][0], attributes=[], update_zone=False) |
| 988 |
newRecord = univention.admin.handlers.dns.host_record.object(None, s4connector.lo, position=None, dn=searchResult[0][0], superordinate=superordinate, attributes=[], update_zone=False) |
|
|
| 989 |
newRecord.open() |
988 |
newRecord.open() |
| 990 |
if set(newRecord['a']) != set(a): |
989 |
if set(newRecord['a']) != set(a): |
| 991 |
newRecord['a'] = a |
990 |
newRecord['a'] = a |
|
Lines 996-1007
def ucs_host_record_create(s4connector, object):
Link Here
|
| 996 |
zoneDN = __get_zone_dn(s4connector, zoneName) |
995 |
zoneDN = __get_zone_dn(s4connector, zoneName) |
| 997 |
|
996 |
|
| 998 |
ud.debug(ud.LDAP, ud.INFO, 'ucs_host_record_create: zoneDN: %s' % zoneDN) |
997 |
ud.debug(ud.LDAP, ud.INFO, 'ucs_host_record_create: zoneDN: %s' % zoneDN) |
| 999 |
superordinate = s4connector_get_superordinate('dns/host_record', s4connector.lo, zoneDN) |
|
|
| 1000 |
ud.debug(ud.LDAP, ud.INFO, 'ucs_host_record_create: superordinate: %s' % superordinate) |
| 1001 |
|
998 |
|
| 1002 |
position = univention.admin.uldap.position(zoneDN) |
999 |
position = univention.admin.uldap.position(zoneDN) |
| 1003 |
|
1000 |
|
| 1004 |
newRecord = univention.admin.handlers.dns.host_record.object(None, s4connector.lo, position, dn=None, superordinate=superordinate, attributes=[], update_zone=False) |
1001 |
newRecord = univention.admin.handlers.dns.host_record.object(None, s4connector.lo, position, dn=None, attributes=[], update_zone=False) |
| 1005 |
newRecord.open() |
1002 |
newRecord.open() |
| 1006 |
newRecord['name'] = relativeDomainName |
1003 |
newRecord['name'] = relativeDomainName |
| 1007 |
newRecord['a'] = a |
1004 |
newRecord['a'] = a |
|
Lines 1018-1025
def ucs_host_record_delete(s4connector, object):
Link Here
|
| 1018 |
ol_filter = format_escaped('(&(relativeDomainName={0!e})(zoneName={1!e}))', relativeDomainName, zoneName) |
1015 |
ol_filter = format_escaped('(&(relativeDomainName={0!e})(zoneName={1!e}))', relativeDomainName, zoneName) |
| 1019 |
searchResult = s4connector.lo.search(filter=ol_filter, unique=True) |
1016 |
searchResult = s4connector.lo.search(filter=ol_filter, unique=True) |
| 1020 |
if len(searchResult) > 0: |
1017 |
if len(searchResult) > 0: |
| 1021 |
superordinate = s4connector_get_superordinate('dns/host_record', s4connector.lo, searchResult[0][0]) |
1018 |
newRecord = univention.admin.handlers.dns.host_record.object(None, s4connector.lo, position=None, dn=searchResult[0][0], attributes=[], update_zone=False) |
| 1022 |
newRecord = univention.admin.handlers.dns.host_record.object(None, s4connector.lo, position=None, dn=searchResult[0][0], superordinate=superordinate, attributes=[], update_zone=False) |
|
|
| 1023 |
newRecord.open() |
1019 |
newRecord.open() |
| 1024 |
newRecord.delete() |
1020 |
newRecord.delete() |
| 1025 |
else: |
1021 |
else: |
|
Lines 1054-1061
def ucs_ptr_record_create(s4connector, object):
Link Here
|
| 1054 |
ol_filter = format_escaped('(&(relativeDomainName={0!e})(zoneName={1!e}))', relativeDomainName, zoneName) |
1050 |
ol_filter = format_escaped('(&(relativeDomainName={0!e})(zoneName={1!e}))', relativeDomainName, zoneName) |
| 1055 |
searchResult = s4connector.lo.search(filter=ol_filter, unique=True) |
1051 |
searchResult = s4connector.lo.search(filter=ol_filter, unique=True) |
| 1056 |
if len(searchResult) > 0: |
1052 |
if len(searchResult) > 0: |
| 1057 |
superordinate = s4connector_get_superordinate('dns/ptr_record', s4connector.lo, searchResult[0][0]) |
1053 |
newRecord = univention.admin.handlers.dns.ptr_record.object(None, s4connector.lo, position=None, dn=searchResult[0][0], attributes=[], update_zone=False) |
| 1058 |
newRecord = univention.admin.handlers.dns.ptr_record.object(None, s4connector.lo, position=None, dn=searchResult[0][0], superordinate=superordinate, attributes=[], update_zone=False) |
|
|
| 1059 |
newRecord.open() |
1054 |
newRecord.open() |
| 1060 |
if set(newRecord['ptr_record']) != set(ptr): |
1055 |
if set(newRecord['ptr_record']) != set(ptr): |
| 1061 |
newRecord['ptr_record'] = ptr[0] |
1056 |
newRecord['ptr_record'] = ptr[0] |
|
Lines 1065-1076
def ucs_ptr_record_create(s4connector, object):
Link Here
|
| 1065 |
else: |
1060 |
else: |
| 1066 |
zoneDN = __get_zone_dn(s4connector, zoneName) |
1061 |
zoneDN = __get_zone_dn(s4connector, zoneName) |
| 1067 |
|
1062 |
|
| 1068 |
superordinate = s4connector_get_superordinate('dns/ptr_record', s4connector.lo, zoneDN) |
|
|
| 1069 |
ud.debug(ud.LDAP, ud.INFO, 'ucs_ptr_record_create: superordinate: %s' % superordinate) |
| 1070 |
|
| 1071 |
position = univention.admin.uldap.position(zoneDN) |
1063 |
position = univention.admin.uldap.position(zoneDN) |
| 1072 |
|
1064 |
|
| 1073 |
newRecord = univention.admin.handlers.dns.ptr_record.object(None, s4connector.lo, position, dn=None, superordinate=superordinate, attributes=[], update_zone=False) |
1065 |
newRecord = univention.admin.handlers.dns.ptr_record.object(None, s4connector.lo, position, dn=None, attributes=[], update_zone=False) |
| 1074 |
newRecord.open() |
1066 |
newRecord.open() |
| 1075 |
newRecord['address'] = relativeDomainName |
1067 |
newRecord['address'] = relativeDomainName |
| 1076 |
newRecord['ptr_record'] = ptr[0] |
1068 |
newRecord['ptr_record'] = ptr[0] |
|
Lines 1087-1094
def ucs_ptr_record_delete(s4connector, object):
Link Here
|
| 1087 |
ol_filter = format_escaped('(&(relativeDomainName={0!e})(zoneName={1!e}))', relativeDomainName, zoneName) |
1079 |
ol_filter = format_escaped('(&(relativeDomainName={0!e})(zoneName={1!e}))', relativeDomainName, zoneName) |
| 1088 |
searchResult = s4connector.lo.search(filter=ol_filter, unique=True) |
1080 |
searchResult = s4connector.lo.search(filter=ol_filter, unique=True) |
| 1089 |
if len(searchResult) > 0: |
1081 |
if len(searchResult) > 0: |
| 1090 |
superordinate = s4connector_get_superordinate('dns/ptr_record', s4connector.lo, searchResult[0][0]) |
1082 |
newRecord = univention.admin.handlers.dns.ptr_record.object(None, s4connector.lo, position=None, dn=searchResult[0][0], attributes=[], update_zone=False) |
| 1091 |
newRecord = univention.admin.handlers.dns.ptr_record.object(None, s4connector.lo, position=None, dn=searchResult[0][0], superordinate=superordinate, attributes=[], update_zone=False) |
|
|
| 1092 |
newRecord.open() |
1083 |
newRecord.open() |
| 1093 |
newRecord.delete() |
1084 |
newRecord.delete() |
| 1094 |
else: |
1085 |
else: |
|
Lines 1111-1118
def ucs_cname_create(s4connector, object):
Link Here
|
| 1111 |
ol_filter = format_escaped('(&(relativeDomainName={0!e})(zoneName={1!e}))', relativeDomainName, zoneName) |
1102 |
ol_filter = format_escaped('(&(relativeDomainName={0!e})(zoneName={1!e}))', relativeDomainName, zoneName) |
| 1112 |
searchResult = s4connector.lo.search(filter=ol_filter, unique=True) |
1103 |
searchResult = s4connector.lo.search(filter=ol_filter, unique=True) |
| 1113 |
if len(searchResult) > 0: |
1104 |
if len(searchResult) > 0: |
| 1114 |
superordinate = s4connector_get_superordinate('dns/alias', s4connector.lo, searchResult[0][0]) |
1105 |
newRecord = univention.admin.handlers.dns.alias.object(None, s4connector.lo, position=None, dn=searchResult[0][0], attributes=[], update_zone=False) |
| 1115 |
newRecord = univention.admin.handlers.dns.alias.object(None, s4connector.lo, position=None, dn=searchResult[0][0], superordinate=superordinate, attributes=[], update_zone=False) |
|
|
| 1116 |
newRecord.open() |
1106 |
newRecord.open() |
| 1117 |
if set(newRecord['cname']) != set(c): |
1107 |
if set(newRecord['cname']) != set(c): |
| 1118 |
newRecord['cname'] = c[0] |
1108 |
newRecord['cname'] = c[0] |
|
Lines 1122-1133
def ucs_cname_create(s4connector, object):
Link Here
|
| 1122 |
else: |
1112 |
else: |
| 1123 |
zoneDN = __get_zone_dn(s4connector, zoneName) |
1113 |
zoneDN = __get_zone_dn(s4connector, zoneName) |
| 1124 |
|
1114 |
|
| 1125 |
superordinate = s4connector_get_superordinate('dns/alias', s4connector.lo, zoneDN) |
|
|
| 1126 |
ud.debug(ud.LDAP, ud.INFO, 'ucs_cname_create: superordinate: %s' % superordinate) |
| 1127 |
|
| 1128 |
position = univention.admin.uldap.position(zoneDN) |
1115 |
position = univention.admin.uldap.position(zoneDN) |
| 1129 |
|
1116 |
|
| 1130 |
newRecord = univention.admin.handlers.dns.alias.object(None, s4connector.lo, position, dn=None, superordinate=superordinate, attributes=[], update_zone=False) |
1117 |
newRecord = univention.admin.handlers.dns.alias.object(None, s4connector.lo, position, dn=None, attributes=[], update_zone=False) |
| 1131 |
newRecord.open() |
1118 |
newRecord.open() |
| 1132 |
newRecord['name'] = relativeDomainName |
1119 |
newRecord['name'] = relativeDomainName |
| 1133 |
newRecord['cname'] = c[0] |
1120 |
newRecord['cname'] = c[0] |
|
Lines 1144-1151
def ucs_cname_delete(s4connector, object):
Link Here
|
| 1144 |
ol_filter = format_escaped('(&(relativeDomainName={0!e})(zoneName={1!e}))', relativeDomainName, zoneName) |
1131 |
ol_filter = format_escaped('(&(relativeDomainName={0!e})(zoneName={1!e}))', relativeDomainName, zoneName) |
| 1145 |
searchResult = s4connector.lo.search(filter=ol_filter, unique=True) |
1132 |
searchResult = s4connector.lo.search(filter=ol_filter, unique=True) |
| 1146 |
if len(searchResult) > 0: |
1133 |
if len(searchResult) > 0: |
| 1147 |
superordinate = s4connector_get_superordinate('dns/alias', s4connector.lo, searchResult[0][0]) |
1134 |
newRecord = univention.admin.handlers.dns.alias.object(None, s4connector.lo, position=None, dn=searchResult[0][0], attributes=[], update_zone=False) |
| 1148 |
newRecord = univention.admin.handlers.dns.alias.object(None, s4connector.lo, position=None, dn=searchResult[0][0], superordinate=superordinate, attributes=[], update_zone=False) |
|
|
| 1149 |
newRecord.open() |
1135 |
newRecord.open() |
| 1150 |
newRecord.delete() |
1136 |
newRecord.delete() |
| 1151 |
else: |
1137 |
else: |
|
Lines 1185-1192
def ucs_srv_record_create(s4connector, object):
Link Here
|
| 1185 |
ol_filter = format_escaped('(&(relativeDomainName={0!e})(zoneName={1!e}))', relativeDomainName, zoneName) |
1171 |
ol_filter = format_escaped('(&(relativeDomainName={0!e})(zoneName={1!e}))', relativeDomainName, zoneName) |
| 1186 |
searchResult = s4connector.lo.search(filter=ol_filter, unique=True) |
1172 |
searchResult = s4connector.lo.search(filter=ol_filter, unique=True) |
| 1187 |
if len(searchResult) > 0: |
1173 |
if len(searchResult) > 0: |
| 1188 |
superordinate = s4connector_get_superordinate('dns/srv_record', s4connector.lo, searchResult[0][0]) |
1174 |
newRecord = univention.admin.handlers.dns.srv_record.object(None, s4connector.lo, position=None, dn=searchResult[0][0], attributes=[], update_zone=False) |
| 1189 |
newRecord = univention.admin.handlers.dns.srv_record.object(None, s4connector.lo, position=None, dn=searchResult[0][0], superordinate=superordinate, attributes=[], update_zone=False) |
|
|
| 1190 |
newRecord.open() |
1175 |
newRecord.open() |
| 1191 |
if ucr_locations: |
1176 |
if ucr_locations: |
| 1192 |
ud.debug(ud.LDAP, ud.INFO, 'ucs_srv_record_create: do not write SRV record back from S4 to UCS because location of SRV record have been overwritten by UCR') |
1177 |
ud.debug(ud.LDAP, ud.INFO, 'ucs_srv_record_create: do not write SRV record back from S4 to UCS because location of SRV record have been overwritten by UCR') |
|
Lines 1203-1214
def ucs_srv_record_create(s4connector, object):
Link Here
|
| 1203 |
else: |
1188 |
else: |
| 1204 |
zoneDN = __get_zone_dn(s4connector, zoneName) |
1189 |
zoneDN = __get_zone_dn(s4connector, zoneName) |
| 1205 |
|
1190 |
|
| 1206 |
superordinate = s4connector_get_superordinate('dns/srv_record', s4connector.lo, zoneDN) |
|
|
| 1207 |
ud.debug(ud.LDAP, ud.INFO, 'ucs_srv_record_create: superordinate: %s' % superordinate) |
| 1208 |
|
| 1209 |
position = univention.admin.uldap.position(zoneDN) |
1191 |
position = univention.admin.uldap.position(zoneDN) |
| 1210 |
|
1192 |
|
| 1211 |
newRecord = univention.admin.handlers.dns.srv_record.object(None, s4connector.lo, position, dn=None, superordinate=superordinate, attributes=[], update_zone=False) |
1193 |
newRecord = univention.admin.handlers.dns.srv_record.object(None, s4connector.lo, position, dn=None, attributes=[], update_zone=False) |
| 1212 |
newRecord.open() |
1194 |
newRecord.open() |
| 1213 |
# Make syntax UDM compatible |
1195 |
# Make syntax UDM compatible |
| 1214 |
parts = univention.admin.handlers.dns.srv_record.unmapName([relativeDomainName]) |
1196 |
parts = univention.admin.handlers.dns.srv_record.unmapName([relativeDomainName]) |
|
Lines 1235-1242
def ucs_srv_record_delete(s4connector, object):
Link Here
|
| 1235 |
ol_filter = format_escaped('(&(relativeDomainName={0!e})(zoneName={1!e}))', relativeDomainName, zoneName) |
1217 |
ol_filter = format_escaped('(&(relativeDomainName={0!e})(zoneName={1!e}))', relativeDomainName, zoneName) |
| 1236 |
searchResult = s4connector.lo.search(filter=ol_filter, unique=True) |
1218 |
searchResult = s4connector.lo.search(filter=ol_filter, unique=True) |
| 1237 |
if len(searchResult) > 0: |
1219 |
if len(searchResult) > 0: |
| 1238 |
superordinate = s4connector_get_superordinate('dns/srv_record', s4connector.lo, searchResult[0][0]) |
1220 |
newRecord = univention.admin.handlers.dns.srv_record.object(None, s4connector.lo, position=None, dn=searchResult[0][0], attributes=[], update_zone=False) |
| 1239 |
newRecord = univention.admin.handlers.dns.srv_record.object(None, s4connector.lo, position=None, dn=searchResult[0][0], superordinate=superordinate, attributes=[], update_zone=False) |
|
|
| 1240 |
newRecord.open() |
1221 |
newRecord.open() |
| 1241 |
newRecord.delete() |
1222 |
newRecord.delete() |
| 1242 |
else: |
1223 |
else: |
|
Lines 1305-1312
def ucs_txt_record_create(s4connector, object):
Link Here
|
| 1305 |
ol_filter = format_escaped('(&(relativeDomainName={0!e})(zoneName={1!e}))', relativeDomainName, zoneName) |
1286 |
ol_filter = format_escaped('(&(relativeDomainName={0!e})(zoneName={1!e}))', relativeDomainName, zoneName) |
| 1306 |
searchResult = s4connector.lo.search(filter=ol_filter, unique=True) |
1287 |
searchResult = s4connector.lo.search(filter=ol_filter, unique=True) |
| 1307 |
if len(searchResult) > 0: |
1288 |
if len(searchResult) > 0: |
| 1308 |
superordinate = s4connector_get_superordinate('dns/txt_record', s4connector.lo, searchResult[0][0]) |
1289 |
foundRecord = univention.admin.handlers.dns.txt_record.object(None, s4connector.lo, position=None, dn=searchResult[0][0], attributes=[], update_zone=False) |
| 1309 |
foundRecord = univention.admin.handlers.dns.txt_record.object(None, s4connector.lo, position=None, dn=searchResult[0][0], superordinate=superordinate, attributes=[], update_zone=False) |
|
|
| 1310 |
foundRecord.open() |
1290 |
foundRecord.open() |
| 1311 |
|
1291 |
|
| 1312 |
# use normalized TXT records for comparison |
1292 |
# use normalized TXT records for comparison |
|
Lines 1323-1334
def ucs_txt_record_create(s4connector, object):
Link Here
|
| 1323 |
else: |
1303 |
else: |
| 1324 |
zoneDN = __get_zone_dn(s4connector, zoneName) |
1304 |
zoneDN = __get_zone_dn(s4connector, zoneName) |
| 1325 |
|
1305 |
|
| 1326 |
superordinate = s4connector_get_superordinate('dns/txt_record', s4connector.lo, zoneDN) |
|
|
| 1327 |
ud.debug(ud.LDAP, ud.INFO, 'ucs_txt_record_create: superordinate: %s' % superordinate) |
| 1328 |
|
| 1329 |
position = univention.admin.uldap.position(zoneDN) |
1306 |
position = univention.admin.uldap.position(zoneDN) |
| 1330 |
|
1307 |
|
| 1331 |
newRecord = univention.admin.handlers.dns.txt_record.object(None, s4connector.lo, position, dn=None, superordinate=superordinate, attributes=[], update_zone=False) |
1308 |
newRecord = univention.admin.handlers.dns.txt_record.object(None, s4connector.lo, position, dn=None, attributes=[], update_zone=False) |
| 1332 |
newRecord.open() |
1309 |
newRecord.open() |
| 1333 |
newRecord['name'] = relativeDomainName |
1310 |
newRecord['name'] = relativeDomainName |
| 1334 |
newRecord[udm_property] = c |
1311 |
newRecord[udm_property] = c |
|
Lines 1345-1352
def ucs_txt_record_delete(s4connector, object):
Link Here
|
| 1345 |
ol_filter = format_escaped('(&(relativeDomainName={0!e})(zoneName={1!e}))', relativeDomainName, zoneName) |
1322 |
ol_filter = format_escaped('(&(relativeDomainName={0!e})(zoneName={1!e}))', relativeDomainName, zoneName) |
| 1346 |
searchResult = s4connector.lo.search(filter=ol_filter, unique=True) |
1323 |
searchResult = s4connector.lo.search(filter=ol_filter, unique=True) |
| 1347 |
if len(searchResult) > 0: |
1324 |
if len(searchResult) > 0: |
| 1348 |
superordinate = s4connector_get_superordinate('dns/txt_record', s4connector.lo, searchResult[0][0]) |
1325 |
newRecord = univention.admin.handlers.dns.txt_record.object(None, s4connector.lo, position=None, dn=searchResult[0][0], attributes=[], update_zone=False) |
| 1349 |
newRecord = univention.admin.handlers.dns.txt_record.object(None, s4connector.lo, position=None, dn=searchResult[0][0], superordinate=superordinate, attributes=[], update_zone=False) |
|
|
| 1350 |
newRecord.open() |
1326 |
newRecord.open() |
| 1351 |
newRecord.delete() |
1327 |
newRecord.delete() |
| 1352 |
else: |
1328 |
else: |
|
Lines 1685-1691
def con2ucs(s4connector, key, object):
Link Here
|
| 1685 |
# ignore move |
1661 |
# ignore move |
| 1686 |
|
1662 |
|
| 1687 |
return True |
1663 |
return True |
| 1688 |
|
|
|
| 1689 |
|
| 1690 |
def s4connector_get_superordinate(module, lo, dn): |
| 1691 |
return univention.admin.objects.get_superordinate(module, None, lo, dn) |