[yast-commit] r63166 - in /trunk/ldap-client: VERSION package/yast2-ldap-client.changes src/Ldap.ycp testsuite/tests/Export.out testsuite/tests/Export.ycp testsuite/tests/Read.out testsuite/tests/Read.ycp
Author: jsuchome Date: Wed Jan 12 13:19:05 2011 New Revision: 63166 URL: http://svn.opensuse.org/viewcvs/yast?rev=63166&view=rev Log: - write uri instead of just host name to ldap.conf and sssd.conf (bnc#663012) - 2.20.5 Modified: trunk/ldap-client/VERSION trunk/ldap-client/package/yast2-ldap-client.changes trunk/ldap-client/src/Ldap.ycp trunk/ldap-client/testsuite/tests/Export.out trunk/ldap-client/testsuite/tests/Export.ycp trunk/ldap-client/testsuite/tests/Read.out trunk/ldap-client/testsuite/tests/Read.ycp Modified: trunk/ldap-client/VERSION URL: http://svn.opensuse.org/viewcvs/yast/trunk/ldap-client/VERSION?rev=63166&r1=63165&r2=63166&view=diff ============================================================================== --- trunk/ldap-client/VERSION (original) +++ trunk/ldap-client/VERSION Wed Jan 12 13:19:05 2011 @@ -1 +1 @@ -2.20.4 +2.20.5 Modified: trunk/ldap-client/package/yast2-ldap-client.changes URL: http://svn.opensuse.org/viewcvs/yast/trunk/ldap-client/package/yast2-ldap-client.changes?rev=63166&r1=63165&r2=63166&view=diff ============================================================================== --- trunk/ldap-client/package/yast2-ldap-client.changes (original) +++ trunk/ldap-client/package/yast2-ldap-client.changes Wed Jan 12 13:19:05 2011 @@ -1,4 +1,11 @@ ------------------------------------------------------------------- +Wed Jan 12 12:58:31 CET 2011 - jsuchome@suse.cz + +- write uri instead of just host name to ldap.conf and sssd.conf + (bnc#663012) +- 2.20.5 + +------------------------------------------------------------------- Fri Jan 7 12:11:38 CET 2011 - jsuchome@suse.cz - call c_rehash after downloading certificate (bnc#662937) Modified: trunk/ldap-client/src/Ldap.ycp URL: http://svn.opensuse.org/viewcvs/yast/trunk/ldap-client/src/Ldap.ycp?rev=63166&r1=63165&r2=63166&view=diff ============================================================================== --- trunk/ldap-client/src/Ldap.ycp (original) +++ trunk/ldap-client/src/Ldap.ycp Wed Jan 12 13:19:05 2011 @@ -32,6 +32,7 @@ import "Stage"; import "String"; import "Summary"; + import "URL"; /** * show popups with error messages? @@ -643,6 +644,35 @@ return oes; } + // convert list of uri's to list of hosts + string uri2servers (string uri) { + return mergestring (maplist (string u, splitstring (uri, " \t"), { + map url = URL::Parse (u); + string h = url["host"]:""; + if (url["port"]:"" != "") + h = sformat ("%1:%2", h, url["port"]:""); + return h; + }), " "); + } + + /** + * Read values of LDAP hosts from ldap.conf + * get them from 'uri' or 'host' values + */ + global string ReadLdapHosts () { + string ret = ""; + string uri = ReadLdapConfEntry ("uri", ""); + if (uri == "") + { + ret = ReadLdapConfEntry ("host", ""); + } + else + { + ret = uri2servers (uri); + } + return ret; + } + /** * Reads LDAP settings from the SCR * @return success @@ -689,7 +719,8 @@ size (nsswitch["passwd_compat"]:[]) == 0)); nis_available = nis_available && (Service::Status ("ypbind") == 0); - server = ReadLdapConfEntry ("host", ""); + server = ReadLdapHosts (); + base_dn = ReadLdapConfEntry ("base", ""); old_base_dn = base_dn; @@ -975,7 +1006,7 @@ if (bind_pass == nil && servers == "") { y2milestone ("--- server not read yet or empty, reading now"); - servers = ReadLdapConfEntry ("host", ""); + servers = ReadLdapHosts (); } list l_servers = splitstring (servers, " \t"); @@ -989,7 +1020,7 @@ if (bind_pass == nil && servers == "") { y2milestone ("--- server not read yet or empty, reading now"); - servers = ReadLdapConfEntry ("host", ""); + servers = ReadLdapHosts (); } list l_servers = splitstring (servers, " \t"); @@ -1908,8 +1939,23 @@ map out = (map)SCR::Execute(.target.bash_output, "/bin/rpm -V openldap2-client"); - list open_host = (list) SCR::Read - (.etc.ldap_conf.v."/etc/openldap/ldap.conf".host); + list open_host = []; + list open_uri = (list) SCR::Read + (.etc.ldap_conf.v."/etc/openldap/ldap.conf".uri); + if (open_uri == []) + { + open_uri = (list) SCR::Read + (.etc.ldap_conf.v."/etc/openldap/ldap.conf".URI); + } + if (open_uri == []) + { + open_host = (list) SCR::Read + (.etc.ldap_conf.v."/etc/openldap/ldap.conf".host); + } + else + { + open_host = [ uri2servers (open_uri[0]:"")]; + } list open_base = (list) SCR::Read (.etc.ldap_conf.v."/etc/openldap/ldap.conf".base); @@ -1925,8 +1971,16 @@ if (write_openldap_conf) { // update ldap.conf - SCR::Write (.etc.ldap_conf.v."/etc/openldap/ldap.conf".host, - [server]); + SCR::Write (.etc.ldap_conf.v."/etc/openldap/ldap.conf".host, nil); + + string uri = mergestring ( + maplist (string u, splitstring (server, " \t"), { + return "ldap://" + u; + }), " "); + + SCR::Write (.etc.ldap_conf.v."/etc/openldap/ldap.conf".uri, + [uri]); + SCR::Write(.etc.ldap_conf.v."/etc/openldap/ldap.conf".base, [base_dn]); @@ -1970,7 +2024,7 @@ path domain = add (.etc.sssd_conf.v, "domain/default"); - string uri = sformat ("ldap%1://%2", ldap_tls ? "s" : "", String::FirstChunk (server, " \t")); + string uri = sformat ("ldap://%1", String::FirstChunk (server, " \t")); SCR::Write (add (domain, "ldap_uri"), uri); SCR::Write (add (domain, "ldap_search_base"), base_dn); SCR::Write (add (domain, "ldap_schema"), "rfc2307bis"); @@ -2433,7 +2487,12 @@ if (modified) { // update ldap.conf - WriteLdapConfEntry ("host", server); + WriteLdapConfEntry ("host", nil); + string uri = mergestring ( + maplist (string u, splitstring (server, " \t"), { + return "ldap://" + u; + }), " "); + WriteLdapConfEntry ("uri", uri); WriteLdapConfEntry ("base", base_dn); if (member_attribute != old_member_attribute) Modified: trunk/ldap-client/testsuite/tests/Export.out URL: http://svn.opensuse.org/viewcvs/yast/trunk/ldap-client/testsuite/tests/Export.out?rev=63166&r1=63165&r2=63166&view=diff ============================================================================== --- trunk/ldap-client/testsuite/tests/Export.out (original) +++ trunk/ldap-client/testsuite/tests/Export.out Wed Jan 12 13:19:05 2011 @@ -1,4 +1,5 @@ Dump ==== reading... ============================ +Read .etc.ldap_conf.v."/etc/ldap.conf"."uri" nil Read .etc.ldap_conf.v."/etc/ldap.conf"."host" "localhost" Read .etc.ldap_conf.v."/etc/ldap.conf"."base" "dc=suse,dc=cz" Read .etc.ldap_conf.v."/etc/ldap.conf"."ldap_version" nil Modified: trunk/ldap-client/testsuite/tests/Export.ycp URL: http://svn.opensuse.org/viewcvs/yast/trunk/ldap-client/testsuite/tests/Export.ycp?rev=63166&r1=63165&r2=63166&view=diff ============================================================================== --- trunk/ldap-client/testsuite/tests/Export.ycp (original) +++ trunk/ldap-client/testsuite/tests/Export.ycp Wed Jan 12 13:19:05 2011 @@ -31,7 +31,8 @@ "pam_password": "crypt", "tls_cacertdir" : "/etc/openldap/cacerts/", "tls_cacertfile": nil, - "tls_checkpeer" : nil + "tls_checkpeer" : nil, + "uri" : nil ] ] ], Modified: trunk/ldap-client/testsuite/tests/Read.out URL: http://svn.opensuse.org/viewcvs/yast/trunk/ldap-client/testsuite/tests/Read.out?rev=63166&r1=63165&r2=63166&view=diff ============================================================================== --- trunk/ldap-client/testsuite/tests/Read.out (original) +++ trunk/ldap-client/testsuite/tests/Read.out Wed Jan 12 13:19:05 2011 @@ -1,5 +1,5 @@ Dump ==== reading... ============================ -Read .etc.ldap_conf.v."/etc/ldap.conf"."host" "localhost" +Read .etc.ldap_conf.v."/etc/ldap.conf"."uri" "ldap://localhost:333" Read .etc.ldap_conf.v."/etc/ldap.conf"."base" "dc=suse,dc=cz" Read .etc.ldap_conf.v."/etc/ldap.conf"."ldap_version" nil Read .etc.ldap_conf.v."/etc/ldap.conf"."ssl" nil @@ -22,3 +22,4 @@ Dump nsswitch: -$["group":["compat"], "group_compat":["ldap"], "passwd":["compat"], "passwd_compat":["ldap"]]- Dump base config DN: -- Dump bind DN: -uid=manager,dc=suse,dc=cz- +Dump server: -localhost:333- Modified: trunk/ldap-client/testsuite/tests/Read.ycp URL: http://svn.opensuse.org/viewcvs/yast/trunk/ldap-client/testsuite/tests/Read.ycp?rev=63166&r1=63165&r2=63166&view=diff ============================================================================== --- trunk/ldap-client/testsuite/tests/Read.ycp (original) +++ trunk/ldap-client/testsuite/tests/Read.ycp Wed Jan 12 13:19:05 2011 @@ -31,7 +31,8 @@ "pam_password": "crypt", "tls_cacertdir" : "/etc/openldap/cacerts/", "tls_cacertfile": nil, - "tls_checkpeer" : "no" + "tls_checkpeer" : "no", + "uri" : "ldap://localhost:333" ] ] ], @@ -102,4 +103,6 @@ DUMP ( sformat ("base config DN: -%1-", Ldap::base_config_dn) ); DUMP ( sformat ("bind DN: -%1-", Ldap::bind_dn) ); + + DUMP ( sformat ("server: -%1-", Ldap::server) ); } -- To unsubscribe, e-mail: yast-commit+unsubscribe@opensuse.org For additional commands, e-mail: yast-commit+help@opensuse.org
participants (1)
-
jsuchome@svn2.opensuse.org