]> git.sur5r.net Git - bacula/bacula/commitdiff
misc -- see kes-1.29
authorKern Sibbald <kern@sibbald.com>
Fri, 17 Jan 2003 16:26:21 +0000 (16:26 +0000)
committerKern Sibbald <kern@sibbald.com>
Fri, 17 Jan 2003 16:26:21 +0000 (16:26 +0000)
git-svn-id: https://bacula.svn.sourceforge.net/svnroot/bacula/trunk@302 91ce42f0-d328-0410-95d8-f526ca767f89

bacula/kernstodo
bacula/src/dird/fd_cmds.c
bacula/src/filed/authenticate.c
bacula/src/tools/dbcheck.c
bacula/src/version.h

index 3f36b9c2ad358945be3f3534e07fcf4a45109c2f..0424b68cc945509630e44599c4d540fb38830f7e 100644 (file)
@@ -1,14 +1,12 @@
                  Kern's ToDo List
-                 14 January 2003 
+                 17 January 2003 
 
 Documentation to do: (a little bit at a time)
 - Document running a test version.
 - Document query file format.
 - Document static linking
-- Document fixing tape file after crash (update Media set VolFiles=xx
-  where MediaId=yy; update status to append).
 - Document fifo and | and <
-- Document g++ needed
+- Document how to automatically backup all local partitions
 
 
 Testing to do: (painful)
@@ -16,38 +14,27 @@ Testing to do: (painful)
 - blocksize recognition code.
 
 For 1.29 release:
-- Zap sd_auth_key after use
 - Priority job to go to top of list.
-- Add Bar code reading capabilities (new mtx-changer)
-- Add include list to end of chain in findlib
-- Look into Pruning/purging problems or why there seem to
-  be so many files listed each night.
+- Implement Bar code handling
 - Why is catreq.c:111 Find vol called twice for a job?
-- Fix cancel in find_one -- need jcr.
-- Cancel does not work for restore in FD.
-- Write SetJobStatus() function so cancel status not lost.
 - Find out why Full saves run slower and slower (hashing?)
 - Make 1.28c release ???
-- Rewrite find_one.c to use only pool_memory instead of 
-  alloca and malloc.
 - Make sure btraceback goes into /sbin not sysconf directory.
 - Get correct error status from run_program or open_bpipe().
 - Figure out how to allow multiple simultaneous file Volumes on
   a single device.
 - Why are save/restore of device different sizes (sparse?)   Yup! Fix it.
 
-- Implement some why for the Console to dynamically create a job.
+- Implement some way for the Console to dynamically create a job.
 - Restore to a particular time -- e.g. before date, after date. 
 - Implement SHA1
 - Implement disk spooling
 - Implement finer multiprocessing options.
 - Solaris -I on tar for include list
 - Add whereabslinks to where or not where absolute links
-- Figure out some way to automatically backup all local partitions
 - Enable avoid backing up archive device (findlib/find_one.c:128)
 - Implement FileOptions (see end of this document)
 - Implement Bacula plugins -- design API
-- Make hash table for linked files in findlib/find_one.c:161
 - Make bcopy read through bad tape records.
 - Need a verbose mode in restore, perhaps to bsr.
 - bscan without -v is too quiet -- perhaps show jobs.
@@ -758,3 +745,17 @@ w.a.sellers@larc.nasa.gov
 ==============================================
 
 Done: (see kernsdone for more)
+- Look into Pruning/purging problems or why there seem to
+  be so many files listed each night.
+- Fix cancel in find_one -- need jcr.
+- Cancel does not work for restore in FD.
+- Write SetJobStatus() function so cancel status not lost.
+- Add include list to end of chain in findlib
+- Zap sd_auth_key after use
+- Add Bar code reading capabilities (new mtx-changer)
+- Figure out some way to automatically backup all local partitions
+- Make hash table for linked files in findlib/find_one.c:161
+  (not necessary)
+- Rewrite find_one.c to use only pool_memory instead of 
+  alloca and malloc (probably not necessary).
+
index 2b8ba8dcb8d4bdb884d620e8ddac07d5d3c73a8f..42df24fcdec70c04bb72da6cde91febe1c57698e 100644 (file)
@@ -85,6 +85,7 @@ int connect_to_file_daemon(JCR *jcr, int retry_interval, int max_retry_time,
     */
    bnet_fsend(fd, jobcmd, jcr->JobId, jcr->Job, jcr->VolSessionId, 
       jcr->VolSessionTime, jcr->sd_auth_key);
+   memset(jcr->sd_auth_key, 0, strlen(jcr->sd_auth_key));
    Dmsg1(110, ">filed: %s", fd->msg);
    if (bnet_recv(fd) > 0) {
        Dmsg1(110, "<filed: %s", fd->msg);
index bd9fde945eeba4cfdbe1eb09059b2233a375e1d4..b6b23f975e113ff3ff251db0f0b9cb71492710f7 100644 (file)
@@ -111,6 +111,7 @@ int authenticate_storagedaemon(JCR *jcr)
 
    stat = cram_md5_get_auth(sd, jcr->sd_auth_key) &&
          cram_md5_auth(sd, jcr->sd_auth_key);
+   memset(jcr->sd_auth_key, 0, strlen(jcr->sd_auth_key));
    if (!stat) {
       Jmsg(jcr, M_FATAL, 0, _("Authorization key rejected by Storage daemon.\n"));
    }
index 819b39e543d896a0fc52645900df2000bcf11b10..57d316c916b1989f76286265f9125d74c5a933db 100644 (file)
@@ -451,12 +451,12 @@ static void eliminate_duplicate_filenames()
         /* Get all the Ids of each name */
         db_escape_string(esc_name, name_list.name[i], strlen(name_list.name[i]));
          sprintf(buf, "SELECT FilenameId FROM Filename WHERE Name='%s'", esc_name);
-        if (verbose) {
-            printf("Doing: %s\n", name_list.name[i]);
-        }
         if (!make_id_list(buf, &id_list)) {
            exit(1);
         }
+        if (verbose) {
+            printf("Found %d for: %s\n", id_list.num_ids, name_list.name[i]);
+        }
         /* Force all records to use the first id then delete the other ids */
         for (int j=1; j<id_list.num_ids; j++) {
             sprintf(buf, "UPDATE File SET FilenameId=%u WHERE FilenameId=%u", 
@@ -496,12 +496,13 @@ static void eliminate_duplicate_paths()
         /* Get all the Ids of each name */
         db_escape_string(esc_name, name_list.name[i], strlen(name_list.name[i]));
          sprintf(buf, "SELECT PathId FROM Path WHERE Path='%s'", esc_name);
-        if (verbose) {
-            printf("Doing: %s\n", name_list.name[i]);
-        }
+        id_list.num_ids = 0;
         if (!make_id_list(buf, &id_list)) {
            exit(1);
         }
+        if (verbose) {
+            printf("Found %d for: %s\n", id_list.num_ids, name_list.name[i]);
+        }
         /* Force all records to use the first id then delete the other ids */
         for (int j=1; j<id_list.num_ids; j++) {
             sprintf(buf, "UPDATE File SET PathId=%u WHERE PathId=%u", 
index d64deea98c880a9466d533412625a7747138d217..0f5a984c52260c76da970ad5614b078f4a23b93f 100644 (file)
@@ -1,8 +1,8 @@
 /* */
 #define VERSION "1.29"
 #define VSTRING "1"
-#define DATE    "16 January 2003"
-#define LSMDATE "16Jan03"
+#define DATE    "17 January 2003"
+#define LSMDATE "17Jan03"
 
 /* Debug flags */
 #define DEBUG 1