Author: brad
Date: 2005-08-26 04:56:09 +0000 (Fri, 26 Aug 2005)
New Revision: 9633

WebSVN: http://websvn.samba.org/cgi-bin/viewcvs.cgi?view=rev&root=samba&rev=9633

Log:
 [EMAIL PROTECTED]:  jelmer | 2005-08-25 16:57:56 -0600
 Support writing wins.ldif
 

Modified:
   branches/SOC/SAMBA_4_0/
   branches/SOC/SAMBA_4_0/source/lib/samba3/upgrade.c


Changeset:

Property changes on: branches/SOC/SAMBA_4_0
___________________________________________________________________
Name: svk:merge
   - 0c0555d6-39d7-0310-84fc-f1cc0bd64818:/branches/SAMBA_4_0:9623
d349723c-e9fc-0310-b8a8-fdedf1c27407:/local/SAMBA_4_0:5616
d349723c-e9fc-0310-b8a8-fdedf1c27407:/local/samba-SAMBA_4_0:5609
   + 0c0555d6-39d7-0310-84fc-f1cc0bd64818:/branches/SAMBA_4_0:9624
d349723c-e9fc-0310-b8a8-fdedf1c27407:/local/SAMBA_4_0:5616
d349723c-e9fc-0310-b8a8-fdedf1c27407:/local/samba-SAMBA_4_0:5609

Modified: branches/SOC/SAMBA_4_0/source/lib/samba3/upgrade.c
===================================================================
--- branches/SOC/SAMBA_4_0/source/lib/samba3/upgrade.c  2005-08-26 04:55:59 UTC 
(rev 9632)
+++ branches/SOC/SAMBA_4_0/source/lib/samba3/upgrade.c  2005-08-26 04:56:09 UTC 
(rev 9633)
@@ -121,8 +121,29 @@
        return -1;
 }
 
-int samba3_upgrade_winsdb(struct samba3 *samba3, struct ldb_context *ctx, 
struct ldb_message ***msgs)
+int samba3_upgrade_winsdb(struct samba3 *samba3, struct ldb_context *ldb, 
struct ldb_message ***msgs)
 {
-       /* FIXME */
-       return -1;
+       int i;
+       int count = 0;
+       
+       for (i = 0; i < samba3->winsdb_count; i++) {
+               struct samba3_winsdb_entry *e = &samba3->winsdb_entries[i];
+               int j;
+               struct ldb_message *msg = msg_array_add(ldb, msgs, &count);
+
+               msg->dn = ldb_dn_string_compose(ldb, NULL, "type=%d,name=%s", 
e->type, e->name);
+
+               ldb_msg_add_string(ldb, msg, "name", e->name);
+               ldb_msg_add_fmt(ldb, msg, "type", "%d", e->type);
+               ldb_msg_add_string(ldb, msg, "objectClass", "wins");
+               ldb_msg_add_fmt(ldb, msg, "nbFlags", "%x", e->nb_flags);
+               ldb_msg_add_string(ldb, msg, "expires", 
+                                 ldap_timestring(msg, e->ttl));
+
+               for (j = 0; j < e->ip_count; j++) {
+                       ldb_msg_add_string(ldb, msg, "address", 
sys_inet_ntoa(e->ips[j]));
+               }
+       }
+
+       return count;
 }

Reply via email to