Univention Bugzilla – Bug 44117
Broken IPv6 links and not all server IP addresses are written to portal entries
Last modified: 2017-09-06 17:10:11 CEST
From portal.json: "links": [ "https://2001:…:ff12::a/univention/portal/", "http://2001:…:ff12::a/univention/portal/", "http://ucs-8844.orga.intranet/univention/portal/", "https://ucs-8844.orga.intranet/univention/portal/" ], ("…" added by me) This leads to four buttons. Two of which do nothing, because the IPv6 address is not properly encoded into the URL.
Created attachment 8674 [details] port4l
Bug 44371 addressed also the issue of multiple links being shown. The wrong IPv6 URIs probably still persist: > http://2001:…:ff12::a/foo should be: > http://[2001:…:ff12::a]/foo in order no to confuse the IPv6 address with ports. This is a problem in create_portal_entries.py, line 70: > return '%s://%s%s%s' % (self.protocol, self.host, port, self.path)
Created attachment 9109 [details] Proposed patch
(In reply to Alexander Kläser from comment #4) > Created attachment 9109 [details] > Proposed patch This would create correct IPv6 entries and it would write all addresses into the link entry. The following script snippet can be used to update all portal entries: https://help.univention.com/t/4-2-domain-join-script-fails/5403/6
(In reply to Alexander Kläser from comment #5) > This would create correct IPv6 entries and it would write all addresses into > the link entry. [...] Multiple addresses are properly handled via Bug 44371.
I adjusted the final patch again to properly use the API provided by the classes. univention-appcenter (6.0.9-2): r82068 | Bug #44117: Fix IPv6 URI format + add all IP addresses to portal entry univention-appcenter.yaml: r82069 | Bug #44117: added yaml file
master40.mydomain.intranet IP addresses 10.200.28.40 10.200.28.45 2001:470:71e6:28::2 2001:470:71e6:28::3 ------------------- Installing new app before the patch: "links": [ "https://10.200.28.40/dudle", "http://10.200.28.40/dudle", "https://master40.mydomain.intranet/dudle", "https://2001:470:71e6:28::2/dudle", "http://master40.mydomain.intranet/dudle", "http://2001:470:71e6:28::2/dudle" ], OK Installing new app after the patch: "links": [ "https://10.200.28.45/etherpad/", "http://[2001:470:71e6:28::2]/etherpad/", "https://master40.mydomain.intranet/etherpad/", "http://master40.mydomain.intranet/etherpad/", "http://10.200.28.45/etherpad/", "http://[2001:470:71e6:28::3]/etherpad/", "https://[2001:470:71e6:28::3]/etherpad/", "https://[2001:470:71e6:28::2]/etherpad/", "http://10.200.28.40/etherpad/", "https://10.200.28.40/etherpad/" ], (In reply to Alexander Kläser from comment #5) > (In reply to Alexander Kläser from comment #4) > > Created attachment 9109 [details] > > Proposed patch > > This would create correct IPv6 entries and it would write all addresses into > the link entry. The following script snippet can be used to update all > portal entries: > > https://help.univention.com/t/4-2-domain-join-script-fails/5403/6 The mentioned script did not do anything for me but changing a ucs/web/overview/entries/* ucr variables did update portal.json old link entries after update: "links": [ "https://2001:470:71e6:28::2/dudle", "http://2001:470:71e6:28::2/dudle", "https://10.200.28.45/dudle", "https://[2001:470:71e6:28::2]/dudle", "http://10.200.28.45/dudle", "https://[2001:470:71e6:28::3]/dudle", "http://[2001:470:71e6:28::3]/dudle", "http://[2001:470:71e6:28::2]/dudle", "https://10.200.28.40/dudle", "http://10.200.28.40/dudle", "https://master40.mydomain.intranet/dudle", "http://master40.mydomain.intranet/dudle" ], The old ipv6 addresses did not get removed but this is a general problem with changing a ucs/web/overview/entries/* ucr variable. (e.g. changing ucs/web/overview/entries/*/link) keeps the old link YAML: OK (r 82082 typo) -> verified
<http://errata.software-univention.de/ucs/4.2/158.html>