Kern Sibbald [Thu, 14 Dec 2006 11:41:02 +0000 (11:41 +0000)]
kes Complete hopefully the last of the copyright transfer changes.
kes Separate NumVolumes in SD to NumReadVolumes and NumWrite volumes so
that migration writing to multiple volumes doesn't mess up reading
Volumes. This should fix bug #720 -- multivol migration fails.
kes Make migration SQL look only for Type='B' jobs to migrate. This should
fix bug #724 jobs getting migrated twice.
kes Convert remaining dev_cap(dev, ...) to use dev->has_cap().
kes Implement dev->clear_cap() and dev->set_cap() methods.
kes Turn off disk seeking on restore for DVDs since I am not 100%
sure it works.
Kern Sibbald [Wed, 13 Dec 2006 19:42:12 +0000 (19:42 +0000)]
kes Implement code that should properly set that a job was migrated,
if the migration was successful even if there were no file to
migrate.
kes Apply Richard's patch to fix building or filed/restore.c without
OpenSSL support.
kes Ensure that at least one block is written by the SD even if the
FD dies or fails -- should fix bug #728.
kes Convert stored/record.c ASSERT into a soft fail if the length of
a record is too insanely long. This should fix bug #???
Landon Fuller [Sun, 10 Dec 2006 01:37:49 +0000 (01:37 +0000)]
Fix job byte reporting -- the digest code runs in verify.c and increases this value.
The better solution is to digest the stream as we receive it, thus removing the need to re-read from disk at all, but that requires more extensive and potentially destabilizing changes.
Landon Fuller [Sat, 9 Dec 2006 23:50:00 +0000 (23:50 +0000)]
This commit fixes backup and restore of HFS+ resource forks.
Unrelated to the above, I added a long-missing 'break' statement in HFS+ attribute handling that resulted in restore failures.
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.