Diff of the two buildlogs: -- --- b1/build.log 2025-03-06 09:12:27.827560335 +0000 +++ b2/build.log 2025-03-06 09:27:40.050620348 +0000 @@ -1,6 +1,6 @@ I: pbuilder: network access will be disabled during build -I: Current time: Wed Apr 8 03:29:24 -12 2026 -I: pbuilder-time-stamp: 1775662164 +I: Current time: Thu Mar 6 23:12:31 +14 2025 +I: pbuilder-time-stamp: 1741252351 I: Building the build Environment I: extracting base tarball [/var/cache/pbuilder/unstable-reproducible-base.tgz] I: copying local configuration @@ -38,54 +38,86 @@ dpkg-source: info: applying 0012-Relax-version-constraint-on-sqlite3-gem.patch I: Not using root during the build. I: Installing the build-deps -I: user script /srv/workspace/pbuilder/97909/tmp/hooks/D02_print_environment starting +I: user script /srv/workspace/pbuilder/18381/tmp/hooks/D01_modify_environment starting +debug: Running on ionos12-i386. +I: Changing host+domainname to test build reproducibility +I: Adding a custom variable just for the fun of it... +I: Changing /bin/sh to bash +'/bin/sh' -> '/bin/bash' +lrwxrwxrwx 1 root root 9 Mar 6 09:12 /bin/sh -> /bin/bash +I: Setting pbuilder2's login shell to /bin/bash +I: Setting pbuilder2's GECOS to second user,second room,second work-phone,second home-phone,second other +I: user script /srv/workspace/pbuilder/18381/tmp/hooks/D01_modify_environment finished +I: user script /srv/workspace/pbuilder/18381/tmp/hooks/D02_print_environment starting I: set - BUILDDIR='/build/reproducible-path' - BUILDUSERGECOS='first user,first room,first work-phone,first home-phone,first other' - BUILDUSERNAME='pbuilder1' - BUILD_ARCH='i386' - DEBIAN_FRONTEND='noninteractive' - DEB_BUILD_OPTIONS='buildinfo=+all reproducible=+all parallel=22 ' - DISTRIBUTION='unstable' - HOME='/root' - HOST_ARCH='i386' + BASH=/bin/sh + BASHOPTS=checkwinsize:cmdhist:complete_fullquote:extquote:force_fignore:globasciiranges:globskipdots:hostcomplete:interactive_comments:patsub_replacement:progcomp:promptvars:sourcepath + BASH_ALIASES=() + BASH_ARGC=() + BASH_ARGV=() + BASH_CMDS=() + BASH_LINENO=([0]="12" [1]="0") + BASH_LOADABLES_PATH=/usr/local/lib/bash:/usr/lib/bash:/opt/local/lib/bash:/usr/pkg/lib/bash:/opt/pkg/lib/bash:. + BASH_SOURCE=([0]="/tmp/hooks/D02_print_environment" [1]="/tmp/hooks/D02_print_environment") + BASH_VERSINFO=([0]="5" [1]="2" [2]="37" [3]="1" [4]="release" [5]="i686-pc-linux-gnu") + BASH_VERSION='5.2.37(1)-release' + BUILDDIR=/build/reproducible-path + BUILDUSERGECOS='second user,second room,second work-phone,second home-phone,second other' + BUILDUSERNAME=pbuilder2 + BUILD_ARCH=i386 + DEBIAN_FRONTEND=noninteractive + DEB_BUILD_OPTIONS='buildinfo=+all reproducible=+all parallel=10 ' + DIRSTACK=() + DISTRIBUTION=unstable + EUID=0 + FUNCNAME=([0]="Echo" [1]="main") + GROUPS=() + HOME=/root + HOSTNAME=i-capture-the-hostname + HOSTTYPE=i686 + HOST_ARCH=i386 IFS=' ' - INVOCATION_ID='9a8cae74e68f4d66adfffa0efbdca957' - LANG='C' - LANGUAGE='en_US:en' - LC_ALL='C' - LD_LIBRARY_PATH='/usr/lib/libeatmydata' - LD_PRELOAD='libeatmydata.so' - MAIL='/var/mail/root' - OPTIND='1' - PATH='/usr/sbin:/usr/bin:/sbin:/bin:/usr/games' - PBCURRENTCOMMANDLINEOPERATION='build' - PBUILDER_OPERATION='build' - PBUILDER_PKGDATADIR='/usr/share/pbuilder' - PBUILDER_PKGLIBDIR='/usr/lib/pbuilder' - PBUILDER_SYSCONFDIR='/etc' - PPID='97909' - PS1='# ' - PS2='> ' + INVOCATION_ID=02818813d4734d2d8735afd3387a68dc + LANG=C + LANGUAGE=de_CH:de + LC_ALL=C + LD_LIBRARY_PATH=/usr/lib/libeatmydata + LD_PRELOAD=libeatmydata.so + MACHTYPE=i686-pc-linux-gnu + MAIL=/var/mail/root + OPTERR=1 + OPTIND=1 + OSTYPE=linux-gnu + PATH=/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/i/capture/the/path + PBCURRENTCOMMANDLINEOPERATION=build + PBUILDER_OPERATION=build + PBUILDER_PKGDATADIR=/usr/share/pbuilder + PBUILDER_PKGLIBDIR=/usr/lib/pbuilder + PBUILDER_SYSCONFDIR=/etc + PIPESTATUS=([0]="0") + POSIXLY_CORRECT=y + PPID=18381 PS4='+ ' - PWD='/' - SHELL='/bin/bash' - SHLVL='2' - SUDO_COMMAND='/usr/bin/timeout -k 18.1h 18h /usr/bin/ionice -c 3 /usr/bin/nice /usr/sbin/pbuilder --build --configfile /srv/reproducible-results/rbuild-debian/r-b-build.HW8YituH/pbuilderrc_0Rt2 --distribution unstable --hookdir /etc/pbuilder/first-build-hooks --debbuildopts -b --basetgz /var/cache/pbuilder/unstable-reproducible-base.tgz --buildresult /srv/reproducible-results/rbuild-debian/r-b-build.HW8YituH/b1 --logfile b1/build.log schleuder_5.0.0-7.dsc' - SUDO_GID='112' - SUDO_UID='107' - SUDO_USER='jenkins' - TERM='unknown' - TZ='/usr/share/zoneinfo/Etc/GMT+12' - USER='root' - _='/usr/bin/systemd-run' - http_proxy='http://213.165.73.152:3128' + PWD=/ + SHELL=/bin/bash + SHELLOPTS=braceexpand:errexit:hashall:interactive-comments:posix + SHLVL=3 + SUDO_COMMAND='/usr/bin/timeout -k 24.1h 24h /usr/bin/ionice -c 3 /usr/bin/nice -n 11 /usr/bin/unshare --uts -- /usr/sbin/pbuilder --build --configfile /srv/reproducible-results/rbuild-debian/r-b-build.HW8YituH/pbuilderrc_2xlP --distribution unstable --hookdir /etc/pbuilder/rebuild-hooks --debbuildopts -b --basetgz /var/cache/pbuilder/unstable-reproducible-base.tgz --buildresult /srv/reproducible-results/rbuild-debian/r-b-build.HW8YituH/b2 --logfile b2/build.log schleuder_5.0.0-7.dsc' + SUDO_GID=112 + SUDO_UID=107 + SUDO_USER=jenkins + TERM=unknown + TZ=/usr/share/zoneinfo/Etc/GMT-14 + UID=0 + USER=root + _='I: set' + http_proxy=http://46.16.76.132:3128 I: uname -a - Linux ionos6-i386 6.1.0-31-amd64 #1 SMP PREEMPT_DYNAMIC Debian 6.1.128-1 (2025-02-07) x86_64 GNU/Linux + Linux i-capture-the-hostname 6.1.0-31-amd64 #1 SMP PREEMPT_DYNAMIC Debian 6.1.128-1 (2025-02-07) x86_64 GNU/Linux I: ls -l /bin - lrwxrwxrwx 1 root root 7 Mar 4 2025 /bin -> usr/bin -I: user script /srv/workspace/pbuilder/97909/tmp/hooks/D02_print_environment finished + lrwxrwxrwx 1 root root 7 Mar 4 11:20 /bin -> usr/bin +I: user script /srv/workspace/pbuilder/18381/tmp/hooks/D02_print_environment finished -> Attempting to satisfy build-dependencies -> Creating pbuilder-satisfydepends-dummy package Package: pbuilder-satisfydepends-dummy @@ -353,7 +385,7 @@ Get: 190 http://deb.debian.org/debian unstable/main i386 ruby-thor all 1.3.2-2 [49.3 kB] Get: 191 http://deb.debian.org/debian unstable/main i386 ruby-typhoeus all 1.4.0-5 [36.4 kB] Get: 192 http://deb.debian.org/debian unstable/main i386 thin i386 1.8.2-4 [61.4 kB] -Fetched 55.5 MB in 2s (34.6 MB/s) +Fetched 55.5 MB in 2s (36.0 MB/s) Preconfiguring packages ... Selecting previously unselected package libpython3.13-minimal:i386. (Reading database ... (Reading database ... 5% (Reading database ... 10% (Reading database ... 15% (Reading database ... 20% (Reading database ... 25% (Reading database ... 30% (Reading database ... 35% (Reading database ... 40% (Reading database ... 45% (Reading database ... 50% (Reading database ... 55% (Reading database ... 60% (Reading database ... 65% (Reading database ... 70% (Reading database ... 75% (Reading database ... 80% (Reading database ... 85% (Reading database ... 90% (Reading database ... 95% (Reading database ... 100% (Reading database ... 19769 files and directories currently installed.) @@ -984,8 +1016,8 @@ Setting up tzdata (2025a-2) ... Current default time zone: 'Etc/UTC' -Local time is now: Wed Apr 8 15:29:49 UTC 2026. -Universal Time is now: Wed Apr 8 15:29:49 UTC 2026. +Local time is now: Thu Mar 6 09:13:58 UTC 2025. +Universal Time is now: Thu Mar 6 09:13:58 UTC 2025. Run 'dpkg-reconfigure tzdata' if you wish to change it. Setting up ruby-minitest (5.25.4-2) ... @@ -1158,7 +1190,11 @@ Building tag database... -> Finished parsing the build-deps I: Building the package -I: Running cd /build/reproducible-path/schleuder-5.0.0/ && env PATH="/usr/sbin:/usr/bin:/sbin:/bin:/usr/games" HOME="/nonexistent/first-build" dpkg-buildpackage -us -uc -b && env PATH="/usr/sbin:/usr/bin:/sbin:/bin:/usr/games" HOME="/nonexistent/first-build" dpkg-genchanges -S > ../schleuder_5.0.0-7_source.changes +I: user script /srv/workspace/pbuilder/18381/tmp/hooks/A99_set_merged_usr starting +Not re-configuring usrmerge for unstable +I: user script /srv/workspace/pbuilder/18381/tmp/hooks/A99_set_merged_usr finished +hostname: Name or service not known +I: Running cd /build/reproducible-path/schleuder-5.0.0/ && env PATH="/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/i/capture/the/path" HOME="/nonexistent/second-build" dpkg-buildpackage -us -uc -b && env PATH="/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/i/capture/the/path" HOME="/nonexistent/second-build" dpkg-genchanges -S > ../schleuder_5.0.0-7_source.changes dpkg-buildpackage: info: source package schleuder dpkg-buildpackage: info: source version 5.0.0-7 dpkg-buildpackage: info: source distribution unstable @@ -1193,7 +1229,7 @@ dh_ruby --build dh_auto_test -O--buildsystem=ruby dh_ruby --test - rm -fr -- /tmp/dh-xdg-rundir-UzBo276F + rm -fr -- /tmp/dh-xdg-rundir-dtIroI09 create-stamp debian/debhelper-build-stamp dh_testroot -O--buildsystem=ruby dh_prep -O--buildsystem=ruby @@ -1340,237 +1376,380 @@ RUBYLIB=/build/reproducible-path/schleuder-5.0.0/debian/schleuder/usr/lib/ruby/vendor_ruby:. GEM_PATH=/build/reproducible-path/schleuder-5.0.0/debian/schleuder/usr/share/rubygems-integration/all:/build/reproducible-path/schleuder-5.0.0/debian/.debhelper/generated/_source/home/.local/share/gem/ruby/3.3.0:/var/lib/gems/3.3.0:/usr/local/lib/ruby/gems/3.3.0:/usr/lib/ruby/gems/3.3.0:/usr/lib/i386-linux-gnu/ruby/gems/3.3.0:/usr/share/rubygems-integration/3.3.0:/usr/share/rubygems-integration/all:/usr/lib/i386-linux-gnu/rubygems-integration/3.3.0 ruby3.3 -S rake --rakelibdir /gem2deb-nonexistent -f debian/ruby-tests.rake /usr/bin/ruby3.3 -S rake -f debian/Rakefile db:create -Created database '/tmp/schleuder-bb7a197d100cbc50a5e3d3e3ef458e11/test.sqlite3' +Created database '/tmp/schleuder-8e214a7264b5dd8d6787092dcd29757e/test.sqlite3' /usr/bin/ruby3.3 -S rake -f debian/Rakefile db:schema:load /usr/bin/ruby3.3 -I/usr/share/rubygems-integration/all/gems/rspec-support-3.13.1/lib:/usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/exe/rspec --format documentation -Randomized with seed 35679 +Randomized with seed 37349 -protected subject - is included as mime-part in body - is not leaked - is included in mime-headers - don't block request-messages - recognizes keywords in mails with protected headers and empty subject - works with mutt protected headers +authorization via api + allows authorized access + allows un-authorized access to /status.json + blocks un-authorized access to other URLs -keys via api - list - doesn't list keys without authentication - does list keys with authentication - import - returns json with empty array in case of useless input - returns json with key details about imported keys - does list keys with authentication - doesn't import keys without authentication - export - doesn't export keys without authentication - does list keys with authentication - check - does check keys with authorization - doesn't check keys without authentication - delete - doesn't delete keys without authentication - does delete keys with authentication - a key with broken utf8 in uid - does add key - already imported - does get key - does list this key - does delete key +user sends a plain text message + from thunderbird being plain + from thunderbird being signed-mime + from thunderbird being signed-inline + +running filters + .key_auto_import_from_autocrypt_header + successfully validates a signature, whose previously unknown key is in the autocrypt-header + .fix_exchange_messages! + accepts a valid plain-text message + accepts an invalid pgp/mime Exchange message + .key_auto_import_from_attachments + successfully validates a signature, whose previously unknown key is attached + successfully validates a signature, whose previously unknown key is attached, from an encrypted+signed message + .strip_html_from_alternative! + does NOT strip HTML-part from multipart/alternative-message that does NOT contain ascii-armored PGP-data + strips HTML-part from multipart/alternative-message that contains ascii-armored PGP-data + .max_message_size + bounces to big mails Schleuder::KeywordHandlers::SignThis + signs body content if no attachments are present responds to the configured keyword method signs attachment (even if a body is present) - signs body content if no attachments are present GPGME::Key + #minimal + returns a minimal key .valid_fingerprint? valid fingerprints - accepts 0x59C71FB38AEE22E091C78259D06350440F759BD3 as a valid fingerprint accepts 59C71FB38AEE22E091C78259D0635044 as a valid fingerprint - accepts 0x59C71FB38AEE22E091C78259D0635044 as a valid fingerprint accepts 59C71FB38AEE22E091C78259D06350440F759BD3 as a valid fingerprint + accepts 0x59C71FB38AEE22E091C78259D0635044 as a valid fingerprint + accepts 0x59C71FB38AEE22E091C78259D06350440F759BD3 as a valid fingerprint invalid fingerprints + rejects 59C71FB38AEE22E091C78259D06350440F759BD3A as an invalid fingerprint rejects Z9C71FB38AEE22E091C78259D06350440F759BD3 as an invalid fingerprint rejects Z9C71FB38AEE22E091C78259D0635044 as an invalid fingerprint rejects 59C71FB38AEE22E091C78259D06350440F759BD as an invalid fingerprint - rejects 0x59C71FB38AEE22E091C78259D06350440F759B as an invalid fingerprint - rejects 59C71FB38AEE22E091C78259D06350440F759BD3A as an invalid fingerprint rejects Z9C71FB38AEE22E091C78259D0635044 as an invalid fingerprint - #minimal - returns a minimal key + rejects 0x59C71FB38AEE22E091C78259D06350440F759B as an invalid fingerprint #summary - displays the expected basic attributes - displays the expected attributes for a key that's not capable of encryption - displays the expected attributes for an expiring key displays the expected attributes for an expired key displays the expected attributes for a revoked key + displays the expected attributes for an expiring key + displays the expected basic attributes + displays the expected attributes for a key that's not capable of encryption -Schleuder::KeywordHandlers::Base - stores mail, list and arguments as instance variables - provides methods to register keywords +user sends emails with different charsets + works with japanese_iso_2022 + works with simple_jis + works with japanese + works with simple_latin1 + works with signed_utf8 + works with japanese_attachment_long_name + works with japanese_attachment + works with thunderbird-multi-alt-html + works with simple_utf8 + works with ks_c_5601-1987 + works with japanese_shift_jis + works with simple_jpiso2022 -user sends an encrypted message - from thunderbird being encrypted-mime - from thunderbird being encrypted-inline - from thunderbird being encrypted+signed-mime - from thunderbird being encrypted+signed-inline +Schleuder::Runner + #run + does not throw an error on emails with large first mime-part + does not throw an error on emails with an attached pgp key as application/octet-stream + does not throw an error on encrypted but unsigned emails that contain a forwarded encrypted email + does not throw an error on emails that contain other gpg keywords + delivers a signed error message if a subscription's key is not available on a encrypted-only list + does not throw an error on emails with broken utf-8 + injects pseudoheaders appropriately into a signed multipart/alternative-message (thunderbird+enigmail-1.9) + delivers a signed error message if a subscription's key is expired on a encrypted-only list + injects pseudoheaders appropriately into an unsigned thunderbird-multipart/alternative-message + with bounces_drop_all set to false + bounces and notifies admins about bounces when bounces_notify_admins is set to true + bounces and does not notify admins if bounces_notify_admins is set to false + Quoted-Printable encoding + is handled properly in cleartext emails + is handled properly in encrypted emails + is handled properly in encrypted+signed emails + with bounces_drop_all set to true + notifies admins about bounces when bounces_notify_admins is set to true + drops all bounces when bounces_notify_admins is set to false + mails not encrypted to the list key + handles a mail containing PGP-garbage and returns DecryptionFailed error + handles a mail which was encrypted to an absent key and returns DecryptionFailed error + handles a mail which was encrypted to a passphrase and returns DecryptionFailed error + with a plain text message + has the correct headerlines + delivers the incoming message + contains the Autocrypt header if include_autocrypt_header is set to true + contains the specified pseudoheaders in the correct order + does not contain the Autocrypt header if include_autocrypt_header is set to false + contains the list headers if include_list_headers is set to true + does not deliver content if send_encrypted_only is set to true + doesn't leak the Message-Id as configured + does keep the Message-Id as configured + contains the open pgp header if include_openpgp_header is set to true + includes the internal_footer + doesn't have unwanted headerlines from the original message + does not include the public_footer + after keyword parsing + falling back works also with non-ascii content + falls back to default charset per RFC if none is set -version - does not return the current schleuder version if not authorized - returns the current schleuder version if authorized +cli + #check_keys + warns about file system permissions if it was run as root + #commands + exits with a status code of 1 in case the command is not implemented + #refresh_keys + warns about file system permissions if it was run as root + updates keys from the keyserver for only a specific list + updates keys from the keyserver + reports errors from refreshing keys -Mail::Message - does not misclassify bounce spec/fixtures/mails/bounces/tt_1234241665.txt.eml as normal message - recognizes a cron message with 'Auto-Submitted'-header NOT as automated message - does not misclassify bounce spec/fixtures/mails/bounces/tt_bounce_23.txt.eml as normal message - does not misclassify bounce spec/fixtures/mails/bounces/tt_bounce_13.txt.eml as normal message - adds list#internal_footer as last mime-part without changing its value - does not misclassify bounce spec/fixtures/mails/bounces/tt_bounce_14.txt.eml as normal message - recognizes a Jenkins message with 'Auto-Submitted'-header NOT as automated message - recognizes bounce message subject using the bounce_email gem - does not misclassify bounce spec/fixtures/mails/bounces/tt_1234175799.txt.eml as normal message - does not misclassify bounce spec/fixtures/mails/bounces/unknown_code_bounce_01.txt.eml as normal message - does not misclassify bounce spec/fixtures/mails/bounces/tt_1234211357.txt.eml as normal message - does not misclassify bounce spec/fixtures/mails/bounces/tt_bounce_05.txt.eml as normal message - does not misclassify bounce spec/fixtures/mails/bounces/tt_bounce_15.txt.eml as normal message - does not misclassify bounce spec/fixtures/mails/bounces/tt_bounce_12_soft.txt.eml as normal message - does not misclassify bounce spec/fixtures/mails/bounces/tt_bounce_08.txt.eml as normal message - does not misclassify bounce spec/fixtures/mails/bounces/tt_bounce_10.txt.eml as normal message - recognizes a message sent to listname-bounce@hostname as automated message - does not misclassify bounce spec/fixtures/mails/bounces/tt_bounce_02.txt.eml as normal message - does not misclassify bounce spec/fixtures/mails/bounces/tt_1234211932.txt.eml as normal message - does not misclassify bounce spec/fixtures/mails/bounces/tt_bounce_11.txt.eml as normal message - does not misclassify normal message spec/fixtures/mails/not_bounces/tt_1234211024.txt.eml as bounce - does not misclassify bounce spec/fixtures/mails/bounces/tt_bounce_22.txt.eml as normal message - verifies an encapsulated (signed-then-encrypted) message - does not misclassify bounce spec/fixtures/mails/bounces/tt_1234211929.txt.eml as normal message - does not misclassify bounce spec/fixtures/mails/bounces/malformed_bounce_01.txt.eml as normal message - does not misclassify bounce spec/fixtures/mails/bounces/tt_bounce_04.txt.eml as normal message - does not misclassify normal message spec/fixtures/mails/not_bounces/tt_1234210666.txt.eml as bounce - does not misclassify bounce spec/fixtures/mails/bounces/tt_bounce_16.txt.eml as normal message - does not misclassify bounce spec/fixtures/mails/bounces/tt_bounce_07.txt.eml as normal message - does not misclassify bounce spec/fixtures/mails/bounces/tt_bounce_18.txt.eml as normal message - does not misclassify normal message spec/fixtures/mails/not_bounces/Bug_948981-_marked_as_pending_in_schleuder.eml as bounce - does not misclassify bounce spec/fixtures/mails/bounces/tt_1234177688.txt.eml as normal message - does not misclassify bounce spec/fixtures/mails/bounces/tt_bounce_20.txt.eml as normal message - does not misclassify bounce spec/fixtures/mails/bounces/undeliverable_gmail.txt.eml as normal message - does not misclassify normal message spec/fixtures/mails/not_bounces/Bug_948982-_marked_as_pending_in_schleuder.eml as bounce - does not misclassify bounce spec/fixtures/mails/bounces/tt_1234211931.txt.eml as normal message - does not misclassify bounce spec/fixtures/mails/bounces/tt_bounce_25.txt.eml as normal message - does not misclassify bounce spec/fixtures/mails/bounces/tt_bounce_19.txt.eml as normal message - does not misclassify bounce spec/fixtures/mails/bounces/tt_bounce_21.txt.eml as normal message - does not misclassify bounce spec/fixtures/mails/bounces/tt_bounce_03.txt.eml as normal message - does not misclassify bounce spec/fixtures/mails/bounces/tt_1234285532.txt.eml as normal message - does not misclassify bounce spec/fixtures/mails/bounces/tt_1234285668.txt.eml as normal message - does not misclassify bounce spec/fixtures/mails/bounces/tt_bounce_17.txt.eml as normal message - adds list#public_footer as last mime-part without changing its value - does not misclassify bounce spec/fixtures/mails/bounces/tt_1234210655.txt.eml as normal message - does not misclassify normal message spec/fixtures/mails/not_bounces/Bug_948980-_marked_as_pending_in_schleuder.eml as bounce - does not misclassify bounce spec/fixtures/mails/bounces/tt_bounce_09.txt.eml as normal message - does not misclassify bounce spec/fixtures/mails/bounces/tt_bounce_01.txt.eml as normal message - does not misclassify bounce spec/fixtures/mails/bounces/tt_bounce_24.txt.eml as normal message - recognizes a sudo message with 'Auto-Submitted'-header NOT as automated message - does not misclassify bounce spec/fixtures/mails/bounces/tt_bounce_06.txt.eml as normal message - does not misclassify normal message spec/fixtures/mails/not_bounces/tt_1234241664.txt.eml as bounce - doesn't change the order of mime-parts - #add_subject_prefix! - does not add a subject prefix if already present - adds a configured subject prefix - adds a configured subject prefix without subject - .keywords - takes the whole rest of the body as keyword argument if blank lines are present - ignores empty lines before keywords - splits lines into words and downcases them in keyword arguments - drops multiple empty lines between keywords and content - stops looking for keywords when the first line is already email content - stops looking for keywords when already the first line is blank followed by email content - drops empty lines in keyword arguments parsing - stops looking for keywords when a blank line that is not followed by another keyword is met - reads multiple lines as keyword arguments - makes a pseudo header - with key / value - with empty value - that single multiline are getting indented - that a line with less than 76 gets wrapped - that a multiline with less than 76 get wrapped correctly on the first line and the following lines - without value - that is getting wrapped - that a multiline with less than 76 get wrapped correctly on the first line - that multiline are getting wrapped +Schleuder::Http + uses a proxy if one is configured -Schleuder::ListBuilder - creates a new, valid list - subscribes the adminaddress and ignores the adminfingerprint if an adminkey was given - returns an error-message if given an invalid email-address - returns an error-message if given an invalid email-address with a space - subscribes the adminaddress and respects the given adminfingerprint - creates a list-key with all required UIDs - subscribes the adminaddress and imports the adminkey - creates a listdir for the list +Schleuder::KeywordHandlers::KeyManagement + registers keywords + .add_key + imports from an inline mix of ascii-armored key and non-key material + imports a key from attached quoted-printable binary material + imports a key from inline ascii-armored material + imports from attached quoted-printable key-material (as produced by Thunderbird 115) + imports a key from attached binary material (without specified encoding) + imports a key from attached explicitly base64-encoded binary material + ignores arguments + imports from attached quoted-printable binary key-material (as produced by Mutt 2.0.5) + rejects garbage + updates a key + imports a key from attached acsii-armored material + ignores body if an ascii-armored attachment is present + imports from attached quoted-printable ascii-armored key-material + .delete_key + deletes a key that distinctly matches the argument + deletes no key if the argument does not match + returns a string as error message if input message has no content + sends error message if no argument is given + deletes multiple keys that each distinctly match one argument -Schleuder::Subscription +Schleuder::List + is invalid if logfiles_to_keep is 0 + is expected to respond to #keywords_admin_notify + is invalid if bounces_notify_admins is blank + exports the key with the given fingerprint + is invalid if include_list_headers is blank + is invalid if subject_prefix_out contains a linebreak is invalid when email is nil + is expected to respond to #bounces_drop_all + is expected to respond to #send_encrypted_only + is expected to respond to #bounces_drop_on_headers + is expected to respond to #max_message_size_kb + is expected to respond to #fingerprint + has a valid factory + is invalid if receive_signed_only is nil + is valid if keywords_admin_only does not contain special characters + is expected to respond to #subject_prefix_out + is invalid if language is jp + is expected to respond to #log_level + is invalid if forward_all_incoming_to_admins is blank + is invalid if forward_all_incoming_to_admins is nil + is invalid if set_reply_to_to_sender is blank + is expected to respond to #language + is expected to respond to #bounces_notify_admins + is invalid if openpgp_header_preference is foobar + is invalid when fingerprint contains invalid characters + is invalid if receive_from_subscribed_emailaddresses_only is blank + is invalid if receive_from_subscribed_emailaddresses_only is nil + is invalid when fingerprint is blank + is invalid if munge_from is blank + is expected to respond to #public_footer + is invalid if headers_to_meta contains special characters + is invalid if receive_signed_only is blank + is invalid if receive_encrypted_only is blank + is invalid if include_list_headers is nil + is invalid if bounces_drop_on_headers contains special characters + is invalid when fingerprint is nil + is expected to respond to #keep_msgid + is invalid if bounces_notify_admins is nil + is invalid if receive_authenticated_only is nil + is invalid if munge_from is nil + is invalid if receive_admin_only is nil + is expected to respond to #receive_from_subscribed_emailaddresses_only + is expected to respond to #subscriptions + is invalid if include_openpgp_header is blank is expected to respond to #email - is invalid when list_id is blank - downcases all letters of an email address + is invalid if subject_prefix_in contains a linebreak + is invalid when email is blank + is invalid if include_list_headers is nil + is expected to respond to #headers_to_meta + is invalid if include_openpgp_header is nil + is expected to respond to #subject_prefix_in + is invalid if log_level is foobar + is expected to respond to #receive_signed_only + is expected to respond to #receive_encrypted_only + is valid if subject_prefix is nil + is invalid if bounces_drop_all is nil + is invalid if include_list_headers is blank + is expected to respond to #include_openpgp_header + is expected to respond to #set_reply_to_to_sender + is expected to respond to #include_list_headers + is invalid if internal_footer includes a non-printable character + is invalid if keywords_admin_notify contains special characters + is expected to respond to #receive_admin_only + is invalid if keep_msgid is nil + is invalid if set_reply_to_to_sender is nil + is expected to respond to #subject_prefix + is invalid when email contains a space + is invalid if subject_prefix contains a linebreak + is invalid if keep_msgid is blank + is expected to respond to #openpgp_header_preference + is expected to respond to #receive_authenticated_only + is expected to respond to #munge_from + is invalid if send_encrypted_only is nil + is expected to respond to #logfiles_to_keep + is expected to respond to #deliver_selfsent + is valid if headers_to_meta does not contain special characters + is invalid if receive_authenticated_only is blank + is valid if keywords_admin_notify does not contain special characters + is invalid if max_message_size_kb is 0 + is invalid if deliver_selfsent is nil + is invalid if deliver_selfsent is blank + is valid if subject_prefix_in is nil + is expected to respond to #key_auto_import_from_email + is expected to respond to #forward_all_incoming_to_admins + is expected to respond to #keywords_admin_only + is invalid if keywords_admin_only contains special characters + is expected to respond to #internal_footer + is invalid if public_footer includes a non-printable character + is invalid if bounces_drop_all is blank + is valid if subject_prefix_out is nil is invalid when email does not contain an @ - is expected to respond to #list_id + is invalid if receive_admin_only is blank + is invalid if send_encrypted_only is blank + is invalid if receive_encrypted_only is nil + #check_keys + adds a message if a key is disabled + adds a message if a key is invalid + adds a message if a key expires in two weeks or less + adds a message if a key is revoked + #keys + returns an array with the keys matching the given bracketed email address + returns an array of keys matching the given fingerprint + it returns an array with the keys of the list + returns an array with the keys matching the given email address + #set_reply_to_to_sender + does not set reply_to mail address when disabled + prefers reply_to of the sender over from when existing + sets reply-to to senders from-address when enabled + is disabled by default + #secret_key + returns the secret key with the fingerprint of the list + #subscribe + subscribes and does not set the fingerprint from key material containing no keys + subscribes and sets the fingerprint from key material that contains exactly one key + subscribes and ignores nil-values for admin and delivery_enabled + subscribes and does not set the fingerprint from key material containing multiple keys + subscribes and ignores a given fingerprint if key material is given, too + #admins + returns subscriptions of admin users + #to_s + returns the email + #request_address + adds the request keyword to the email address + #export_key + exports the key with the fingerprint of the list if no argument is given + #logfile + returns the logfile path + #sendkey_address + adds the sendkey keyword to the email address + #send_to_subscriptions + sends the message to all subscribers but not the sender, if deliver_selfsent is false and the mail is correctly signed + sends the message only to subscribers with available keys if send_encrypted_only is true, and a notification to the other subscribers + sends the message to all subscribers, in the clear if one's key is unusable, if send_encrypted_only is false + sends the message to all subscribers + sends the message to all subscribers including the sender, if deliver_selfsent is false but the mail is not correctly signed + sends the message to all subscribers including the sender, if deliver_selfsent is true and the mail is correctly signed + sends the message only to subscribers with usable keys if send_encrypted_only is true, and a notification to the other subscribers + sends the message to subscribers if deliver_selfsent is set to false + .by_recipient + returns the list for a given address + #import_key + imports a given key + #fetch_keys + does not import non-self-signatures + fetches one key by URL + fetches one key by email address + fetches one key by fingerprint + #key_minimal_base64_encoded + returns the key with the fingerprint of the list if no argument is given in an Autocrypt-compatible format + does not return the key with the fingerprint in an Autocrypt-compatible format if the argument given does not correspond to a key + send_list_key_to_subscriptions + sends its key to all subscriptions + #gpg + sets the GNUPGHOME environment variable to the listdir + returns an instance of GPGME::Ctx + #refresh_keys + does not import non-self-signatures + reports errors from refreshing keys + updates keys from the keyserver + #key + returns the key with the fingerprint of the list + #owner_address + adds the owner keyword to the email address + #bounce_address + adds the bounce keyword to the email address + #fingerprint + transforms the fingerprint to upper case + removes whitespaces and 0x from the fingerprint + #delete_key + returns false if no key with the fingerprint was found + deletes the key with the given fingerprint + #logger + calls the ListLogger + #munge_from + is disabled by default + sets from to munged version when enabled + does not munge from address when disabled + .configurable_attributes + does not contain the attributes email and fingerprint + returns an array that contains the configurable attributes + +Schleuder::Subscription is invalid when fingerprint contains invalid characters - is invalid if delivery_enabled is blank - is expected to respond to #delivery_enabled - formats email address when email begins with a space - removes whitespaces and 0x from the fingerprint is invalid if the given email is already subscribed for the list is expected to respond to #fingerprint - is valid when fingerprint is nil - has a valid factory is invalid if admin is nil - is invalid if admin is blank + is invalid when email is nil + has a valid factory is valid when fingerprint is empty + is invalid when email is blank + downcases all letters of an email address + is invalid when email does not contain an @ + is expected to respond to #email + is invalid when list_id is blank + is valid when fingerprint is nil + is expected to respond to #list_id + is expected to respond to #delivery_enabled + is invalid if delivery_enabled is blank + is invalid if admin is blank + formats email address when email begins with a space is invalid if delivery_enabled is nil + removes whitespaces and 0x from the fingerprint is expected to respond to #admin - is invalid when email is blank #fingerprint transforms the fingerprint to upper case -Schleuder::KeywordHandlers::KeyManagement - registers keywords - .add_key - imports a key from attached explicitly base64-encoded binary material - ignores arguments - imports from an inline mix of ascii-armored key and non-key material - imports a key from attached binary material (without specified encoding) - imports a key from attached quoted-printable binary material - imports from attached quoted-printable key-material (as produced by Thunderbird 115) - ignores body if an ascii-armored attachment is present - imports from attached quoted-printable binary key-material (as produced by Mutt 2.0.5) - imports a key from inline ascii-armored material - imports from attached quoted-printable ascii-armored key-material - rejects garbage - imports a key from attached acsii-armored material - updates a key - .delete_key - returns a string as error message if input message has no content - deletes multiple keys that each distinctly match one argument - deletes a key that distinctly matches the argument - deletes no key if the argument does not match - sends error message if no argument is given +status + returns status code 200 -user sends emails with different charsets - works with simple_latin1 - works with japanese_shift_jis - works with simple_jis - works with japanese_attachment_long_name - works with japanese - works with simple_utf8 - works with signed_utf8 - works with thunderbird-multi-alt-html - works with simple_jpiso2022 - works with japanese_attachment - works with ks_c_5601-1987 - works with japanese_iso_2022 +Schleuder::KeyFetcher + #fetch + fetches one key by email from SKS if vks_keyserver is blank + reports an error if both, vks_keyserver and sks_keyserver, are blank + fetches one key by email from VKS if vks_keyserver is set + reports an error from trying to fetch an URL that doesn't exist + reports the returned body content when receiving an unexpected HTTP status from the server + fetches one key by fingerprint from VKS if vks_keyserver is set + reports an error from trying to import non-key-material + fetches one key from a good URL + fetches one key by fingerprint from SKS if vks_keyserver is blank Schleuder::Filters::Runner is expected to respond to #run @@ -1580,496 +1759,353 @@ loads custom filters from filters_dir and sorts them in with missing dir loads custom filters from filters_dir even with non-2-digit priority #run - stops on a StandardError and returns error even with bounces_drop_all stops on a StandardError and returns error - stops on a StandardError and returns error even on headers match + stops on a StandardError and returns error even with bounces_drop_all runs the filters + stops on a StandardError and returns error even on headers match + +user sends an encrypted message + from thunderbird being encrypted+signed-mime + from thunderbird being encrypted-mime + from thunderbird being encrypted-inline + from thunderbird being encrypted+signed-inline + +keys via api + check + does check keys with authorization + doesn't check keys without authentication + list + doesn't list keys without authentication + does list keys with authentication + export + doesn't export keys without authentication + does list keys with authentication + delete + does delete keys with authentication + doesn't delete keys without authentication + import + returns json with empty array in case of useless input + returns json with key details about imported keys + doesn't import keys without authentication + does list keys with authentication + a key with broken utf8 in uid + does add key + already imported + does delete key + does list this key + does get key + +protected subject + don't block request-messages + is included as mime-part in body + works with mutt protected headers + recognizes keywords in mails with protected headers and empty subject + is included in mime-headers + is not leaked Schleuder::Filters .strip_html_from_alternative_if_keywords_present + does NOT strip HTML-part from multipart/alternative-message that does NOT contain keywords strips HTML-part from multipart/alternative-message that contains keywords does not choke on nor change a message without Content-Type-header - does NOT strip HTML-part from multipart/alternative-message that does NOT contain keywords strips related-part from encapsulated multipart/alternative-part that contains keywords - .fix_exchange_messages - fixes pgp/mime-messages that were mangled by Exchange - works with a text/plain message - .key_auto_import_from_autocrypt_header - imports key and reports no change + .strip_html_from_alternative + strips HTML-part from multipart/alternative-message that contains ascii-armored PGP-data + does not choke on nor change a message without Content-Type-header + does NOT strip HTML-part from multipart/alternative-message that does NOT contain ascii-armored PGP-data + .key_auto_import_from_attachments imports key and reports the change imports key and reports new key - does not import key if sender address does not match key UID, regardless of Autocrypt addr attribute only imports the one key that matches the sender address if keydata contains more than one key - .key_auto_import_from_attachments + does not import key if sender address does not match key UID + imports key and reports no change + does not import key if attachment has a different content-type than "application/pgp-keys" + .key_auto_import_from_autocrypt_header only imports the one key that matches the sender address if keydata contains more than one key imports key and reports the change - does not import key if attachment has a different content-type than "application/pgp-keys" + does not import key if sender address does not match key UID, regardless of Autocrypt addr attribute imports key and reports no change - does not import key if sender address does not match key UID imports key and reports new key - .strip_html_from_alternative - does not choke on nor change a message without Content-Type-header - does NOT strip HTML-part from multipart/alternative-message that does NOT contain ascii-armored PGP-data - strips HTML-part from multipart/alternative-message that contains ascii-armored PGP-data .receive_from_subscribed_emailaddresses_only - does not reject a message with a subscribed address as From-header with different letter case if list.receive_from_subscribed_emailaddresses_only is set - does not reject a message with a non-subscribed address as From-header if list.receive_from_subscribed_emailaddresses_only is not set rejects a message with a non-subscribed address as From-header if list.receive_from_subscribed_emailaddresses_only is set + does not reject a message with a subscribed address as From-header with different letter case if list.receive_from_subscribed_emailaddresses_only is set does not reject a message with a subscribed address as From-header if list.receive_from_subscribed_emailaddresses_only is set + does not reject a message with a non-subscribed address as From-header if list.receive_from_subscribed_emailaddresses_only is not set + .fix_exchange_messages + works with a text/plain message + fixes pgp/mime-messages that were mangled by Exchange -subscription via api - doesn't subscribe new member without authentication - subscribes an user and unsets delivery flag - unsubscribes members - subscribes an admin user with a truthy value - subscribes an admin user - subscribes new member to a list +a bounce message is received + from bounce example + +Schleuder::Conf + reads ERB code in config files + +Mail::Message + recognizes bounce message subject using the bounce_email gem + does not misclassify bounce spec/fixtures/mails/bounces/tt_1234175799.txt.eml as normal message + does not misclassify bounce spec/fixtures/mails/bounces/tt_bounce_06.txt.eml as normal message + does not misclassify normal message spec/fixtures/mails/not_bounces/tt_1234241664.txt.eml as bounce + does not misclassify normal message spec/fixtures/mails/not_bounces/Bug_948981-_marked_as_pending_in_schleuder.eml as bounce + does not misclassify bounce spec/fixtures/mails/bounces/tt_bounce_13.txt.eml as normal message + does not misclassify bounce spec/fixtures/mails/bounces/tt_1234211932.txt.eml as normal message + does not misclassify bounce spec/fixtures/mails/bounces/tt_bounce_14.txt.eml as normal message + does not misclassify bounce spec/fixtures/mails/bounces/undeliverable_gmail.txt.eml as normal message + does not misclassify bounce spec/fixtures/mails/bounces/tt_bounce_19.txt.eml as normal message + does not misclassify bounce spec/fixtures/mails/bounces/unknown_code_bounce_01.txt.eml as normal message + does not misclassify bounce spec/fixtures/mails/bounces/tt_bounce_04.txt.eml as normal message + recognizes a cron message with 'Auto-Submitted'-header NOT as automated message + does not misclassify bounce spec/fixtures/mails/bounces/tt_1234211357.txt.eml as normal message + does not misclassify bounce spec/fixtures/mails/bounces/tt_bounce_16.txt.eml as normal message + does not misclassify bounce spec/fixtures/mails/bounces/tt_bounce_09.txt.eml as normal message + adds list#public_footer as last mime-part without changing its value + does not misclassify bounce spec/fixtures/mails/bounces/tt_1234177688.txt.eml as normal message + does not misclassify bounce spec/fixtures/mails/bounces/tt_bounce_05.txt.eml as normal message + does not misclassify bounce spec/fixtures/mails/bounces/tt_bounce_11.txt.eml as normal message + does not misclassify bounce spec/fixtures/mails/bounces/tt_bounce_20.txt.eml as normal message + does not misclassify bounce spec/fixtures/mails/bounces/tt_bounce_25.txt.eml as normal message + does not misclassify normal message spec/fixtures/mails/not_bounces/Bug_948980-_marked_as_pending_in_schleuder.eml as bounce + does not misclassify bounce spec/fixtures/mails/bounces/tt_bounce_07.txt.eml as normal message + does not misclassify normal message spec/fixtures/mails/not_bounces/tt_1234210666.txt.eml as bounce + does not misclassify bounce spec/fixtures/mails/bounces/tt_bounce_22.txt.eml as normal message + does not misclassify normal message spec/fixtures/mails/not_bounces/tt_1234211024.txt.eml as bounce + does not misclassify bounce spec/fixtures/mails/bounces/tt_bounce_17.txt.eml as normal message + does not misclassify bounce spec/fixtures/mails/bounces/tt_bounce_03.txt.eml as normal message + does not misclassify bounce spec/fixtures/mails/bounces/tt_bounce_15.txt.eml as normal message + does not misclassify bounce spec/fixtures/mails/bounces/tt_bounce_02.txt.eml as normal message + does not misclassify bounce spec/fixtures/mails/bounces/tt_1234285668.txt.eml as normal message + does not misclassify bounce spec/fixtures/mails/bounces/tt_1234241665.txt.eml as normal message + does not misclassify bounce spec/fixtures/mails/bounces/malformed_bounce_01.txt.eml as normal message + does not misclassify bounce spec/fixtures/mails/bounces/tt_bounce_24.txt.eml as normal message + recognizes a sudo message with 'Auto-Submitted'-header NOT as automated message + adds list#internal_footer as last mime-part without changing its value + does not misclassify bounce spec/fixtures/mails/bounces/tt_1234210655.txt.eml as normal message + doesn't change the order of mime-parts + does not misclassify bounce spec/fixtures/mails/bounces/tt_bounce_23.txt.eml as normal message + does not misclassify bounce spec/fixtures/mails/bounces/tt_bounce_21.txt.eml as normal message + does not misclassify bounce spec/fixtures/mails/bounces/tt_bounce_08.txt.eml as normal message + does not misclassify bounce spec/fixtures/mails/bounces/tt_1234285532.txt.eml as normal message + does not misclassify bounce spec/fixtures/mails/bounces/tt_bounce_01.txt.eml as normal message + does not misclassify bounce spec/fixtures/mails/bounces/tt_1234211931.txt.eml as normal message + recognizes a message sent to listname-bounce@hostname as automated message + does not misclassify bounce spec/fixtures/mails/bounces/tt_bounce_10.txt.eml as normal message + recognizes a Jenkins message with 'Auto-Submitted'-header NOT as automated message + verifies an encapsulated (signed-then-encrypted) message + does not misclassify bounce spec/fixtures/mails/bounces/tt_1234211929.txt.eml as normal message + does not misclassify bounce spec/fixtures/mails/bounces/tt_bounce_12_soft.txt.eml as normal message + does not misclassify normal message spec/fixtures/mails/not_bounces/Bug_948982-_marked_as_pending_in_schleuder.eml as bounce + does not misclassify bounce spec/fixtures/mails/bounces/tt_bounce_18.txt.eml as normal message + .keywords + stops looking for keywords when a blank line that is not followed by another keyword is met + drops multiple empty lines between keywords and content + splits lines into words and downcases them in keyword arguments + drops empty lines in keyword arguments parsing + ignores empty lines before keywords + reads multiple lines as keyword arguments + takes the whole rest of the body as keyword argument if blank lines are present + stops looking for keywords when already the first line is blank followed by email content + stops looking for keywords when the first line is already email content + makes a pseudo header + with key / value + with empty value + that a multiline with less than 76 get wrapped correctly on the first line + that single multiline are getting indented + without value + that is getting wrapped + that a multiline with less than 76 get wrapped correctly on the first line and the following lines + that multiline are getting wrapped + that a line with less than 76 gets wrapped + #add_subject_prefix! + adds a configured subject prefix + does not add a subject prefix if already present + adds a configured subject prefix without subject + +Schleuder::KeywordHandlers::Base + stores mail, list and arguments as instance variables + provides methods to register keywords user sends keyword - x-resend-encrypted-only with expired key - x-subscribe with invalid arguments - x-list-keys with one argument + x-set-fingerprint with email-address but without valid fingerprint x-subscribe without attributes + x-set-fingerprint without email-address and with valid fingerprint + resend returns an error about wrong arguments if email content got into the arguments due to no blank line + x-resend-cc-encrypted-only with expired key + x-resend-cc-encrypted-only with matching key + x-list-subscriptions without arguments + x-fetch-key with unknown email-address + x-set-fingerprint with own email-address and valid fingerprint + x-list-subscriptions without arguments but with admin-notification + x-unsubscribe without argument x-unset-fingerprint with own email-address as admin and force - x-resend with admin-notification and admin has delivery disabled + x-resend-cc-encrypted-only to 2 addresses with missing keys + x-fetch-key with fingerprint + x-attach-listkey + x-subscribe with attributes (first one 'false') and spaces-separated fingerprint + x-subscribe with attributes x-list-keys without arguments - x-fetch-key with URL - x-list-subscriptions without arguments - x-resend with invalid recipient - x-resend-encrypted-only with two matching keys, one of which is expired - x-fetch-key with invalid input + x-resend with admin-notification and admin has delivery disabled + x-subscribe with attributes (last one 'true') and spaces-separated fingerprint + x-resend with admin-notification + x-resend-encrypted-only with matching key + x-resend-cc to 2 addresses with one missing keys + x-set-fingerprint with email-address but without fingerprint x-set-fingerprint with other email-address and valid fingerprint - x-list-key with prefixed fingerprint - x-fetch-key with unknown fingerprint - x-fetch-key with email address - x-set-fingerprint with other email-address and valid fingerprint as non-admin - x-get-logfile with debug level sends non-empty logfile - x-unsubscribe - x-subscribe with attributes and spaces-separated fingerprint - x-unsubscribe doesn't unsubscribe last admin - x-unsubscribe without argument - x-attach-listkey from Thunderbird with protected headers - x-fetch-key without arguments + x-get-version + x-resend-cc-encrypted-only to 2 addresses with matching keys + x-resend x-sign-this with attachments x-sign-this with inline text - x-get-key with invalid argument + x-list-keys with one argument + x-unset-fingerprint with other email-address as admin + x-resend-cc-encrypted-only to 3 addresses with one missing keys + x-fetch-key with unknown fingerprint + does not parse keywords once the mail body started + x-fetch-key without arguments + x-resend-encrypted-only with expired key + x-list-subscriptions with non-matching argument + x-subscribe without attributes, but with spaces-separated fingerprint + x-fetch-key with email address + x-resend with utf-8 body and umlauts + x-fetch-key with invalid input + x-resend-encrypted-only with two matching keys, one of which is expired + x-unsubscribe with invalid argument + x-resend-cc to 2 addresses with missing keys + x-fetch-key with fingerprint of unchanged key + x-subscribe with one attribute and spaces-separated fingerprint x-unset-fingerprint with not-subscribed email-address + x-unset-fingerprint without argument + x-subscribe with invalid arguments + x-set-fingerprint without argument + x-get-key with valid argument + x-list-keys with two arguments + x-get-version with delivery disabled + x-list-subscriptions with matching argument + x-fetch-key with URL + x-list-key with prefixed fingerprint x-resend with iso-8859-1 body - x-resend-cc-encrypted-only with matching key - x-resend-encrypted-only with matching key - x-resend - x-set-fingerprint with email-address but without fingerprint - x-set-fingerprint without email-address and with valid fingerprint + x-subscribe without arguments x-get-key with empty argument - x-set-fingerprint with email-address but without valid fingerprint - x-fetch-key with fingerprint of unchanged key + x-set-fingerprint with other email-address and valid fingerprint as non-admin x-set-fingerprint with own email-address and valid, spaces-separated fingerprint - x-resend with utf-8 body and umlauts - x-list-key with correctly prefixed email-sub-string - x-resend with admin-notification - x-subscribe without attributes, but with spaces-separated fingerprint - x-subscribe without arguments - x-set-fingerprint without email-address and with invalid fingerprint - x-fetch-key with unknown email-address - x-unset-fingerprint with other email-address as non-admin - x-subscribe with attributes (last one 'true') and spaces-separated fingerprint - x-subscribe with one attribute and spaces-separated fingerprint - x-set-fingerprint without argument - x-unset-fingerprint with other email-address as admin - x-fetch-key with invalid URL - x-attach-listkey + x-set-fingerprint with not-subscribed email-address and valid fingerprint x-resend-cc-encrypted-only to 2 addresses with one missing keys - x-resend-cc to 2 addresses with one missing keys - x-subscribe with attributes - x-resend-cc-encrypted-only to 2 addresses with matching keys - x-resend-cc-encrypted-only to 3 addresses with one missing keys - x-resend-cc-encrypted-only to 2 addresses with missing keys - x-list-subscriptions with matching argument - x-subscribe with attributes (first one 'false') and spaces-separated fingerprint - x-get-version - x-list-keys with two arguments - x-get-key with valid argument + x-fetch-key with invalid URL + x-get-key with invalid argument + x-get-logfile with debug level sends non-empty logfile + x-unset-fingerprint with other email-address as non-admin + x-resend with invalid recipient + x-resend does not include internal_footer + x-subscribe with attributes and spaces-separated fingerprint + x-get-logfile with error-level sends empty logfile + x-set-fingerprint without email-address and with invalid fingerprint + x-unsubscribe doesn't unsubscribe last admin + x-attach-listkey from Thunderbird with protected headers + x-unsubscribe x-resend-unencrypted with matching key - x-fetch-key with fingerprint - x-set-fingerprint with own email-address and valid fingerprint - x-list-subscriptions without arguments but with admin-notification - x-resend-cc to 2 addresses with missing keys - x-unsubscribe with invalid argument - does not parse keywords once the mail body started - x-get-version with delivery disabled - resend returns an error about wrong arguments if email content got into the arguments due to no blank line + x-list-key with correctly prefixed email-sub-string x-unset-fingerprint with own email-address as admin but without force x-list-key with arbitrary email-sub-string - x-resend-cc-encrypted-only with expired key - x-get-logfile with error-level sends empty logfile - x-set-fingerprint with not-subscribed email-address and valid fingerprint - x-unset-fingerprint without argument - x-list-subscriptions with non-matching argument - x-resend does not include internal_footer with broken utf8 in key - x-add-key with inline key-material x-list-keys works x-get-key with valid argument + x-add-key with inline key-material -authorization via api - blocks un-authorized access to other URLs - allows un-authorized access to /status.json - allows authorized access - -status - returns status code 200 - -cli - #check_keys - warns about file system permissions if it was run as root - #refresh_keys - warns about file system permissions if it was run as root - reports errors from refreshing keys - updates keys from the keyserver - updates keys from the keyserver for only a specific list - #commands - exits with a status code of 1 in case the command is not implemented +Schleuder::LoggerNotifications + notifies admins of simple text-message + notifies admins of multiple text-messages + notifies admins in the clear if their key is unusable + notifies admins of multiple text-messages and the original message + includes a List-Id header in notification mails sent to admins + notifies admins encryptedly if their key is usable + return path + sets superadmin + sets default superadmin -someone sends an email to a listname-dash-address - forwards the message to the admins if extension is -bounce and it's a real bounce mail - sends the list's key as reply to -sendkey - forwards the message to the admins if extension is -bounce - forwards the message to the admins if extension is -owner +lists via api + shows a list + creates a list + correctly finds a list by email-address that starts with a number GPGME::Ctx - #normalize_key_identifier with un-bracketed email-address - #find_keys with bracketed email-address - #normalize_key_identifier with bracketed email-address - #keyimport - #find_keys with un-bracketed wrong email-address - #normalize_key_identifier with URL - #find_keys with un-prefixed fingerprint #gpgcli returns correct data types + #normalize_key_identifier with prefixed fingerprint + #find_keys with bracketed email-address + #normalize_key_identifier with un-bracketed email-address #normalize_key_identifier with un-prefixed fingerprint - #find_keys without argument + #find_keys with un-bracketed wrong email-address #find_keys with bracketed wrong email-address - #find_keys with un-marked sub-string - #keyimport with unusable data + #find_keys with correctly marked sub-string #find_keys with correctly marked narrower sub-string #find_keys with un-bracketed email-address - #normalize_key_identifier with prefixed fingerprint #normalize_key_identifier with some string + #find_keys without argument + #keyimport with unusable data #find_keys with prefixed fingerprint - #find_keys with correctly marked sub-string - -Schleuder::Http - uses a proxy if one is configured - -Schleuder::List - is invalid if include_list_headers is blank - is invalid if keywords_admin_notify contains special characters - is invalid if set_reply_to_to_sender is blank - is invalid if bounces_drop_on_headers contains special characters - is invalid if receive_admin_only is nil - is expected to respond to #email - is invalid if send_encrypted_only is blank - is valid if headers_to_meta does not contain special characters - is invalid if include_list_headers is blank - is valid if subject_prefix_out is nil - is expected to respond to #subscriptions - is invalid if keywords_admin_only contains special characters - is invalid if keep_msgid is nil - is invalid when fingerprint is nil - is invalid if set_reply_to_to_sender is nil - is valid if subject_prefix_in is nil - is invalid if receive_authenticated_only is nil - is expected to respond to #send_encrypted_only - is expected to respond to #fingerprint - is invalid if munge_from is blank - is expected to respond to #language - is invalid if forward_all_incoming_to_admins is blank - exports the key with the given fingerprint - is expected to respond to #receive_encrypted_only - is invalid if internal_footer includes a non-printable character - is expected to respond to #subject_prefix - is invalid if include_openpgp_header is blank - is expected to respond to #keep_msgid - is invalid if receive_admin_only is blank - is expected to respond to #forward_all_incoming_to_admins - is expected to respond to #internal_footer - has a valid factory - is invalid if logfiles_to_keep is 0 - is invalid if forward_all_incoming_to_admins is nil - is invalid if send_encrypted_only is nil - is expected to respond to #subject_prefix_in - is expected to respond to #subject_prefix_out - is expected to respond to #set_reply_to_to_sender - is invalid if bounces_drop_all is blank - is expected to respond to #receive_from_subscribed_emailaddresses_only - is invalid if bounces_drop_all is nil - is invalid when email is nil - is invalid if keep_msgid is blank - is expected to respond to #logfiles_to_keep - is invalid when email is blank - is invalid if include_list_headers is nil - is expected to respond to #receive_admin_only - is expected to respond to #bounces_drop_all - is expected to respond to #openpgp_header_preference - is expected to respond to #max_message_size_kb - is invalid if public_footer includes a non-printable character - is invalid if log_level is foobar - is invalid if munge_from is nil - is invalid when fingerprint contains invalid characters - is expected to respond to #public_footer - is invalid when fingerprint is blank - is invalid if receive_signed_only is nil - is expected to respond to #headers_to_meta - is invalid if receive_from_subscribed_emailaddresses_only is nil - is expected to respond to #bounces_notify_admins - is expected to respond to #receive_signed_only - is invalid when email contains a space - is invalid if receive_encrypted_only is nil - is invalid when email does not contain an @ - is expected to respond to #receive_authenticated_only - is invalid if deliver_selfsent is blank - is invalid if receive_encrypted_only is blank - is invalid if receive_authenticated_only is blank - is invalid if receive_from_subscribed_emailaddresses_only is blank - is invalid if openpgp_header_preference is foobar - is invalid if headers_to_meta contains special characters - is expected to respond to #bounces_drop_on_headers - is invalid if language is jp - is invalid if subject_prefix_in contains a linebreak - is invalid if bounces_notify_admins is nil - is expected to respond to #keywords_admin_notify - is invalid if receive_signed_only is blank - is invalid if include_list_headers is nil - is invalid if subject_prefix contains a linebreak - is expected to respond to #include_openpgp_header - is invalid if include_openpgp_header is nil - is invalid if subject_prefix_out contains a linebreak - is invalid if max_message_size_kb is 0 - is expected to respond to #include_list_headers - is valid if keywords_admin_only does not contain special characters - is expected to respond to #munge_from - is invalid if deliver_selfsent is nil - is expected to respond to #deliver_selfsent - is expected to respond to #keywords_admin_only - is invalid if bounces_notify_admins is blank - is expected to respond to #log_level - is valid if subject_prefix is nil - is valid if keywords_admin_notify does not contain special characters - is expected to respond to #key_auto_import_from_email - #fetch_keys - does not import non-self-signatures - fetches one key by email address - fetches one key by fingerprint - fetches one key by URL - #refresh_keys - updates keys from the keyserver - reports errors from refreshing keys - does not import non-self-signatures - #secret_key - returns the secret key with the fingerprint of the list - #delete_key - returns false if no key with the fingerprint was found - deletes the key with the given fingerprint - #owner_address - adds the owner keyword to the email address - #logger - calls the ListLogger - #fingerprint - transforms the fingerprint to upper case - removes whitespaces and 0x from the fingerprint - #key_minimal_base64_encoded - does not return the key with the fingerprint in an Autocrypt-compatible format if the argument given does not correspond to a key - returns the key with the fingerprint of the list if no argument is given in an Autocrypt-compatible format - .by_recipient - returns the list for a given address - #set_reply_to_to_sender - sets reply-to to senders from-address when enabled - is disabled by default - does not set reply_to mail address when disabled - prefers reply_to of the sender over from when existing - #key - returns the key with the fingerprint of the list - #send_to_subscriptions - sends the message to all subscribers, in the clear if one's key is unusable, if send_encrypted_only is false - sends the message to all subscribers but not the sender, if deliver_selfsent is false and the mail is correctly signed - sends the message to subscribers if deliver_selfsent is set to false - sends the message only to subscribers with usable keys if send_encrypted_only is true, and a notification to the other subscribers - sends the message to all subscribers including the sender, if deliver_selfsent is true and the mail is correctly signed - sends the message to all subscribers including the sender, if deliver_selfsent is false but the mail is not correctly signed - sends the message only to subscribers with available keys if send_encrypted_only is true, and a notification to the other subscribers - sends the message to all subscribers - #import_key - imports a given key - #logfile - returns the logfile path - #request_address - adds the request keyword to the email address - #to_s - returns the email - send_list_key_to_subscriptions - sends its key to all subscriptions - .configurable_attributes - does not contain the attributes email and fingerprint - returns an array that contains the configurable attributes - #keys - returns an array with the keys matching the given bracketed email address - returns an array with the keys matching the given email address - returns an array of keys matching the given fingerprint - it returns an array with the keys of the list - #sendkey_address - adds the sendkey keyword to the email address - #check_keys - adds a message if a key is invalid - adds a message if a key is disabled - adds a message if a key expires in two weeks or less - adds a message if a key is revoked - #gpg - returns an instance of GPGME::Ctx - sets the GNUPGHOME environment variable to the listdir - #bounce_address - adds the bounce keyword to the email address - #admins - returns subscriptions of admin users - #export_key - exports the key with the fingerprint of the list if no argument is given - #munge_from - sets from to munged version when enabled - is disabled by default - does not munge from address when disabled - #subscribe - subscribes and ignores a given fingerprint if key material is given, too - subscribes and ignores nil-values for admin and delivery_enabled - subscribes and sets the fingerprint from key material that contains exactly one key - subscribes and does not set the fingerprint from key material containing no keys - subscribes and does not set the fingerprint from key material containing multiple keys - -a bounce message is received - from bounce example - -Schleuder::KeyFetcher - #fetch - reports the returned body content when receiving an unexpected HTTP status from the server - fetches one key from a good URL - fetches one key by fingerprint from VKS if vks_keyserver is set - fetches one key by email from VKS if vks_keyserver is set - reports an error if both, vks_keyserver and sks_keyserver, are blank - reports an error from trying to fetch an URL that doesn't exist - fetches one key by email from SKS if vks_keyserver is blank - fetches one key by fingerprint from SKS if vks_keyserver is blank - reports an error from trying to import non-key-material - -user sends a plain text message - from thunderbird being signed-mime - from thunderbird being plain - from thunderbird being signed-inline - -KeywordHandlersRunner - returns an error message if keyword is configured as admin-only - stores a keyword that was registered - rejects X-LIST-NAME with mismatching argument - rejects unknown keywords - notifies admins - does not require mandatory keywords if no keywords are present - requires X-LIST-NAME - loads additional keyword handlers + #find_keys with un-prefixed fingerprint + #normalize_key_identifier with bracketed email-address + #normalize_key_identifier with URL + #keyimport + #find_keys with un-marked sub-string Errors + ::MessageUnencrypted shows sensible string in response to to_s() + ::MessageUnauthenticated shows sensible string in response to to_s() + ::LoadingListSettingsFailed shows sensible string in response to to_s() + ::MessageSenderNotSubscribed shows sensible string in response to to_s() + ::KeywordAdminOnly shows sensible string in response to to_s() ::ListNotFound shows sensible string in response to to_s() - ::MessageNotFromAdmin shows sensible string in response to to_s() + ::MessageUnsigned shows sensible string in response to to_s() ::KeyAdduidFailed shows sensible string in response to to_s() - ::MessageTooBig shows sensible string in response to to_s() - ::MessageSenderNotSubscribed shows sensible string in response to to_s() - ::MessageUnauthenticated shows sensible string in response to to_s() + ::ListdirProblem shows sensible string in response to to_s() + ::KeyGenerationFailed shows sensible string in response to to_s() ::TooManyKeys shows sensible string in response to to_s() - ::MessageUnencrypted shows sensible string in response to to_s() + ::MessageNotFromAdmin shows sensible string in response to to_s() ::DecryptionFailed shows sensible string in response to to_s() ::MessageEmpty shows sensible string in response to to_s() - ::LoadingListSettingsFailed shows sensible string in response to to_s() - ::KeyGenerationFailed shows sensible string in response to to_s() - ::MessageUnsigned shows sensible string in response to to_s() - ::KeywordAdminOnly shows sensible string in response to to_s() - ::ListdirProblem shows sensible string in response to to_s() + ::MessageTooBig shows sensible string in response to to_s() -running filters - .strip_html_from_alternative! - does NOT strip HTML-part from multipart/alternative-message that does NOT contain ascii-armored PGP-data - strips HTML-part from multipart/alternative-message that contains ascii-armored PGP-data - .key_auto_import_from_attachments - successfully validates a signature, whose previously unknown key is attached, from an encrypted+signed message - successfully validates a signature, whose previously unknown key is attached - .key_auto_import_from_autocrypt_header - successfully validates a signature, whose previously unknown key is in the autocrypt-header - .fix_exchange_messages! - accepts a valid plain-text message - accepts an invalid pgp/mime Exchange message - .max_message_size - bounces to big mails +subscription via api + doesn't subscribe new member without authentication + subscribes new member to a list + subscribes an admin user + subscribes an admin user with a truthy value + subscribes an user and unsets delivery flag + unsubscribes members -Schleuder::LoggerNotifications - notifies admins of simple text-message - notifies admins encryptedly if their key is usable - notifies admins in the clear if their key is unusable - includes a List-Id header in notification mails sent to admins - notifies admins of multiple text-messages and the original message - notifies admins of multiple text-messages - return path - sets superadmin - sets default superadmin +KeywordHandlersRunner + rejects X-LIST-NAME with mismatching argument + requires X-LIST-NAME + loads additional keyword handlers + notifies admins + stores a keyword that was registered + returns an error message if keyword is configured as admin-only + does not require mandatory keywords if no keywords are present + rejects unknown keywords -lists via api - creates a list - shows a list - correctly finds a list by email-address that starts with a number +someone sends an email to a listname-dash-address + forwards the message to the admins if extension is -bounce + forwards the message to the admins if extension is -owner + sends the list's key as reply to -sendkey + forwards the message to the admins if extension is -bounce and it's a real bounce mail -Schleuder::Runner - #run - injects pseudoheaders appropriately into a signed multipart/alternative-message (thunderbird+enigmail-1.9) - delivers a signed error message if a subscription's key is expired on a encrypted-only list - does not throw an error on emails with broken utf-8 - injects pseudoheaders appropriately into an unsigned thunderbird-multipart/alternative-message - does not throw an error on emails with large first mime-part - does not throw an error on emails that contain other gpg keywords - does not throw an error on encrypted but unsigned emails that contain a forwarded encrypted email - does not throw an error on emails with an attached pgp key as application/octet-stream - delivers a signed error message if a subscription's key is not available on a encrypted-only list - with bounces_drop_all set to true - drops all bounces when bounces_notify_admins is set to false - notifies admins about bounces when bounces_notify_admins is set to true - Quoted-Printable encoding - is handled properly in encrypted emails - is handled properly in cleartext emails - is handled properly in encrypted+signed emails - with a plain text message - does keep the Message-Id as configured - does not contain the Autocrypt header if include_autocrypt_header is set to false - contains the Autocrypt header if include_autocrypt_header is set to true - does not deliver content if send_encrypted_only is set to true - includes the internal_footer - doesn't have unwanted headerlines from the original message - contains the specified pseudoheaders in the correct order - contains the open pgp header if include_openpgp_header is set to true - doesn't leak the Message-Id as configured - has the correct headerlines - delivers the incoming message - contains the list headers if include_list_headers is set to true - does not include the public_footer - with bounces_drop_all set to false - bounces and notifies admins about bounces when bounces_notify_admins is set to true - bounces and does not notify admins if bounces_notify_admins is set to false - mails not encrypted to the list key - handles a mail containing PGP-garbage and returns DecryptionFailed error - handles a mail which was encrypted to an absent key and returns DecryptionFailed error - handles a mail which was encrypted to a passphrase and returns DecryptionFailed error - after keyword parsing - falling back works also with non-ascii content - falls back to default charset per RFC if none is set +version + does not return the current schleuder version if not authorized + returns the current schleuder version if authorized -Schleuder::Conf - reads ERB code in config files +Schleuder::ListBuilder + returns an error-message if given an invalid email-address with a space + subscribes the adminaddress and ignores the adminfingerprint if an adminkey was given + subscribes the adminaddress and imports the adminkey + returns an error-message if given an invalid email-address + subscribes the adminaddress and respects the given adminfingerprint + creates a new, valid list + creates a listdir for the list + creates a list-key with all required UIDs -Finished in 5 minutes 7 seconds (files took 2.75 seconds to load) +Finished in 12 minutes 27 seconds (files took 6.29 seconds to load) 583 examples, 0 failures -Randomized with seed 35679 +Randomized with seed 37349 ┌──────────────────────────────────────────────────────────────────────────────┐ @@ -2194,125 +2230,74 @@ dpkg-buildpackage: info: binary-only upload (no source included) dpkg-genchanges: info: not including original source code in upload I: copying local configuration +I: user script /srv/workspace/pbuilder/18381/tmp/hooks/B01_cleanup starting +I: user script /srv/workspace/pbuilder/18381/tmp/hooks/B01_cleanup finished I: unmounting dev/ptmx filesystem I: unmounting dev/pts filesystem I: unmounting dev/shm filesystem I: unmounting proc filesystem I: unmounting sys filesystem W: Stray processes left from build: -* system-pbuilder-build-schleuder_5.0.0\x2d7-97909.slice - Slice /system/pbuilder/build/schleuder_5.0.0-7/97909 +* system-pbuilder-build-schleuder_5.0.0\x2d7-18381.slice - Slice /system/pbuilder/build/schleuder_5.0.0-7/18381 Loaded: loaded - Active: active since Wed 2026-04-08 03:29:32 -12; 5min ago - Tasks: 102 - Memory: 120.0M - CPU: 4min 31.262s - CGroup: /system.slice/system-pbuilder.slice/system-pbuilder-build.slice/system-pbuilder-build-schleuder_5.0.0\x2d7.slice/system-pbuilder-build-schleuder_5.0.0\x2d7-97909.slice - `-run-rdb55f93959a8475983d8eb62a8ff8bee.scope - |- 501 gpg-agent --homedir /tmp/schleuder-bb7a197d100cbc50a5e3d3e3ef458e11/example.org/list387 --use-standard-socket --daemon - |- 572 gpg-agent --homedir /tmp/schleuder-bb7a197d100cbc50a5e3d3e3ef458e11/example.org/list388 --use-standard-socket --daemon - |- 610 gpg-agent --homedir /tmp/schleuder-bb7a197d100cbc50a5e3d3e3ef458e11/example.org/list389 --use-standard-socket --daemon - |- 741 gpg-agent --homedir /tmp/schleuder-bb7a197d100cbc50a5e3d3e3ef458e11/example.org/list399 --use-standard-socket --daemon - |- 839 gpg-agent --homedir /tmp/schleuder-bb7a197d100cbc50a5e3d3e3ef458e11/example.org/list401 --use-standard-socket --daemon - |- 943 gpg-agent --homedir /tmp/schleuder-bb7a197d100cbc50a5e3d3e3ef458e11/example.org/list404 --use-standard-socket --daemon - |- 968 gpg-agent --homedir /tmp/schleuder-bb7a197d100cbc50a5e3d3e3ef458e11/example.org/list406 --use-standard-socket --daemon - |- 1055 gpg-agent --homedir /tmp/schleuder-bb7a197d100cbc50a5e3d3e3ef458e11/example.org/list407 --use-standard-socket --daemon - |- 1081 gpg-agent --homedir /tmp/schleuder-bb7a197d100cbc50a5e3d3e3ef458e11/example.org/list409 --use-standard-socket --daemon - |- 1089 gpg-agent --homedir /tmp/schleuder-bb7a197d100cbc50a5e3d3e3ef458e11/example.org/list410 --use-standard-socket --daemon - |- 1097 gpg-agent --homedir /tmp/schleuder-bb7a197d100cbc50a5e3d3e3ef458e11/example.org/list411 --use-standard-socket --daemon - |- 1105 gpg-agent --homedir /tmp/schleuder-bb7a197d100cbc50a5e3d3e3ef458e11/example.org/list414 --use-standard-socket --daemon - |- 1113 gpg-agent --homedir /tmp/schleuder-bb7a197d100cbc50a5e3d3e3ef458e11/example.org/list415 --use-standard-socket --daemon - |- 1128 gpg-agent --homedir /tmp/schleuder-bb7a197d100cbc50a5e3d3e3ef458e11/example.org/list417 --use-standard-socket --daemon - |- 1184 gpg-agent --homedir /tmp/schleuder-bb7a197d100cbc50a5e3d3e3ef458e11/example.org/list418 --use-standard-socket --daemon - |- 1235 gpg-agent --homedir /tmp/schleuder-bb7a197d100cbc50a5e3d3e3ef458e11/example.org/list419 --use-standard-socket --daemon - |- 1273 gpg-agent --homedir /tmp/schleuder-bb7a197d100cbc50a5e3d3e3ef458e11/example.org/list423 --use-standard-socket --daemon - |- 1465 gpg-agent --homedir /tmp/schleuder-bb7a197d100cbc50a5e3d3e3ef458e11/example.org/list434 --use-standard-socket --daemon - |- 1598 gpg-agent --homedir /tmp/schleuder-bb7a197d100cbc50a5e3d3e3ef458e11/example.org/list435 --use-standard-socket --daemon - |- 1666 gpg-agent --homedir /tmp/d20260408-104448-ww4k95 --use-standard-socket --daemon - |- 1690 gpg-agent --homedir /tmp/schleuder-bb7a197d100cbc50a5e3d3e3ef458e11/example.org/list436 --use-standard-socket --daemon - |- 1707 gpg-agent --homedir /tmp/d20260408-104448-v9ap94 --use-standard-socket --daemon - |- 1798 gpg-agent --homedir /tmp/d20260408-104448-bdm5r1 --use-standard-socket --daemon - |- 1823 gpg-agent --homedir /tmp/schleuder-bb7a197d100cbc50a5e3d3e3ef458e11/example.org/list437 --use-standard-socket --daemon - |- 1840 gpg-agent --homedir /tmp/d20260408-104448-707m5g --use-standard-socket --daemon - |- 1892 gpg-agent --homedir /tmp/d20260408-104448-2os5j1 --use-standard-socket --daemon - |- 1911 gpg-agent --homedir /tmp/schleuder-bb7a197d100cbc50a5e3d3e3ef458e11/example.org/list438 --use-standard-socket --daemon - |- 1919 gpg-agent --homedir /tmp/d20260408-104448-hsjf1e --use-standard-socket --daemon - |- 2130 gpg-agent --homedir /tmp/schleuder-bb7a197d100cbc50a5e3d3e3ef458e11/example.org/list439 --use-standard-socket --daemon - |- 2257 gpg-agent --homedir /tmp/schleuder-bb7a197d100cbc50a5e3d3e3ef458e11/example.org/list440 --use-standard-socket --daemon - |- 2400 gpg-agent --homedir /tmp/schleuder-bb7a197d100cbc50a5e3d3e3ef458e11/example.org/list441 --use-standard-socket --daemon - |- 2502 gpg-agent --homedir /tmp/schleuder-bb7a197d100cbc50a5e3d3e3ef458e11/example.org/list442 --use-standard-socket --daemon - |- 2538 gpg-agent --homedir /tmp/schleuder-bb7a197d100cbc50a5e3d3e3ef458e11/example.org/list443 --use-standard-socket --daemon - |- 2574 gpg-agent --homedir /tmp/schleuder-bb7a197d100cbc50a5e3d3e3ef458e11/example.org/list444 --use-standard-socket --daemon - |- 2591 gpg-agent --homedir /tmp/schleuder-bb7a197d100cbc50a5e3d3e3ef458e11/example.org/list445 --use-standard-socket --daemon - |- 2601 gpg-agent --homedir /tmp/schleuder-bb7a197d100cbc50a5e3d3e3ef458e11/example.org/list446 --use-standard-socket --daemon - |- 2622 gpg-agent --homedir /tmp/schleuder-bb7a197d100cbc50a5e3d3e3ef458e11/example.org/list447 --use-standard-socket --daemon - |- 2632 gpg-agent --homedir /tmp/schleuder-bb7a197d100cbc50a5e3d3e3ef458e11/example.org/list448 --use-standard-socket --daemon - |- 2673 gpg-agent --homedir /tmp/schleuder-bb7a197d100cbc50a5e3d3e3ef458e11/example.org/list449 --use-standard-socket --daemon - |- 2730 gpg-agent --homedir /tmp/schleuder-bb7a197d100cbc50a5e3d3e3ef458e11/example.org/list452 --use-standard-socket --daemon - |- 2769 gpg-agent --homedir /tmp/schleuder-bb7a197d100cbc50a5e3d3e3ef458e11/example.org/list453 --use-standard-socket --daemon - |- 2799 gpg-agent --homedir /tmp/schleuder-bb7a197d100cbc50a5e3d3e3ef458e11/example.org/list454 --use-standard-socket --daemon - |- 2894 gpg-agent --homedir /tmp/schleuder-bb7a197d100cbc50a5e3d3e3ef458e11/example.org/list455 --use-standard-socket --daemon - |- 2936 gpg-agent --homedir /tmp/schleuder-bb7a197d100cbc50a5e3d3e3ef458e11/example.org/list456 --use-standard-socket --daemon - |- 2998 gpg-agent --homedir /tmp/schleuder-bb7a197d100cbc50a5e3d3e3ef458e11/example.org/list457 --use-standard-socket --daemon - |- 3040 gpg-agent --homedir /tmp/schleuder-bb7a197d100cbc50a5e3d3e3ef458e11/example.org/list458 --use-standard-socket --daemon - |- 3097 gpg-agent --homedir /tmp/schleuder-bb7a197d100cbc50a5e3d3e3ef458e11/example.org/list459 --use-standard-socket --daemon - |- 3164 gpg-agent --homedir /tmp/schleuder-bb7a197d100cbc50a5e3d3e3ef458e11/example.org/list460 --use-standard-socket --daemon - |- 3185 gpg-agent --homedir /tmp/schleuder-bb7a197d100cbc50a5e3d3e3ef458e11/example.org/list461 --use-standard-socket --daemon - |- 3194 gpg-agent --homedir /tmp/schleuder-bb7a197d100cbc50a5e3d3e3ef458e11/example.org/list462 --use-standard-socket --daemon - |- 3238 gpg-agent --homedir /tmp/schleuder-bb7a197d100cbc50a5e3d3e3ef458e11/example.org/list463 --use-standard-socket --daemon - |- 3289 gpg-agent --homedir /tmp/schleuder-bb7a197d100cbc50a5e3d3e3ef458e11/example.org/list464 --use-standard-socket --daemon - |- 3314 gpg-agent --homedir /tmp/schleuder-bb7a197d100cbc50a5e3d3e3ef458e11/example.org/list465 --use-standard-socket --daemon - |- 3349 gpg-agent --homedir /tmp/schleuder-bb7a197d100cbc50a5e3d3e3ef458e11/example.org/list466 --use-standard-socket --daemon - |- 3375 gpg-agent --homedir /tmp/schleuder-bb7a197d100cbc50a5e3d3e3ef458e11/example.org/list467 --use-standard-socket --daemon - |- 3418 gpg-agent --homedir /tmp/schleuder-bb7a197d100cbc50a5e3d3e3ef458e11/example.org/list468 --use-standard-socket --daemon - |- 3470 gpg-agent --homedir /tmp/schleuder-bb7a197d100cbc50a5e3d3e3ef458e11/example.org/list469 --use-standard-socket --daemon - |- 3493 gpg-agent --homedir /tmp/schleuder-bb7a197d100cbc50a5e3d3e3ef458e11/example.org/list470 --use-standard-socket --daemon - |- 3515 gpg-agent --homedir /tmp/schleuder-bb7a197d100cbc50a5e3d3e3ef458e11/example.org/list471 --use-standard-socket --daemon - |- 3536 gpg-agent --homedir /tmp/schleuder-bb7a197d100cbc50a5e3d3e3ef458e11/example.org/list472 --use-standard-socket --daemon - |- 3580 gpg-agent --homedir /tmp/schleuder-bb7a197d100cbc50a5e3d3e3ef458e11/example.org/list473 --use-standard-socket --daemon - |- 3609 gpg-agent --homedir /tmp/schleuder-bb7a197d100cbc50a5e3d3e3ef458e11/example.org/list474 --use-standard-socket --daemon - |- 3659 gpg-agent --homedir /tmp/schleuder-bb7a197d100cbc50a5e3d3e3ef458e11/example.org/list475 --use-standard-socket --daemon - |- 3680 gpg-agent --homedir /tmp/schleuder-bb7a197d100cbc50a5e3d3e3ef458e11/example.org/list476 --use-standard-socket --daemon - |- 3701 gpg-agent --homedir /tmp/schleuder-bb7a197d100cbc50a5e3d3e3ef458e11/example.org/superlist --use-standard-socket --daemon - |- 3722 gpg-agent --homedir /tmp/schleuder-bb7a197d100cbc50a5e3d3e3ef458e11/example.org/list477 --use-standard-socket --daemon - |- 3774 gpg-agent --homedir /tmp/schleuder-bb7a197d100cbc50a5e3d3e3ef458e11/example.org/list478 --use-standard-socket --daemon - |- 3814 gpg-agent --homedir /tmp/schleuder-bb7a197d100cbc50a5e3d3e3ef458e11/example.org/list479 --use-standard-socket --daemon - |- 3825 gpg-agent --homedir /tmp/schleuder-bb7a197d100cbc50a5e3d3e3ef458e11/example.org/list480 --use-standard-socket --daemon - |- 3841 gpg-agent --homedir /tmp/schleuder-bb7a197d100cbc50a5e3d3e3ef458e11/example.org/list481 --use-standard-socket --daemon - |- 3854 gpg-agent --homedir /tmp/schleuder-bb7a197d100cbc50a5e3d3e3ef458e11/example.org/list482 --use-standard-socket --daemon - |- 3866 gpg-agent --homedir /tmp/schleuder-bb7a197d100cbc50a5e3d3e3ef458e11/example.org/list483 --use-standard-socket --daemon - |- 3909 gpg-agent --homedir /tmp/schleuder-bb7a197d100cbc50a5e3d3e3ef458e11/example.org/list484 --use-standard-socket --daemon - |-124818 gpg-agent --homedir /tmp/schleuder-bb7a197d100cbc50a5e3d3e3ef458e11/example.org/list288 --use-standard-socket --daemon - |-124827 gpg-agent --homedir /tmp/schleuder-bb7a197d100cbc50a5e3d3e3ef458e11/example.org/list289 --use-standard-socket --daemon - |-124834 gpg-agent --homedir /tmp/schleuder-bb7a197d100cbc50a5e3d3e3ef458e11/example.org/list291 --use-standard-socket --daemon - |-124843 gpg-agent --homedir /tmp/schleuder-bb7a197d100cbc50a5e3d3e3ef458e11/example.org/list294 --use-standard-socket --daemon - |-124850 gpg-agent --homedir /tmp/schleuder-bb7a197d100cbc50a5e3d3e3ef458e11/example.org/list295 --use-standard-socket --daemon - |-124857 gpg-agent --homedir /tmp/schleuder-bb7a197d100cbc50a5e3d3e3ef458e11/example.org/list296 --use-standard-socket --daemon - |-124885 gpg-agent --homedir /tmp/schleuder-bb7a197d100cbc50a5e3d3e3ef458e11/example.org/list298 --use-standard-socket --daemon - |-124893 gpg-agent --homedir /tmp/schleuder-bb7a197d100cbc50a5e3d3e3ef458e11/example.org/list299 --use-standard-socket --daemon - |-124901 gpg-agent --homedir /tmp/schleuder-bb7a197d100cbc50a5e3d3e3ef458e11/example.org/list302 --use-standard-socket --daemon - |-124908 gpg-agent --homedir /tmp/schleuder-bb7a197d100cbc50a5e3d3e3ef458e11/example.org/list303 --use-standard-socket --daemon - |-125013 gpg-agent --homedir /tmp/schleuder-bb7a197d100cbc50a5e3d3e3ef458e11/example.org/list361 --use-standard-socket --daemon - |-125023 gpg-agent --homedir /tmp/schleuder-bb7a197d100cbc50a5e3d3e3ef458e11/example.org/list362 --use-standard-socket --daemon - |-125036 gpg-agent --homedir /tmp/schleuder-bb7a197d100cbc50a5e3d3e3ef458e11/example.org/list363 --use-standard-socket --daemon - |-125047 gpg-agent --homedir /tmp/schleuder-bb7a197d100cbc50a5e3d3e3ef458e11/example.org/list364 --use-standard-socket --daemon - |-125056 gpg-agent --homedir /tmp/schleuder-bb7a197d100cbc50a5e3d3e3ef458e11/example.org/list365 --use-standard-socket --daemon - |-127414 gpg-agent --homedir /tmp/schleuder-bb7a197d100cbc50a5e3d3e3ef458e11/example.org/list366 --use-standard-socket --daemon - |-128725 gpg-agent --homedir /tmp/schleuder-bb7a197d100cbc50a5e3d3e3ef458e11/example.org/list367 --use-standard-socket --daemon - |-129692 gpg-agent --homedir /tmp/schleuder-bb7a197d100cbc50a5e3d3e3ef458e11/example.org/list368 --use-standard-socket --daemon - |-129726 gpg-agent --homedir /tmp/schleuder-bb7a197d100cbc50a5e3d3e3ef458e11/example.org/list370 --use-standard-socket --daemon - |-129778 gpg-agent --homedir /tmp/schleuder-bb7a197d100cbc50a5e3d3e3ef458e11/example.org/list375 --use-standard-socket --daemon - |-129902 gpg-agent --homedir /tmp/schleuder-bb7a197d100cbc50a5e3d3e3ef458e11/example.org/list377 --use-standard-socket --daemon - |-130007 gpg-agent --homedir /tmp/schleuder-bb7a197d100cbc50a5e3d3e3ef458e11/example.org/list378 --use-standard-socket --daemon - |-130116 gpg-agent --homedir /tmp/schleuder-bb7a197d100cbc50a5e3d3e3ef458e11/example.org/list380 --use-standard-socket --daemon - |-130340 gpg-agent --homedir /tmp/schleuder-bb7a197d100cbc50a5e3d3e3ef458e11/example.org/list381 --use-standard-socket --daemon - |-130656 gpg-agent --homedir /tmp/schleuder-bb7a197d100cbc50a5e3d3e3ef458e11/example.org/list382 --use-standard-socket --daemon - |-130713 gpg-agent --homedir /tmp/schleuder-bb7a197d100cbc50a5e3d3e3ef458e11/example.org/list383 --use-standard-socket --daemon - |-130797 gpg-agent --homedir /tmp/schleuder-bb7a197d100cbc50a5e3d3e3ef458e11/example.org/list384 --use-standard-socket --daemon - |-130867 gpg-agent --homedir /tmp/schleuder-bb7a197d100cbc50a5e3d3e3ef458e11/example.org/list385 --use-standard-socket --daemon - `-130928 gpg-agent --homedir /tmp/schleuder-bb7a197d100cbc50a5e3d3e3ef458e11/example.org/list386 --use-standard-socket --daemon + Active: active since Thu 2025-03-06 23:12:51 +14; 14min ago + Tasks: 49 + Memory: 87.4M + CPU: 8min 11.649s + CGroup: /system.slice/system-pbuilder.slice/system-pbuilder-build.slice/system-pbuilder-build-schleuder_5.0.0\x2d7.slice/system-pbuilder-build-schleuder_5.0.0\x2d7-18381.slice + `-run-r6701e6b439ae4f3f805e6249b94dbb5e.scope + |- 322 gpg-agent --homedir /tmp/schleuder-8e214a7264b5dd8d6787092dcd29757e/example.org/list432 --use-standard-socket --daemon + |- 333 gpg-agent --homedir /tmp/schleuder-8e214a7264b5dd8d6787092dcd29757e/example.org/list433 --use-standard-socket --daemon + |- 341 gpg-agent --homedir /tmp/schleuder-8e214a7264b5dd8d6787092dcd29757e/example.org/list434 --use-standard-socket --daemon + |- 358 gpg-agent --homedir /tmp/schleuder-8e214a7264b5dd8d6787092dcd29757e/example.org/list435 --use-standard-socket --daemon + |- 368 gpg-agent --homedir /tmp/schleuder-8e214a7264b5dd8d6787092dcd29757e/example.org/list436 --use-standard-socket --daemon + |- 380 gpg-agent --homedir /tmp/schleuder-8e214a7264b5dd8d6787092dcd29757e/example.org/list437 --use-standard-socket --daemon + |- 390 gpg-agent --homedir /tmp/schleuder-8e214a7264b5dd8d6787092dcd29757e/example.org/list438 --use-standard-socket --daemon + |- 400 gpg-agent --homedir /tmp/schleuder-8e214a7264b5dd8d6787092dcd29757e/example.org/list439 --use-standard-socket --daemon + |- 410 gpg-agent --homedir /tmp/schleuder-8e214a7264b5dd8d6787092dcd29757e/example.org/list444 --use-standard-socket --daemon + |- 418 gpg-agent --homedir /tmp/schleuder-8e214a7264b5dd8d6787092dcd29757e/example.org/list447 --use-standard-socket --daemon + |- 425 gpg-agent --homedir /tmp/schleuder-8e214a7264b5dd8d6787092dcd29757e/example.org/list448 --use-standard-socket --daemon + |- 432 gpg-agent --homedir /tmp/schleuder-8e214a7264b5dd8d6787092dcd29757e/example.org/list449 --use-standard-socket --daemon + |- 439 gpg-agent --homedir /tmp/schleuder-8e214a7264b5dd8d6787092dcd29757e/example.org/list450 --use-standard-socket --daemon + |- 446 gpg-agent --homedir /tmp/schleuder-8e214a7264b5dd8d6787092dcd29757e/example.org/list451 --use-standard-socket --daemon + |- 453 gpg-agent --homedir /tmp/schleuder-8e214a7264b5dd8d6787092dcd29757e/example.org/list453 --use-standard-socket --daemon + |- 472 gpg-agent --homedir /tmp/schleuder-8e214a7264b5dd8d6787092dcd29757e/example.org/list455 --use-standard-socket --daemon + |- 483 gpg-agent --homedir /tmp/schleuder-8e214a7264b5dd8d6787092dcd29757e/example.org/list456 --use-standard-socket --daemon + |- 496 gpg-agent --homedir /tmp/schleuder-8e214a7264b5dd8d6787092dcd29757e/example.org/list459 --use-standard-socket --daemon + |- 506 gpg-agent --homedir /tmp/schleuder-8e214a7264b5dd8d6787092dcd29757e/example.org/list460 --use-standard-socket --daemon + |- 676 gpg-agent --homedir /tmp/schleuder-8e214a7264b5dd8d6787092dcd29757e/example.org/list477 --use-standard-socket --daemon + |- 742 gpg-agent --homedir /tmp/schleuder-8e214a7264b5dd8d6787092dcd29757e/example.org/list481 --use-standard-socket --daemon + |- 767 gpg-agent --homedir /tmp/schleuder-8e214a7264b5dd8d6787092dcd29757e/example.org/list482 --use-standard-socket --daemon + |- 939 gpg-agent --homedir /tmp/schleuder-8e214a7264b5dd8d6787092dcd29757e/example.org/list483 --use-standard-socket --daemon + |- 1005 gpg-agent --homedir /tmp/schleuder-8e214a7264b5dd8d6787092dcd29757e/example.org/list484 --use-standard-socket --daemon + |- 1022 gpg-agent --homedir /tmp/schleuder-8e214a7264b5dd8d6787092dcd29757e/example.org/list-0.33004449845249073 --use-standard-socket --daemon + |- 1227 gpg-agent --homedir /tmp/schleuder-8e214a7264b5dd8d6787092dcd29757e/example.org/list-0.43956537963965736 --use-standard-socket --daemon + |- 1537 gpg-agent --homedir /tmp/schleuder-8e214a7264b5dd8d6787092dcd29757e/example.org/list-0.87035083703959 --use-standard-socket --daemon + |- 7851 gpg-agent --homedir /tmp/schleuder-8e214a7264b5dd8d6787092dcd29757e/example.org/list-0.9868549352023528 --use-standard-socket --daemon + |-12223 gpg-agent --homedir /tmp/schleuder-8e214a7264b5dd8d6787092dcd29757e/example.org/list-0.7282793469500782 --use-standard-socket --daemon + |-18623 gpg-agent --homedir /tmp/schleuder-8e214a7264b5dd8d6787092dcd29757e/example.org/list-0.8453625873762759 --use-standard-socket --daemon + |-52018 gpg-agent --homedir /tmp/schleuder-8e214a7264b5dd8d6787092dcd29757e/example.org/list243 --use-standard-socket --daemon + |-52057 gpg-agent --homedir /tmp/schleuder-8e214a7264b5dd8d6787092dcd29757e/example.org/list244 --use-standard-socket --daemon + |-53205 gpg-agent --homedir /tmp/schleuder-8e214a7264b5dd8d6787092dcd29757e/example.org/list262 --use-standard-socket --daemon + |-53336 gpg-agent --homedir /tmp/schleuder-8e214a7264b5dd8d6787092dcd29757e/example.org/list264 --use-standard-socket --daemon + |-53471 gpg-agent --homedir /tmp/schleuder-8e214a7264b5dd8d6787092dcd29757e/example.org/list266 --use-standard-socket --daemon + |-53720 gpg-agent --homedir /tmp/schleuder-8e214a7264b5dd8d6787092dcd29757e/example.org/list274 --use-standard-socket --daemon + |-53740 gpg-agent --homedir /tmp/schleuder-8e214a7264b5dd8d6787092dcd29757e/example.org/list276 --use-standard-socket --daemon + |-53929 gpg-agent --homedir /tmp/schleuder-8e214a7264b5dd8d6787092dcd29757e/example.org/list282 --use-standard-socket --daemon + |-54438 gpg-agent --homedir /tmp/schleuder-8e214a7264b5dd8d6787092dcd29757e/example.org/list293 --use-standard-socket --daemon + |-54981 gpg-agent --homedir /tmp/schleuder-8e214a7264b5dd8d6787092dcd29757e/example.org/list341 --use-standard-socket --daemon + |-64801 gpg-agent --homedir /tmp/schleuder-8e214a7264b5dd8d6787092dcd29757e/example.net/testlist --use-standard-socket --daemon + |-64972 gpg-agent --homedir /tmp/schleuder-8e214a7264b5dd8d6787092dcd29757e/example.org/list424 --use-standard-socket --daemon + |-65025 gpg-agent --homedir /tmp/schleuder-8e214a7264b5dd8d6787092dcd29757e/example.org/list425 --use-standard-socket --daemon + |-65237 gpg-agent --homedir /tmp/schleuder-8e214a7264b5dd8d6787092dcd29757e/example.org/list426 --use-standard-socket --daemon + |-65299 gpg-agent --homedir /tmp/schleuder-8e214a7264b5dd8d6787092dcd29757e/example.org/list427 --use-standard-socket --daemon + |-65370 gpg-agent --homedir /tmp/schleuder-8e214a7264b5dd8d6787092dcd29757e/example.org/list428 --use-standard-socket --daemon + |-65408 gpg-agent --homedir /tmp/schleuder-8e214a7264b5dd8d6787092dcd29757e/example.org/list429 --use-standard-socket --daemon + |-65455 gpg-agent --homedir /tmp/schleuder-8e214a7264b5dd8d6787092dcd29757e/example.org/list430 --use-standard-socket --daemon + `-65509 gpg-agent --homedir /tmp/schleuder-8e214a7264b5dd8d6787092dcd29757e/example.org/list431 --use-standard-socket --daemon -Apr 08 03:29:32 ionos6-i386 systemd[1]: Created slice system-pbuilder-build-schleuder_5.0.0\x2d7-97909.slice - Slice /system/pbuilder/build/schleuder_5.0.0-7/97909. +Mar 06 23:12:51 ionos12-i386 systemd[1]: Created slice system-pbuilder-build-schleuder_5.0.0\x2d7-18381.slice - Slice /system/pbuilder/build/schleuder_5.0.0-7/18381. I: cleaning the build env -I: removing directory /srv/workspace/pbuilder/97909 and its subdirectories -I: Current time: Wed Apr 8 03:35:25 -12 2026 -I: pbuilder-time-stamp: 1775662525 +I: removing directory /srv/workspace/pbuilder/18381 and its subdirectories +I: Current time: Thu Mar 6 23:27:39 +14 2025 +I: pbuilder-time-stamp: 1741253259