15Apr06
- Correct Makefile bug found by Dan Langille.
14Apr06
- Correct Makefile for Solaris /bin/sh
- Correct mtx-changer.in for Solaris /bin/sh
- Abort if a conf resource does not have a Name =
12Apr06
- Change the name of the regex program to bregex.
- Add the bwild program to the tools directory. It is similar
to the bregex program.
- Implement create bregex.h and bregex.c in src/lib from the
Python regexp program.
- Use the new bregex.c to implement Regex expressions on Win32.
11Apr06
- More work on migration.
- Implement wild program in tools directory for testing
wild-cards. Almost identical to the regex program.
- Up port VSS single thread locking code.
- Replace N_(..) by NT_(...) to inhibit translation of
commands.
- Modify Makefile to change the permissions on Working Directory
to 770 if the directory is created.
- Do not fail the Makefile if changing the permissions or
owner/group on WorkingDir fails.
- Remove early selection of Scratch Volumes in the recycling
algorithm.
- Correct the old recycling algorithm so that Scratch Volumes
are selected when looking for a Volume in the changer.
- Correct a typo in the Verify SQL reported by Joe Park.
10Apr06
- Remove automatic case folding on Windows FDs. You must
explictly use the 'Ignore Case = yes' option.
- Remove the code added to 1.38.6 and 1.38.7 that pulls a
scratch volume in an Autochanger early in the 'recycling'
algorithm.
- Tweak license to include Microsoft restrictions.
- Move mysql.reconnect to after real_connect(). Thanks to
Frank Sweetser for the patch.
- Disallow a backslash in a File = directive (Windows junk)
unless the string is quoted.
- Apply Eric's patch to ua_label.c so that daemon protocol
is not translated.
- Add NT_ definition for strings that should not be translated.
- Apply NT_() to ua_label.c
- Remove timed wait for VSS on Win2K3 as it is not yet
implemented.
- Correct bacula.in script to reference bacula-ctl-xx in the
sysconfig directory rather than the bin directory.
26Mar06
- Fix a long standing bug in the bacula start/stop scripts.
- Attempt to add the new bacula-ctl-* files to the rpm.
- Switch to using typeof() for list traversing to avoid
as many FC5 g++ compiler warnings as possible.
25Mar06
- Split the bacula start/start script into four files:
bacula -- starts and stops calling other scripts
bacula-ctl-dir -- starts/stops the director
bacula-ctl-fd -- starts/stops the File daemon
bacula-ctl-sd -- starts/stops the Storage daemon
Kern Sibbald [Sat, 25 Mar 2006 13:35:28 +0000 (13:35 +0000)]
Split the bacula start/start script into four files:
bacula -- starts and stops calling other scripts
bacula-ctl-dir -- starts/stops the director
bacula-ctl-fd -- starts/stops the File daemon
bacula-ctl-sd -- starts/stops the Storage daemon
Kern Sibbald [Fri, 24 Mar 2006 16:37:56 +0000 (16:37 +0000)]
24Mar06
- Create datestyle fix for PostgreSQL. Fixes bug #574.
- Correct editing of JobId from int to int64 in fd_cmds.c
- Eliminate FileSet name race with bash_spaces() and multiple
threads by bashing in a local.
- Fix error return from 'use storage' to print a correct error
message rather than nothing.
- Correct false re-read last block error message when two jobs
are simultaneously writing at the end of a tape.
- Simplify exit conditions in the reserve.c code to avoid
possible non-release of reservation_lock().
- Suffle lock order in reserve to avoid deadlock between
reservation lock and device mutex.
21Mar06
- Initialize jcr mutex before first use.
Kern Sibbald [Fri, 17 Mar 2006 17:42:42 +0000 (17:42 +0000)]
17Mar06
- Implement regex test program in tools directory.
- Attempt to fix time problem with bsmtp with foreign langs.
- Add strip_trailing_newline() submitted by user.
- Implement regex matching in migrate.c
16Mar06
- Fix bug #537 to allow arbitrary time to mount a volume for
restore, if polling is turned on.
- If dir_user or dir-group is specified in ./configure apply it to
the working-dir. Fixes bug #533.
- If rescheduling a job cancel the previous incarnation with the SD.
Fixes bugs #566 and 557.
- Fix bug #567 do_message() definition type conflict.
Kern Sibbald [Tue, 14 Mar 2006 19:37:20 +0000 (19:37 +0000)]
- Add more jcr methods and make mutex and use_count private.
- Create lock/unlock methods for jcr.
- Fix PostgreSQL bug doing sql_data_seeek() by explicitly reading
records to get to seek position.
- Integrate patch from bug #561 to correct conio.c signal definitions.
- Fix Rescheduling failed Jobs. Ensure that SD message thread
terminates correctly by doing pthread_kill(). Do not destroy
SD cond wait variable between executions of the job. Use local
mutex for cond variable to avoid blocking jcr chain. Fix poor
use of jcr use count in jobq.c for restarted jobs.
- Fix obsolete usage of foreach_dlist() to use foreach_jcr() in
lib/jcr.c -- prevents locking the jcr chaing.
- Apply patch from bug #564, which corrects listing volumes with
multiple autochangers. Apply same fix to next volume list.
- Fix bug #562 where restore bootstrap file is not unique.
- More details in implementing David's migration syntax proposal.
- Save and restore dcr when swapping drives so that if we have
a write dcr it is not lost.
- Use new routine lock_reservations() to lock the reservations
system, and call it while looking for a volume in askdir.c.
This could possibly fix bug #543.
- Stop SD command loop if job is canceled.
Kern Sibbald [Wed, 8 Mar 2006 21:17:07 +0000 (21:17 +0000)]
- Rename mac.c migrate.c
- Add user friendly display of VolBytes in job report.
- Rename target... to previous... to make it a bit easier to
understand.
- Add selection type and selection pattern to Migration (idea
given by David Boyes)
Kern Sibbald [Mon, 27 Feb 2006 11:21:44 +0000 (11:21 +0000)]
27Feb06
- Modify the Python class examples to inherit object -- new way
of defining classes. Patch from Felix Schwartz.
- Implement jobuid to replace old usage of job in keywords as
suggested by Eric Bollengier.
- Apply patch for enhancing wait from Eric Bollengier. On can now:
wait (wait for all jobs to stop)
wait jobid=nn
wait jobuid=unique id
wait job=job-name
- Implement write variables for Python to set Priority (anytime), and
Job Level, only during JobInit event.
Kern Sibbald [Thu, 23 Feb 2006 20:04:22 +0000 (20:04 +0000)]
- Add Rudolf Cejka's new rc-chio-changer.
- Implement pulling Volume from Scratch Pool if the
Volume is in the autochanger.
- Implement additional command arguments for update Volume.
Kern Sibbald [Mon, 20 Feb 2006 20:04:01 +0000 (20:04 +0000)]
20Feb06
- Note. Your database must be updated, or you must create
a new database. I have not yet incremented the database level.
- Add Location table.
- Add LocationId, DeviceId, and MediaTypeId to Media record. 18Feb06
- Implement create/get mac record in database for adding extended
Migration data to the job record.
- Add new MAC table to update/make database scripts.
- Return Storage name used when getting VolumeNames for a job.
- Change bsr file keyword Storage to Device, which is more accurate.
- Ensure that Mac records are pruned/purged.
- Tweak SD tools to deal with changing media type.
- Integrate more dev.c subroutines as methods (e.g. strerror, bsr, ...)
- Pass pointer to dcr pointer to acquire_device_for_read() so
that the subroutine can switch devices, and hence dcrs.
- Modify the multiple MediaType read code to re-use the same
dcr when switching devices. This makes the code much more
robust.
- Integrate patch from Karl Hakimian that reads JobIds, FileIndexes
from a table for restore.
- Add Storage name to VolParams, but it really should be Device.
Kern Sibbald [Tue, 14 Feb 2006 14:11:10 +0000 (14:11 +0000)]
- Add disk-changer to scripts directory + configure/Makefile
- Eliminate PoolId from jcr -- it is in jcr->jr.PoolId
- Implement store_bit scanner to replace store_yesno. Mostly done.
- Implement new store_bool that stores in a bool.
- Add true/false to yes/no conf directives.
- Make first cut at changing appropriate store_yesno to store_bool.
- Complete implementation of Pool storage devices.
- Move starting clones to job.c
- Move create_restore_bootstrap_file() to job.c
- Make copy_storage() more general to be able to handle
Pool storage.
- Cleanup a lot of migration code for manual running, including
using Pool storage.
- Move getting a scratch Volume into a subroutine.
- Make all places a Volume that is added to a pool to
respect max vols.
- Fix bug in autochanger recycle code (improper edit 64 bit).
- Fix segfault in restore command when no value specified.
- Start adding code to handle multiple MediaTypes in restore.
- Eliminate race condition in getting Volume name for
two drive autochanger.
- More debug code in autochanger.
- Add storage keyword to bootstrap file, add parsing.
- Move slot in bsr file into Volume record as there will be
a different slot for each Volume.
- Create reserve.h
Kern Sibbald [Mon, 30 Jan 2006 14:24:17 +0000 (14:24 +0000)]
- Continue implementing migration.
- Implement support for removable filesystems in SD.
- Ensure that btraceback scripts can be read by anyone.
- Replace dvd-freespace and dvd-writepart by dvd-handler.
- Correct bug where canceling restore before the FD contacts
the SD causes the drive to be left in read mode.
- Move ofline_or_rewind into DEVICE::close().
- Eliminate close_device.
- Convert several dev subroutines to methods (e.g. bsf,
eod, ...)
- Eliminate force_close_device().
- Implement Device Type directive in Device resource that
can have values File, Tape, Fifo, DVD, or Prog.
- Add has_cap() method to Device.
Landon Fuller [Tue, 17 Jan 2006 06:26:20 +0000 (06:26 +0000)]
Support for FD-side file encryption.
- Added MIN() and MAX() macros to baconfig.h
- Added stream types for win32, file, and macos encrypted data (with and without gzip)
- Added FO_ENCRYPT file flag.
- Implement crypto_cipher_* encryption functions
- Add encryption logic to save_file()
Decryption support has not been committed (yet):
If you use this code to encrypt your data, you will be unable to decrypt it!