svn commit: samba r25921 - in branches/SAMBA_4_0/source:
ldap_server scripting/libjs setup
abartlet at samba.org
abartlet at samba.org
Sat Nov 10 05:31:27 GMT 2007
Author: abartlet
Date: 2007-11-10 05:31:26 +0000 (Sat, 10 Nov 2007)
New Revision: 25921
WebSVN: http://websvn.samba.org/cgi-bin/viewcvs.cgi?view=rev&root=samba&rev=25921
Log:
Now also listen on ldapi by default in the LDAP server
Create a phpLDAPadmin configuration file example to use ldapi to talk
to Samba4
Andrew Bartlett
Added:
branches/SAMBA_4_0/source/setup/phpldapadmin-config.php
Modified:
branches/SAMBA_4_0/source/ldap_server/ldap_server.c
branches/SAMBA_4_0/source/scripting/libjs/provision.js
Changeset:
Modified: branches/SAMBA_4_0/source/ldap_server/ldap_server.c
===================================================================
--- branches/SAMBA_4_0/source/ldap_server/ldap_server.c 2007-11-09 19:24:51 UTC (rev 25920)
+++ branches/SAMBA_4_0/source/ldap_server/ldap_server.c 2007-11-10 05:31:26 UTC (rev 25921)
@@ -509,6 +509,7 @@
*/
static void ldapsrv_task_init(struct task_server *task)
{
+ char *ldapi_path;
struct ldapsrv_service *ldap_service;
NTSTATUS status;
const struct model_ops *model_ops;
@@ -556,6 +557,19 @@
if (!NT_STATUS_IS_OK(status)) goto failed;
}
+ ldapi_path = private_path(ldap_service, global_loadparm, "ldapi");
+ if (!ldapi_path) {
+ goto failed;
+ }
+
+ status = stream_setup_socket(task->event_ctx, model_ops, &ldap_stream_ops,
+ "unix", ldapi_path, NULL, ldap_service);
+ talloc_free(ldapi_path);
+ if (!NT_STATUS_IS_OK(status)) {
+ DEBUG(0,("ldapsrv failed to bind to %s - %s\n",
+ ldapi_path, nt_errstr(status)));
+ }
+
return;
failed:
Modified: branches/SAMBA_4_0/source/scripting/libjs/provision.js
===================================================================
--- branches/SAMBA_4_0/source/scripting/libjs/provision.js 2007-11-09 19:24:51 UTC (rev 25920)
+++ branches/SAMBA_4_0/source/scripting/libjs/provision.js 2007-11-10 05:31:26 UTC (rev 25921)
@@ -162,6 +162,7 @@
/* delete the specials */
ldb.del("@INDEXLIST");
ldb.del("@ATTRIBUTES");
+ ldb.del("@OPTIONS");
ldb.del("@MODULES");
ldb.del("@PARTITION");
ldb.del("@KLUDGEACL");
@@ -393,6 +394,9 @@
paths.ldap_config_basedn_ldif = paths.ldapdir + "/" + dnsdomain + "-config.ldif";
paths.ldap_schema_basedn_ldif = paths.ldapdir + "/" + dnsdomain + "-schema.ldif";
+ paths.s4_ldapi_socket = lp.get("private dir") + "/ldapi";
+ paths.phpldapadminconfig = lp.get("private dir") + "/phpldapadmin-config.php";
+
paths.sysvol = lp.get("sysvol", "path");
if (paths.sysvol == undefined) {
@@ -489,6 +493,9 @@
var ldap_path_list = split("/", paths.ldapdir);
subobj.LDAPI_URI = "ldapi://" + join("%2F", ldap_path_list) + "%2Fldapi";
+ var s4ldap_path_list = split("/", paths.s4_ldapi_socket);
+ subobj.S4_LDAPI_URI = "ldapi://" + join("%2F", s4ldap_path_list);
+
subobj.LDAPMANAGERDN = "cn=Manager," + subobj.DOMAINDN;
subobj.NETLOGONPATH = paths.netlogon;
@@ -794,6 +801,10 @@
assert(commit_ok);
}
+ message("Setting up phpLDAPadmin configuration\n");
+ setup_file("phpldapadmin-config.php", info.message, paths.phpldapadminconfig, subobj);
+ message("Please install the phpLDAPadmin configuration located at " + paths.phpldapadminconfig + " into /etc/phpldapadmin/config.php\n");
+
return true;
}
Added: branches/SAMBA_4_0/source/setup/phpldapadmin-config.php
===================================================================
--- branches/SAMBA_4_0/source/setup/phpldapadmin-config.php 2007-11-09 19:24:51 UTC (rev 25920)
+++ branches/SAMBA_4_0/source/setup/phpldapadmin-config.php 2007-11-10 05:31:26 UTC (rev 25921)
@@ -0,0 +1,28 @@
+<?php
+/**
+ * The phpLDAPadmin config file, customised for use with Samba4
+ * This overrides phpLDAPadmin defaults
+ * that are defined in config_default.php.
+ *
+ * DONT change config_default.php, you changes will be lost by the next release
+ * of PLA. Instead change this file - as it will NOT be replaced by a new
+ * version of phpLDAPadmin.
+ */
+
+/*********************************************/
+/* Useful important configuration overrides */
+/*********************************************/
+
+/* phpLDAPadmin can encrypt the content of sensitive cookies if you set this
+ to a big random string. */
+
+$i=0;
+$ldapservers = new LDAPServers;
+
+/* A convenient name that will appear in the tree viewer and throughout
+ phpLDAPadmin to identify this LDAP server to users. */
+$ldapservers->SetValue($i,'server','name','Samba4 LDAP Server');
+$ldapservers->SetValue($i,'server','host','${S4_LDAPI_URI}');
+$ldapservers->SetValue($i,'server','auth_type','session');
+$ldapservers->SetValue($i,'login','attr','dn');
+?>
More information about the samba-cvs
mailing list