svn commit: samba r9700 - in branches/SAMBA_4_0/source: lib/samba3
scripting/ejs
jelmer at samba.org
jelmer at samba.org
Sun Aug 28 01:37:28 GMT 2005
Author: jelmer
Date: 2005-08-28 01:37:27 +0000 (Sun, 28 Aug 2005)
New Revision: 9700
WebSVN: http://websvn.samba.org/cgi-bin/viewcvs.cgi?view=rev&root=samba&rev=9700
Log:
Change DATA_BLOB in ejs back to struct datablob
Support writing idmap mappings to winbind.ldif
Modified:
branches/SAMBA_4_0/source/lib/samba3/idmap.c
branches/SAMBA_4_0/source/lib/samba3/samba3.c
branches/SAMBA_4_0/source/lib/samba3/upgrade.c
branches/SAMBA_4_0/source/scripting/ejs/mprutil.c
Changeset:
Modified: branches/SAMBA_4_0/source/lib/samba3/idmap.c
===================================================================
--- branches/SAMBA_4_0/source/lib/samba3/idmap.c 2005-08-28 00:34:14 UTC (rev 9699)
+++ branches/SAMBA_4_0/source/lib/samba3/idmap.c 2005-08-28 01:37:27 UTC (rev 9700)
@@ -46,7 +46,7 @@
/* Open idmap repository */
if (!(tdb = tdb_open(fn, 0, TDB_DEFAULT, O_RDONLY, 0644))) {
- DEBUG(0, ("idmap_init: Unable to open idmap database\n"));
+ DEBUG(0, ("idmap_init: Unable to open idmap database '%s'\n", fn));
return NT_STATUS_UNSUCCESSFUL;
}
Modified: branches/SAMBA_4_0/source/lib/samba3/samba3.c
===================================================================
--- branches/SAMBA_4_0/source/lib/samba3/samba3.c 2005-08-28 00:34:14 UTC (rev 9699)
+++ branches/SAMBA_4_0/source/lib/samba3/samba3.c 2005-08-28 01:37:27 UTC (rev 9700)
@@ -107,7 +107,7 @@
samba3_read_grouptdb(dbfile, ctx, &ret->group);
SAFE_FREE(dbfile);
- asprintf(&dbfile, "%s/idmap.tdb", libdir);
+ asprintf(&dbfile, "%s/winbindd_idmap.tdb", libdir);
samba3_read_idmap(dbfile, ctx, &ret->idmap);
SAFE_FREE(dbfile);
Modified: branches/SAMBA_4_0/source/lib/samba3/upgrade.c
===================================================================
--- branches/SAMBA_4_0/source/lib/samba3/upgrade.c 2005-08-28 00:34:14 UTC (rev 9699)
+++ branches/SAMBA_4_0/source/lib/samba3/upgrade.c 2005-08-28 01:37:27 UTC (rev 9700)
@@ -109,16 +109,48 @@
return count;
}
-int samba3_upgrade_sam(struct samba3 *samba3, struct ldb_context *ctx, struct ldb_message ***msgs)
+int samba3_upgrade_sam(struct samba3 *samba3, struct ldb_context *ldb, struct ldb_message ***msgs)
{
+ int count = 0;
+ struct ldb_message *msg;
+ struct ldb_dn *domaindn = NULL;
+ *msgs = NULL;
+
+ /* Domain */
+ msg = msg_array_add(ldb, msgs, &count);
+
+ /* FIXME: Guess domain DN by taking ldap bind dn? */
+
/* FIXME */
return -1;
}
-int samba3_upgrade_winbind(struct samba3 *samba3, struct ldb_context *ctx, struct ldb_message ***msgs)
+int samba3_upgrade_winbind(struct samba3 *samba3, struct ldb_context *ldb, struct ldb_message ***msgs)
{
- /* FIXME */
- return -1;
+ int i;
+ int count = 0;
+ struct ldb_message *msg;
+ struct ldb_dn *basedn = NULL;
+ *msgs = NULL;
+
+ msg = msg_array_add(ldb, msgs, &count);
+
+ msg->dn = basedn;
+
+ ldb_msg_add_fmt(ldb, msg, "userHwm", "%d", samba3->idmap.user_hwm);
+ ldb_msg_add_fmt(ldb, msg, "groupHwm", "%d", samba3->idmap.group_hwm);
+
+ for (i = 0; i < samba3->idmap.mapping_count; i++) {
+ char *sid = dom_sid_string(msg, samba3->idmap.mappings[i].sid);
+ msg = msg_array_add(ldb, msgs, &count);
+
+ msg->dn = ldb_dn_build_child(ldb, "SID", sid, basedn);
+ ldb_msg_add_string(ldb, msg, "SID", sid);
+ ldb_msg_add_fmt(ldb, msg, "type", "%d", samba3->idmap.mappings[i].type);
+ ldb_msg_add_fmt(ldb, msg, "unixID", "%u", samba3->idmap.mappings[i].unix_id);
+ }
+
+ return count;
}
int samba3_upgrade_winsdb(struct samba3 *samba3, struct ldb_context *ldb, struct ldb_message ***msgs)
Modified: branches/SAMBA_4_0/source/scripting/ejs/mprutil.c
===================================================================
--- branches/SAMBA_4_0/source/scripting/ejs/mprutil.c 2005-08-28 00:34:14 UTC (rev 9699)
+++ branches/SAMBA_4_0/source/scripting/ejs/mprutil.c 2005-08-28 01:37:27 UTC (rev 9700)
@@ -323,7 +323,7 @@
struct MprVar mprDataBlob(DATA_BLOB blob)
{
struct MprVar res;
- DATA_BLOB *pblob = talloc(mprMemCtx(), DATA_BLOB);
+ struct datablob *pblob = talloc(mprMemCtx(), struct datablob);
*pblob = data_blob_talloc(pblob, blob.data, blob.length);
res = mprObject("DATA_BLOB");
@@ -337,9 +337,9 @@
/*
return a data blob from a mpr var created using mprDataBlob
*/
-struct data_blob *mprToDataBlob(struct MprVar *v)
+struct datablob *mprToDataBlob(struct MprVar *v)
{
- return talloc_get_type(mprGetPtr(v, "blob"), struct data_blob);
+ return talloc_get_type(mprGetPtr(v, "blob"), struct datablob);
}
/*
More information about the samba-cvs
mailing list