Kern Sibbald [Mon, 4 Dec 2006 09:39:26 +0000 (09:39 +0000)]
kes Enable data encryption code.
kes Add gigaslam.c to src/tools. It creates a 1GB file that contains
only two blocks -- i.e. it is a real sparse file.
Landon Fuller [Mon, 4 Dec 2006 04:14:34 +0000 (04:14 +0000)]
Re-implemented the block-preserving encryption restore. In the process, fixed all known bugs in handling non-sparse file restoration. Changes include:
- Removed the "chunk_size" implementation
- Renamed crypto_count to crypto_buf_len, and crypto_size to crypto_packet_len.
- Removed unnecessary looping in extract_data()
- Broke out sparse block handling into its own function
- Laid some groundwork for adding sparse + encryption support
Testing:
- Encryption regression tests now pass.
- Tested sparse file handling changes without encryption enabled.
Known encryption-related bugs remaining:
- Restoring resource forks is broken; need to set up a seperate decryption context.
- The latest changes to digest handling with sparse files breaks file signatures.
- Sparse files are not currently supported when encrypting.
Kern Sibbald [Sun, 3 Dec 2006 20:01:09 +0000 (20:01 +0000)]
kes Enable disk seeking on restore.
kes Implement the SD 'Block Positioning = yes|no' directive. This
allows the user to turn off block level seeking, but restores
will be much slower.
kes Change the word illegal to read invalid in a few places.
Kern Sibbald [Sun, 3 Dec 2006 15:48:18 +0000 (15:48 +0000)]
kes Turn off data encryption. It can be enabled by defining
DATA_ENCRYPTION in src/version.h and recompiling.
kes Implement flag to turn off data encryption feature.
Kern Sibbald [Sun, 3 Dec 2006 09:00:00 +0000 (09:00 +0000)]
kes Move unserial code in restore.c to a subroutine. Add a bit of debug
code.
kes Rework a bit of code in backup.c to handle sparse blocks correctly.
The main problem was that signatures were being generated on blocks
of zeros, which is unnecessary. 02Dec06
kes Fix scanner (next_arg) to handle leading double quote correctly.
kes Modify cd command in restore tree to look at full argument without
keywords. This fixes bug #716. 01Dec06
kes Do not update Migrated Job type if migration does not terminate
normally. This fixes bug #719.
Kern Sibbald [Fri, 1 Dec 2006 07:51:55 +0000 (07:51 +0000)]
kes Initialize msg_type to M_INFO in migration. Pointed out by
Robert Nelson.
kes Add some fflush() statements for debug output. This should not
really be necessary and defeats buffering but users continue
to complain.
Landon Fuller [Tue, 28 Nov 2006 07:07:42 +0000 (07:07 +0000)]
Fix a logic error that resulted in blank md5 sums and encryption signatures to be saved for non-file entities, eg, directories.
This was non-fatal, but obviously incorrect, in addition to being a waste of cycles and space.
Landon Fuller [Tue, 28 Nov 2006 07:02:34 +0000 (07:02 +0000)]
Fixed two bugs, the first of which is mine:
- If a signed digest was incorrectly written for a non-file, do not leak or attempt to validate the digest -- ignore it.
- If no new data is encrypted, but the output buffer is not empty, there is still data that needs to be written -- don't exit.
Kern Sibbald [Mon, 27 Nov 2006 10:03:06 +0000 (10:03 +0000)]
kes More copyright changes.
kes Make sure we don't detach from the despool read device since it
is a temporary structure where the condition variables are not
initialized. Bug #711.
Kern Sibbald [Sun, 26 Nov 2006 16:01:26 +0000 (16:01 +0000)]
Add Bacula version+date to Client record. This is a very minor
security problem in that passing the version facilitates a hacker's
life, but it will make support easier.
Kern Sibbald [Sun, 26 Nov 2006 09:26:55 +0000 (09:26 +0000)]
Implement fixes to make disk seeking work. Currently turned
off in version.h pending reserch on what problems it will cause
because of the previous bsnprinf() sign extension bug.
Kern Sibbald [Fri, 24 Nov 2006 09:58:28 +0000 (09:58 +0000)]
kes Separate read/write source strings to keep track of where
storage devices are used in a job.
kes Implement a new method of keeping track of which storage
device is used in a Job. USTORE keeps both a pointer to the
resource and to the source string.
kes Modify all code to use new storage set subroutines in job.c
kes Modify migrate.c so that the definitive selection of the storage
resource is done in the do_migration_init() routine prior to
the job going into the job queue. This permits accurate
deadlock detection (same read and write storage resource).
kes Remove bfill from btape (I think it was a left over stub).
Kern Sibbald [Wed, 22 Nov 2006 15:48:29 +0000 (15:48 +0000)]
kes Make sure that the storage for a job is pulled first from
the Pool and if not from the Job.
kes Ensure that either the Pool or the Job specifies a Storage
resource.
Kern Sibbald [Mon, 20 Nov 2006 08:02:15 +0000 (08:02 +0000)]
kes Make WritePartAfterJob the default so that the last DVD part
always gets written to the DVD by default.
kes Add additional error messages in migration.
kes Suppress redundant error messages in migration (possibly more to do).
kes Apply Martin's fix (updated to 1.39) that takes into account
run storage overrides in the Director status display.
kes Implement, but turn off the submitted code that sets the EOT
model on FreeBSD machines. Turning on this code is too risky at
this point in the development.
Kern Sibbald [Sun, 19 Nov 2006 09:43:51 +0000 (09:43 +0000)]
9Nov06
kes Implement unique dbid routine for migration to prevent the same
JobId from being migrated twice. This should fix bug #709.
18Nov06
kes Apply Jaime Ventura's 'mail on success' patch.
Kern Sibbald [Sat, 18 Nov 2006 10:57:21 +0000 (10:57 +0000)]
18Nov06
kes Add a SMALLOC_SANITY_CHECK for Arno, which aborts Bacula
if memory usage gets too big.
kes Tweak migration to ensure that read/write devices are different.
17Nov06
kes Create an AUTHORS file to list Bacula contributors.
kes Add Richard Stallman's four GPL freedoms to LICENSE
kes Require the conf file to have a valid NextPool for writing the
migration output.