From: Kern Sibbald Date: Fri, 17 Jan 2003 16:26:21 +0000 (+0000) Subject: misc -- see kes-1.29 X-Git-Tag: Release-1.29~18 X-Git-Url: https://git.sur5r.net/?a=commitdiff_plain;h=4ad544dd1fa18cbcb44ecfb442cc1b38568ccd83;p=bacula%2Fbacula misc -- see kes-1.29 git-svn-id: https://bacula.svn.sourceforge.net/svnroot/bacula/trunk@302 91ce42f0-d328-0410-95d8-f526ca767f89 --- diff --git a/bacula/kernstodo b/bacula/kernstodo index 3f36b9c2ad..0424b68cc9 100644 --- a/bacula/kernstodo +++ b/bacula/kernstodo @@ -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). + diff --git a/bacula/src/dird/fd_cmds.c b/bacula/src/dird/fd_cmds.c index 2b8ba8dcb8..42df24fcde 100644 --- a/bacula/src/dird/fd_cmds.c +++ b/bacula/src/dird/fd_cmds.c @@ -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, "msg); diff --git a/bacula/src/filed/authenticate.c b/bacula/src/filed/authenticate.c index bd9fde945e..b6b23f975e 100644 --- a/bacula/src/filed/authenticate.c +++ b/bacula/src/filed/authenticate.c @@ -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")); } diff --git a/bacula/src/tools/dbcheck.c b/bacula/src/tools/dbcheck.c index 819b39e543..57d316c916 100644 --- a/bacula/src/tools/dbcheck.c +++ b/bacula/src/tools/dbcheck.c @@ -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