Kern Sibbald [Fri, 8 Dec 2006 14:27:10 +0000 (14:27 +0000)]
kes Mark build-depkgs-mingw3 executable in configure process.
kes Update autoconf/config.h.in to include LOCALEDIR
kes Undefine NLS settings for wxWidgets as there is a conflict with
their way of doing things.
kes Implement a rpool and rpool_source in jcr.h for Migration jobs.
kes Change a bunch of ->hdr.name to ->name()
kes Straighten out handling of read and write pools for Migration, including
getting the code in the proper order.
kes Improve migration error messages and debug output.
kes Shorten code path in migration if nothing found to do.
kes Implement read/write pool in migration job report.
kes Move ua_run.c select_job_level code into a subroutine (readability).
kes Move ua_run.c display_job_parameters into a subroutine.
kes Do not bash dcr->VolumeName in get_volume_info() because it makes
restore dependent on a valid catalog containing the Volume name.
Kern Sibbald [Wed, 6 Dec 2006 18:30:08 +0000 (18:30 +0000)]
kes Put make_catalog_backup SQL_BINDIR in an environment variable to
make it easier for the user to change.
kes Fail any backup job that tries to use encryption and sparse options.
Hopefully this is a temporary change.
kes Correct the EndJob return string for non-backup jobs.
kes Review the encryption restore code.
kes Implement a new encryption regression test with compression.
Kern Sibbald [Wed, 6 Dec 2006 08:39:18 +0000 (08:39 +0000)]
kes Modify migrate not to fail if nothing found to migrate.
kes Add #undef HAVE_OPENSSL, HAVE_TLS, HAVE_CYRPTO to autoconf/config.h.in
because they were not always set correctly.
Kern Sibbald [Mon, 4 Dec 2006 13:00:01 +0000 (13:00 +0000)]
kes Add job report indication of whether or not VSS and Encryption were
used by the FD.
kes Modify sparseBlock variable name to make the code clearer.
kes Add more sparse tests to regress using gigaslam sparse file
generator.
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.