diff --git a/borg/archiver.py b/borg/archiver.py index 7ad2195d8..973ea6f7a 100644 --- a/borg/archiver.py +++ b/borg/archiver.py @@ -730,6 +730,10 @@ class Archiver: if args.tam: manifest, key = Manifest.load(repository, force_tam_not_required=args.force) + if not hasattr(key, 'change_passphrase'): + print('This repository is not encrypted, cannot enable TAM.') + return EXIT_ERROR + if not manifest.tam_verified or not manifest.config.get(b'tam_required', False): # The standard archive listing doesn't include the archive ID like in borg 1.1.x print('Manifest contents:') diff --git a/docs/changes.rst b/docs/changes.rst index 7e3c876fd..ae471af86 100644 --- a/docs/changes.rst +++ b/docs/changes.rst @@ -133,6 +133,8 @@ Bug fixes: - Avoid triggering an ObjectiveFS bug in xattr retrieval, #1992 - When running out of buffer memory when reading xattrs, only skip the current file, #1993 +- Fixed "borg upgrade --tam" crashing with unencrypted repositories. Since :ref:`the issue ` is + not relevant for unencrypted repositories, it now does nothing and prints an error, #1981. Version 1.0.9 (2016-12-20) --------------------------