Univention Bugzilla – Bug 40937
Synchronization of uppercase SRV records fails (sync to ucs)
Last modified: 2021-05-14 15:41:14 CEST
Created attachment 7560 [details] dnsSRVName_ipProtocolSRV.patch Ticket 2016032221000661 reported a traceback during synchronization of an uppercase SRV record. The problem is caused by the protocol part being uppercase ("_TCP") and getting ignored by the ipProtocolSRV subsyntax of the dnsSRVName UDM syntax. The attached patch is a dumb minimal fix that resolved the issue for the customer. In the product I would expect the syntax to additionally raise an error and rejecting setting syntactically invalid value instead of throwing it away silently. This was the traceback: ======================================================================== 23.03.2016 10:24:30,793 LDAP (PROCESS): sync to ucs: Resync rejected dn: DC=_VLMCS._TCP,DC=mydom.local,CN=MicrosoftDNS,CN=System,DC=mydom,DC=local 23.03.2016 10:24:30,834 LDAP (PROCESS): sync to ucs: [ dns] [ add] relativeDomainName=_VLMCS._TCP,zonename=mydom.local,cn=dns,dc=mydom,dc=local 23.03.2016 10:24:30,836 LDAP (ERROR ): Unknown Exception during sync_to_ucs 23.03.2016 10:24:30,836 LDAP (ERROR ): Traceback (most recent call last): File "/usr/lib/pymodules/python2.7/univention/s4connector/__init__.py", line 1438, in sync_to_ucs result = self.property[property_type].ucs_sync_function(self, property_type, object) File "/usr/lib/pymodules/python2.7/univention/s4connector/s4/dns.py", line 1456, in con2ucs ucs_srv_record_create(s4connector, object) File "/usr/lib/pymodules/python2.7/univention/s4connector/s4/dns.py", line 1105, in ucs_srv_record_create newRecord.create() File "/usr/lib/pymodules/python2.7/univention/admin/handlers/__init__.py", line 352, in create return self._create() File "/usr/lib/pymodules/python2.7/univention/admin/handlers/__init__.py", line 685, in _create self._ldap_pre_create() File "/usr/lib/pymodules/python2.7/univention/admin/handlers/dns/srv_record.py", line 148, in _ldap_pre_create self.dn='%s=%s,%s' % (mapping.mapName('name'), mapping.mapValue('name', self['name']), self.position.getDn()) File "/usr/lib/pymodules/python2.7/univention/admin/mapping.py", line 193, in mapValue__vlmcs._tc res=self._map[map_name][1](value) File "/usr/lib/pymodules/python2.7/univention/admin/handlers/dns/srv_record.py", line 108, in mapName return '_{0}._{1}'.format( *old[ : 2 ] ) IndexError: tuple index out of range ======================================================================== Please note that the patch referred to by Bug 35780 did not help in this case. Instead it made the problem worse: With that patch the S4-Connector created a record relativeDomainName=VLMCS,zonename=mydom.local,cn=dns,dc=mydom,dc=local in UCS, which then was synchronized back to AD as DC=VLMCS. Bug 35780 simply addresses a different issue.
Created attachment 8384 [details] whitespaces were deleted
The old patch dnsSRVName_ipProtocolSRV.patch could not be applied since 11.0.3-46 I attached a new one (ipProtocolSRV_2.patch)
This issue has been filled against UCS 4.1. The maintenance with bug and security fixes for UCS 4.1 has ended on 5st of April 2018. Customers still on UCS 4.1 are encouraged to update to UCS 4.3. Please contact your partner or Univention for any questions. If this issue still occurs in newer UCS versions, please use "Clone this bug" or simply reopen the issue. In this case please provide detailed information on how this issue is affecting you.
Still an issue, patch available.
This issue has been filed against UCS 4.3. UCS 4.3 is out of maintenance and many UCS components have changed in later releases. Thus, this issue is now being closed. If this issue still occurs in newer UCS versions, please use "Clone this bug" or reopen it and update the UCS version. In this case please provide detailed information on how this issue is affecting you.