aboutsummaryrefslogtreecommitdiff
path: root/b4/__init__.py
diff options
context:
space:
mode:
authorKees Cook <keescook@chromium.org>2021-10-07 09:55:51 -0700
committerKonstantin Ryabitsev <konstantin@linuxfoundation.org>2021-10-07 13:30:48 -0400
commit3847a92a365a96270ab0de6111f349e98379f930 (patch)
tree372609d6f8ae0ef47d0c58ba2e6bdd7eac0ac716 /b4/__init__.py
parentf43ed3c53ecb752f19f8eec0c3b4cc7a505161da (diff)
downloadb4-3847a92a365a96270ab0de6111f349e98379f930.tar.gz
validate: Use patatt's configured keyring as fallback
If b4 doesn't have an explicit keyringsrc configured, attempt to fetch it from patatt configuration instead. This avoids some very confusing situations where patatt would validate and b4 would reject. (I had an expired pubkey in my gpg default keyring, but the same pubkey had an updated expiration date in patatt's keyring.) Signed-off-by: Kees Cook <keescook@chromium.org> Signed-off-by: Konstantin Ryabitsev <konstantin@linuxfoundation.org> Link: https://lore.kernel.org/r/20211007165551.2312946-1-keescook@chromium.org
Diffstat (limited to 'b4/__init__.py')
-rw-r--r--b4/__init__.py6
1 files changed, 5 insertions, 1 deletions
diff --git a/b4/__init__.py b/b4/__init__.py
index b352d6a..f8766d5 100644
--- a/b4/__init__.py
+++ b/b4/__init__.py
@@ -1117,7 +1117,11 @@ class LoreMessage:
config = get_main_config()
sources = config.get('keyringsrc')
if not sources:
- sources = ['ref:::.keys', 'ref:::.local-keys', 'ref::refs/meta/keyring:']
+ # fallback to patatt's keyring if none is specified for b4
+ patatt_config = patatt.get_config_from_git(r'patatt\..*', multivals=['keyringsrc'])
+ sources = patatt_config.get('keyringsrc')
+ if not sources:
+ sources = ['ref:::.keys', 'ref:::.local-keys', 'ref::refs/meta/keyring:']
if pdir not in sources:
sources.append(pdir)