]> git.sur5r.net Git - bacula/bacula/commitdiff
Fix bug #1587 if you have clients with different catalogs configured, both catalogs...
authorKern Sibbald <kern@sibbald.com>
Sat, 26 Jun 2010 11:07:24 +0000 (13:07 +0200)
committerKern Sibbald <kern@sibbald.com>
Sat, 26 Jun 2010 11:09:02 +0000 (13:09 +0200)
bacula/src/dird/dird.c

index 38c20c8dd1e41447ff826875ca557c4009c5dfeb..78344390c907a011b159f29caf051872d519bc6e 100644 (file)
@@ -1003,6 +1003,14 @@ static bool check_catalog(cat_op mode)
       CLIENT *client;
       foreach_res(client, R_CLIENT) {
          CLIENT_DBR cr;
+         /* Create clients only if they use the current catalog */
+         if (client->catalog != catalog) {
+            Dmsg3(500, "Skip client=%s with cat=%s not catalog=%s\n",
+                  client->name(), client->catalog->name(), catalog->name());
+            continue;
+         }
+         Dmsg2(500, "create cat=%s for client=%s\n", 
+               client->catalog->name(), client->name());
          memset(&cr, 0, sizeof(cr));
          bstrncpy(cr.Name, client->name(), sizeof(cr.Name));
          db_create_client_record(NULL, db, &cr);