From a27c8b00ebf173659f22f53ce65679e94e7dfb1b Mon Sep 17 00:00:00 2001 From: Daniel Baumann Date: Sun, 28 Apr 2024 11:19:41 +0200 Subject: Adding upstream version 2022.12.24. Signed-off-by: Daniel Baumann --- t/dm-vs-dd.t | 47 +++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 47 insertions(+) create mode 100755 t/dm-vs-dd.t (limited to 't/dm-vs-dd.t') diff --git a/t/dm-vs-dd.t b/t/dm-vs-dd.t new file mode 100755 index 0000000..6b1a99c --- /dev/null +++ b/t/dm-vs-dd.t @@ -0,0 +1,47 @@ +#!/bin/sh +# Compares the DM keyring with the DD keyring. If the same name or email is +# in both keyrings, that's an error. +set -e + +list_uids () { + gpg --no-options --no-auto-check-trustdb --no-default-keyring \ + --keyring "$1" --list-keys | grep -a '^uid' | sed 's/^uid *//' | + egrep -a -v '\[jpeg image of size .*\]' +} + +list_names () { + sed 's/ <.*>//' +} + +list_emails () { + sed 's/.* <\(.*\)>/\1/' +} + +fail=0 + +dd_uids=$(list_uids ./output/keyrings/debian-keyring.gpg) +( + echo "$dd_uids" | list_emails + echo "$dd_uids" | list_names + echo "$dd_uids" +) | sort | uniq > dd-list.tmp + +IFS=" +" +for uid in $(list_uids ./output/keyrings/debian-maintainers.gpg | sort | uniq); do + name=$(echo "$uid" | list_names) + email=$(echo "$uid" | list_emails) + if grep -a -q "^$uid$" dd-list.tmp; then + echo "$uid is in both the DD and DM keyrings" + fail=1 + elif grep -a "^$name$" dd-list.tmp; then + echo "warning: name $name is in both the DD and DM keyrings" + elif grep -a "^$email$" dd-list.tmp; then + echo "email $email is in both the DD and DM keyrings" + fail=1 + fi +done + +rm -f dd-list.tmp + +exit $fail -- cgit v1.2.3