Commit Graph

7018 Commits

Author SHA1 Message Date
Thomas Waldmann 98dea3e876
requirements: remove cython restrictions 2023-08-31 01:03:34 +02:00
Thomas Waldmann c133303243
update CHANGES, incl. upgrade instructions 2023-08-31 01:02:44 +02:00
Thomas Waldmann d05d02f238
implement BORG_WORKAROUNDS=ignore_invalid_archive_tam, see #7791 2023-08-31 00:36:04 +02:00
TW 7ab28487ce
Merge pull request #7790 from ThomasWaldmann/fix-changelog-markup-1.2
fix changelog markup
2023-08-30 18:41:31 +02:00
Thomas Waldmann 447d0df1bb
fix changelog markup 2023-08-30 18:36:42 +02:00
TW f7a93b30fa
Merge pull request #7788 from ThomasWaldmann/fix-cve-docs-1.2
fix CVE timeline
2023-08-30 14:41:05 +02:00
Thomas Waldmann ee33c22443
fix CVE timeline 2023-08-30 14:39:41 +02:00
TW c8b9d72bdb
Merge pull request from GHSA-8fjr-hghr-4m99
Release 1.2.5 incl. archives TAM security fix
2023-08-30 14:18:17 +02:00
Thomas Waldmann 509a5fd71c
build_usage / build_man 2023-08-30 03:49:47 +02:00
Thomas Waldmann ed1ab84cc7
update CHANGES 2023-08-30 03:47:35 +02:00
Thomas Waldmann 9e63abb679
document vulnerability, repo upgrade procedure 2023-08-30 02:52:34 +02:00
Thomas Waldmann 5e0632a3d0
add tests for archive TAMs, upgrade 2023-08-30 02:52:32 +02:00
Thomas Waldmann d78ed697ae
rebuild_refcounts: keep archive ID, if possible
rebuild_refcounts verifies and recreates the TAM.
Now it re-uses the salt, so that the archive ID does not change
just because of a new salt if the archive has still the same data.
2023-08-30 02:52:27 +02:00
Thomas Waldmann 85b173d3d1
TAM msgs: be more specific: archives vs. manifest 2023-08-30 02:52:23 +02:00
Thomas Waldmann 7d0d11b979
upgrade: allow enable/disable manifest TAM for unencrypted repos
Recent borg wrote TAM authenticated **archives**
even for unencrypted repos (encryption "none"),
so we also do that for the manifest.

It's kind of fake as there is no secret key involved then,
but it simplifies the code.
2023-08-30 02:52:21 +02:00
Thomas Waldmann 19a7809fe8
upgrade --archives-tam: make sure all archives are TAM authenticated
borg check (rebuild_manifest and rebuild_refcounts) drops archives without TAM,
so let's just always add the TAM.

for unencrypted repos (encryption=none) the TAM is insecure,
but without encryption and authentication, there is no expectation
of security anyway.
2023-08-30 02:52:17 +02:00
Thomas Waldmann 75518d945c
list: support {tam} placeholder. check archive TAM.
list: shows either "verified" or "none", depending on
whether a TAM auth tag could be verified or was
missing (old archives from borg < 1.0.9).

when loading an archive, we now try to verify the archive
TAM, but we do not require it. people might still have
old archives in their repos and we want to be able to
list such repos without fatal exceptions.
2023-08-30 02:52:15 +02:00
Thomas Waldmann 155d8ee23b
cache sync: check archive TAM 2023-08-30 02:52:13 +02:00
Thomas Waldmann 7da8738513
check: rebuild_refcounts verify and recreate TAM
This part of the archive checker recreates the Archive
items (always, just in case some missing chunks needed
repairing).

When loading the Archive item, we now verify the TAM.
When saving the (potentially modified) Archive item,
we now (re-)generate the TAM.

Archives without a valid TAM are dropped rather than TAM-authenticated
when saving them. There shouldn't be any archives without a valid TAM:

- borg writes an archive TAM since long (1.0.9)
- users are expected to TAM-authenticate archives created
  by older borg when upgrading to borg 1.2.5.

Also:

Archive.set_meta: TAM-authenticate new archive

This is also used by Archive.rename and .recreate.
2023-08-30 02:51:52 +02:00
Thomas Waldmann 1fd94bd38f
check: rebuild_manifest must verify archive TAM 2023-08-29 21:59:04 +02:00
TW 8ae06199ef
Merge pull request #7784 from ThomasWaldmann/vagrant-updates-1.2
Vagrant updates (1.2-maint)
2023-08-29 20:49:13 +02:00
Thomas Waldmann de51c67085
vagrant: fix netbsd pkgsrc
9.0_current stopped working, let's use 9.3.
2023-08-29 19:45:39 +02:00
Thomas Waldmann 055fb76bd8
vagrant / binary build: use python 3.9.18 2023-08-29 19:44:30 +02:00
TW 9133cf5f36
Merge pull request #7783 from ThomasWaldmann/rel-prep-1.2
build_man / build_usage
2023-08-29 18:50:04 +02:00
Thomas Waldmann 62ca4f666b
build_man / build_usage 2023-08-29 18:48:41 +02:00
TW a034febe55
Merge pull request #7782 from ThomasWaldmann/update-changes-1.2
update CHANGES
2023-08-29 18:34:10 +02:00
Thomas Waldmann 7f07f81e39
update CHANGES 2023-08-29 18:24:56 +02:00
TW 186b3d1319
Merge pull request #7781 from ThomasWaldmann/cy029-1.2
require cython <3 for now
2023-08-29 16:15:33 +02:00
Thomas Waldmann f8673a379c
require cython <3 for now
also in requirements.d/development.txt.
2023-08-29 16:09:08 +02:00
TW 844ca6b61e
Merge pull request #7772 from ThomasWaldmann/cython029-1.2
use cython 0.29 (1.2-maint)
2023-08-26 14:44:54 +02:00
Thomas Waldmann 37a813f7f8
stay on latest Cython 0.29 (0.29.36) for borg 1.2.x
master branch tests Cython 3 now.
1.2-maint branch may or may not upgrade to build with Cython 3 later.
2023-08-26 14:18:23 +02:00
TW 0493695b6c
Merge pull request #7769 from ThomasWaldmann/docs-fix-rcreate-1.2
docs: fix borg init command in environment.rst.inc
2023-08-24 12:04:38 +02:00
Thomas Waldmann 276781081b
docs: fix borg init command in environment.rst.inc
It mentioned borg rcreate due to a bad backport from master.
Must be borg init in borg 1.2.x.
2023-08-24 11:49:17 +02:00
TW f6e20fb07c
Merge pull request #7751 from ThomasWaldmann/fix-unreadable-parent-of-root-fixup-1.2
remove unused "flags_root" open flags
2023-07-30 01:18:40 +02:00
Thomas Waldmann de7e7e2a95
remove unused "flags_root" open flags 2023-07-29 23:42:36 +02:00
TW ef52d13608
Merge pull request #7749 from ThomasWaldmann/fix-unreadable-parent-of-root-1.2
do not try to read parent dir of recursion root (1.2-maint)
2023-07-29 23:38:28 +02:00
Thomas Waldmann ed7a410084
create: do not try to read parent dir of recursion root, fixes #7746 2023-07-29 23:04:44 +02:00
Thomas Waldmann 453d35fa47
add a test for unreadable parent dir, see #7746 2023-07-29 22:48:13 +02:00
TW a3f4adf899
Merge pull request #7732 from ThomasWaldmann/update-docs-1.2
update docs 1.2
2023-07-23 15:08:31 +02:00
Thomas Waldmann dedbd38844
1.1.x upgrade notes: more precise borg upgrade instructions, fixes #3396 2023-07-22 18:08:35 +02:00
Thomas Waldmann b419b6ad03
build_man / build_usage 2023-07-20 18:57:22 +02:00
Thomas Waldmann 65a2fe8502
update CHANGES 2023-07-20 18:54:55 +02:00
TW aa913cda83
Merge pull request #7731 from ThomasWaldmann/authenticated_no_key-fix-1.2
bugfix: skip TAM check with BORG_WORKAROUNDS=authenticated_no_key
2023-07-20 18:34:05 +02:00
Thomas Waldmann 104cc196fc
bugfix: skip TAM check with BORG_WORKAROUNDS=authenticated_no_key
This is an emergency workaround for authenticated repos
if the user has lost the borg key.

We can't compute the TAM key without the borg key, so just
skip all the TAM stuff.
2023-07-20 18:02:58 +02:00
TW b067aeadef
Merge pull request #7723 from PhrozenByte/docs-check-rewrite-1.2
Backport: Docs: Rewrite `borg check` docs
2023-07-11 00:49:20 +02:00
Daniel Rudolf c6a6161c60
Docs: Rewrite `borg check` docs
This commit is a backport of the following commits to the `1.2-maint` branch:

    commit 9edbf4e931
    Author: Daniel Rudolf

        Docs: Rewrite `borg check` docs

    commit 9d59146de4
    Author: Daniel Rudolf

        Docs: Remove technical description from `borg check` docs

    commit a661da13ee
    Author: Daniel Rudolf

        Docs: Improve explanation of `borg check --max-duration`'s side effects

    commit 2647673dc8
    Author: Daniel Rudolf

        Docs: Improve `borg check` docs
2023-07-10 23:03:47 +02:00
TW 4721a35863
Merge pull request #7702 from ThomasWaldmann/authenticated-no-key-1.2
BORG_WORKAROUNDS=authenticated_no_key, fixes #7700
2023-07-07 01:02:41 +02:00
TW c79e970b78
Merge pull request #7717 from FelixSchwarz/borg12-py312
add `utcnow()` helper function to avoid `datetime.utcnow()`
2023-07-06 23:45:58 +02:00
Felix Schwarz 98f547f278 add `utcnow()` helper function to avoid `datetime.utcnow()`
`datetime.utcnow()` is deprecated since Python 3.12. This causes additional lines of
output and thus breaks the test suite. I was not sure if all borg internals are
ready to deal with timezone-aware datetime instances so tried to keep the changes
minimal.
2023-07-06 21:44:09 +02:00
TW e5cc2e16e3
Merge pull request #7709 from TimWolla/backport-doc-keep-within
Backport: Improve the documentation for `--keep-within`
2023-07-04 14:11:55 +02:00