Marian Beermann
e365d64718
Add missing error handler in directory attr restore loop (1/2)
2016-07-01 00:14:17 +02:00
Marian Beermann
b241f95a4b
Implement fail-safe error handling for borg-extract
...
Note that this isn't nearly as critical as the other error handling bug,
since nothing is written. So it's "merely" misleading error reporting.
2016-07-01 00:14:10 +02:00
Marian Beermann
5e260fdfda
Rename input_io*() -> backup_io*()
2016-07-01 00:13:53 +02:00
TW
93b740adee
Merge pull request #1233 from PlasmaPower/git-ignore-eggs
...
Add .eggs to .gitignore
2016-07-01 00:06:14 +02:00
Lee Bousfield
58e42deaa0
Add .eggs to .gitignore
2016-06-30 18:00:39 -04:00
enkore
124265330f
Merge pull request #1216 from ThomasWaldmann/read-special-follow-symlink
...
in --read-special mode, follow symlinks, fixes #1215
2016-06-29 17:12:11 +02:00
enkore
67c69998d6
Merge pull request #1211 from enkore/issue/1138
...
Fix incorrect propagation of OSErrors in create code
2016-06-29 17:07:51 +02:00
enkore
b0eb1af6ea
Merge pull request #1218 from ThomasWaldmann/fix-vagrant-openbsd
...
Vagrantfile: use openbsd 5.9, fixes #716
2016-06-29 17:00:47 +02:00
enkore
523ea295d2
Merge pull request #1212 from ThomasWaldmann/prune-example
...
add prune visualization / example, fixes #723
2016-06-29 16:57:43 +02:00
Thomas Waldmann
e81fc4381c
Vagrantfile: use openbsd 5.9, fixes #716
...
machine already has python3.4.
rsync works now.
fuse does not work on openbsd (and breaks borg install, if tried).
2016-06-29 01:04:24 +02:00
Thomas Waldmann
c3073bacbb
in --read-special mode, follow symlinks, fixes #1215
2016-06-28 18:49:51 +02:00
Marian Beermann
e96905c6b1
Fix error swallowing of ignored responses in RPC code
2016-06-27 22:45:44 +02:00
Marian Beermann
431441f0d6
input_io_* tests
2016-06-27 22:00:24 +02:00
Thomas Waldmann
c773c882b9
add prune visualization / example, fixes #723
2016-06-27 21:20:35 +02:00
Marian Beermann
5b453856ec
Fix incorrect propagation of OSErrors in create code
2016-06-27 20:56:41 +02:00
TW
49feacfab1
Merge pull request #1210 from ThomasWaldmann/build-binaries-with-3.5.2
...
use python 3.5.2 to build the binaries
2016-06-27 19:55:23 +02:00
Thomas Waldmann
c6a72bb16f
use python 3.5.2 to build the binaries
2016-06-27 18:42:12 +02:00
Thomas Waldmann
36b1863c44
use long long for AES block counter, fixes #1206
2016-06-26 20:45:22 +02:00
TW
79c59bffa8
Merge pull request #1201 from ThomasWaldmann/doc-updates
...
Doc updates
2016-06-25 15:31:53 +02:00
Thomas Waldmann
b10025c6e5
document sshd settings, fixes #545
2016-06-24 23:30:27 +02:00
Thomas Waldmann
f54f159db8
more details about checkpoints, add split trick, fixes #1171
2016-06-24 22:32:38 +02:00
Thomas Waldmann
ad65c5ac16
support docs: add freenode web chat link, fixes #1175
2016-06-24 21:48:21 +02:00
TW
c2eae540c3
Merge pull request #1199 from verygreen/bug1195
...
Ignore empty index file.
2016-06-24 17:53:54 +02:00
enkore
13b6f173ed
Merge pull request #1193 from ThomasWaldmann/openssl-1.0-1.1-compat
...
OpenSSL 1.0 and 1.1 compatibility
2016-06-24 17:20:07 +02:00
Oleg Drokin
f99792d31d
Ignore empty index file.
...
Empty index file is most likely a result from an unclean
shutdown in the middle of write, e.g. on ext4 with delayed
allocation enabled (default).
Ignoring such a file would get it recreated by other parts of code,
where as not ignoring it leads to an exception about
not being able to read enough bytes from the index.
this commit fixes #1195
Signed-off-by: Oleg Drokin <green@linuxhacker.ru>
2016-06-24 11:18:54 -04:00
enkore
5b34483310
Merge pull request #1194 from ThomasWaldmann/more-placeholders
...
add placeholder support at missing places, add missing help
2016-06-23 17:38:04 +02:00
Thomas Waldmann
12cb66b9f6
fix "patterns" help formatting, too
...
this way it renders nicely in html (via sphinx) and on console
2016-06-22 08:44:14 +02:00
Thomas Waldmann
5ae340998c
update docs about placeholders
2016-06-22 08:40:31 +02:00
Thomas Waldmann
6407742d78
support placeholders for --prefix (everywhere), fixes #1027
...
this fixes a ugly inconsistency: you could use placeholder for borg create's archivename.
but you could not use them for borg prune's prefix option.
2016-06-21 23:36:30 +02:00
Thomas Waldmann
b072e99394
fix invalid placeholder in unit test
2016-06-21 23:14:44 +02:00
Thomas Waldmann
b630ae9231
catch and format exceptions in arg parsing
2016-06-21 23:00:08 +02:00
Thomas Waldmann
ad1729401f
improve exception handling for placeholder replacement
...
do not ignore bad placeholders and just return empty string,
this could have bad consequences, e.g. with --prefix '{invalidplaceholder}':
a typo in the placeholder name would cause the prefix to be the empty string.
2016-06-21 22:58:56 +02:00
Thomas Waldmann
52007dbd43
add tests for format_line
2016-06-21 22:02:13 +02:00
Thomas Waldmann
0f7eb871fd
slightly refactor placeholder related code
...
- move from instance method to global function, so it can be used in other contexts also
- rename preformat_text -> replace_placeholders
2016-06-21 21:52:20 +02:00
Thomas Waldmann
b5362fa5c8
make borg build/work on OpenSSL 1.0 and 1.1, fixes #1187
...
in openssl 1.1, the cipher context is opaque, members can not
be accessed directly. we only used this for ctx.iv to determine
the current IV (counter value).
now, we just remember the original IV, count the AES blocks we
process and then compute iv = iv_orig + blocks.
that way, it works on OpenSSL 1.0.x and >= 1.1 in the same way.
2016-06-21 20:20:48 +02:00
Thomas Waldmann
27c0d0f074
move attic test dependency into own file
...
so you can just empty that file to remove the attic-based tests
when testing in a OpenSSL 1.1 environment.
2016-06-21 20:06:36 +02:00
Thomas Waldmann
a19c9861bf
crypto: use pointer to cipher context
...
this is one of the steps needed to make borg compatible to openssl 1.1.
2016-06-20 23:40:30 +02:00
TW
91f92d65df
Merge pull request #1173 from ThomasWaldmann/fix-sparse-test
...
fix sparse file test, fixes #1170
2016-06-19 22:48:33 +02:00
TW
195a6b9093
Merge pull request #1186 from ThomasWaldmann/ignore-F405
...
flake8: ignore F405, fixes #1185
2016-06-19 15:09:26 +02:00
Thomas Waldmann
278cf0b9ad
helpers: fix "undefined name 'e'" in exception handler
2016-06-19 14:55:57 +02:00
Thomas Waldmann
745007bd12
flake8: ignore F405, fixes #1185
...
We know that star imports have their issues and we only have one of them,
for good reasons. Thus, we switch off that new F405 test/message.
2016-06-19 14:40:11 +02:00
Thomas Waldmann
9be32e97b1
fix sparse file test, fixes #1170
...
found out that xfs is doing stuff behind the scenes: it is pre-allocating 16MB
to prevent fragmentation (in my case, value depends on misc factors).
fixed the test so it just checks that the extracted sparse file uses less (not
necessary much less) space than a non-sparse file would use.
another problem showed up when i tried to verify the holes in the sparse file
via SEEK_HOLE, SEEK_DATA:
after the few bytes of real data in the file, there was another 16MB
preallocated space.
So I ended up checking just the hole at the start of the file.
tested on: ext4, xfs, zfs, btrfs
2016-06-15 12:22:29 +02:00
enkore
22e14a0a75
Merge pull request #1160 from ThomasWaldmann/fix-1159
...
Fix 1159
2016-06-12 18:24:15 +02:00
Thomas Waldmann
69c3b5e196
rebuild_manifest: refactor archive metadata dict validation
...
this was already done in a similar way for item metadata dict validation.
also: check for some more required keys - the old code would crash if 'name' or 'time' key were missing.
2016-06-12 16:06:16 +02:00
Thomas Waldmann
03f6282eab
make rebuild_manifest more future-proof
2016-06-12 15:31:31 +02:00
Thomas Waldmann
866417853d
rename valid_msgpacked_item to valid_msgpacked_dict
...
the code is generic, it can also be used for other msgpacked dictionaries.
2016-06-12 15:31:31 +02:00
enkore
90d621ce35
Merge pull request #1149 from ThomasWaldmann/validkeys-in-manifest
...
item_keys in manifest, validate item keys
2016-06-12 14:44:27 +02:00
Thomas Waldmann
a7b5165149
better validation of item metadata dicts, fixes #1130
...
the previous check only checked that we got a dict, but did not validate the dict keys.
this triggered issues with e.g. (invalid) integer keys.
now it validates the keys:
- some required keys must be present
- the set of keys is a subset of all valid keys
2016-06-12 00:11:31 +02:00
Thomas Waldmann
78121a8d04
store item_keys into manifest, fixes #1147
...
we need a list of valid item metadata keys. using a list stored in the repo manifest
is more future-proof than the hardcoded ITEM_KEYS in the source code.
keys that are in union(item_keys_from_repo, item_keys_from_source) are considered valid.
2016-06-12 00:11:10 +02:00
TW
4c98b91e12
Merge pull request #1153 from witten/patch-2
...
Update resources.rst to rename atticmatic to borgmatic
2016-06-11 18:28:00 +02:00