Diff of the two buildlogs: -- --- b1/build.log 2025-03-06 10:17:30.252313787 +0000 +++ b2/build.log 2025-03-06 10:23:25.208365089 +0000 @@ -1,6 +1,6 @@ I: pbuilder: network access will be disabled during build -I: Current time: Wed Mar 5 22:14:03 -12 2025 -I: pbuilder-time-stamp: 1741256043 +I: Current time: Thu Apr 9 06:40:34 +14 2026 +I: pbuilder-time-stamp: 1775666434 I: Building the build Environment I: extracting base tarball [/var/cache/pbuilder/trixie-reproducible-base.tgz] I: copying local configuration @@ -25,54 +25,86 @@ dpkg-source: info: applying 0001-Use_chasquid_user.patch I: Not using root during the build. I: Installing the build-deps -I: user script /srv/workspace/pbuilder/52388/tmp/hooks/D02_print_environment starting +I: user script /srv/workspace/pbuilder/55605/tmp/hooks/D01_modify_environment starting +debug: Running on ionos16-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 Apr 8 16:41 /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/55605/tmp/hooks/D01_modify_environment finished +I: user script /srv/workspace/pbuilder/55605/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=11 ' - DISTRIBUTION='trixie' - 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=21 ' + DIRSTACK=() + DISTRIBUTION=trixie + EUID=0 + FUNCNAME=([0]="Echo" [1]="main") + GROUPS=() + HOME=/root + HOSTNAME=i-capture-the-hostname + HOSTTYPE=i686 + HOST_ARCH=i386 IFS=' ' - INVOCATION_ID='4c7834297af64a7c9a561edd199f9ab4' - 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='52388' - PS1='# ' - PS2='> ' + INVOCATION_ID=0d80099439124461801ece406fa580d7 + 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=55605 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.L1xR4y9w/pbuilderrc_ykJK --distribution trixie --hookdir /etc/pbuilder/first-build-hooks --debbuildopts -b --basetgz /var/cache/pbuilder/trixie-reproducible-base.tgz --buildresult /srv/reproducible-results/rbuild-debian/r-b-build.L1xR4y9w/b1 --logfile b1/build.log chasquid_1.15.0-1.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://46.16.76.132: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.L1xR4y9w/pbuilderrc_spr1 --distribution trixie --hookdir /etc/pbuilder/rebuild-hooks --debbuildopts -b --basetgz /var/cache/pbuilder/trixie-reproducible-base.tgz --buildresult /srv/reproducible-results/rbuild-debian/r-b-build.L1xR4y9w/b2 --logfile b2/build.log chasquid_1.15.0-1.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://213.165.73.152:3128 I: uname -a - Linux ionos2-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 Nov 22 14:40 /bin -> usr/bin -I: user script /srv/workspace/pbuilder/52388/tmp/hooks/D02_print_environment finished + lrwxrwxrwx 1 root root 7 Nov 22 2024 /bin -> usr/bin +I: user script /srv/workspace/pbuilder/55605/tmp/hooks/D02_print_environment finished -> Attempting to satisfy build-dependencies -> Creating pbuilder-satisfydepends-dummy package Package: pbuilder-satisfydepends-dummy @@ -176,7 +208,7 @@ Get: 44 http://deb.debian.org/debian trixie/main i386 golang-blitiri-go-log-dev all 1.1.0-1 [6724 B] Get: 45 http://deb.debian.org/debian trixie/main i386 golang-blitiri-go-spf-dev all 1.5.1-1 [37.2 kB] Get: 46 http://deb.debian.org/debian trixie/main i386 golang-blitiri-go-systemd-dev all 1.1.0-1 [6952 B] -Fetched 76.0 MB in 1s (51.2 MB/s) +Fetched 76.0 MB in 5s (14.4 MB/s) Preconfiguring packages ... Selecting previously unselected package sensible-utils. (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 ... 19787 files and directories currently installed.) @@ -375,7 +407,11 @@ Building tag database... -> Finished parsing the build-deps I: Building the package -I: Running cd /build/reproducible-path/chasquid-1.15.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 > ../chasquid_1.15.0-1_source.changes +I: user script /srv/workspace/pbuilder/55605/tmp/hooks/A99_set_merged_usr starting +Not re-configuring usrmerge for trixie +I: user script /srv/workspace/pbuilder/55605/tmp/hooks/A99_set_merged_usr finished +hostname: Name or service not known +I: Running cd /build/reproducible-path/chasquid-1.15.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 > ../chasquid_1.15.0-1_source.changes dpkg-buildpackage: info: source package chasquid dpkg-buildpackage: info: source version 1.15.0-1 dpkg-buildpackage: info: source distribution unstable @@ -395,274 +431,274 @@ debian/rules override_dh_auto_build make[1]: Entering directory '/build/reproducible-path/chasquid-1.15.0' dh_auto_build -- -ldflags " -X main.version=1.15.0-1 -X main.sourceDateTs=1737288581" - cd obj-i686-linux-gnu && go install -trimpath -v -p 11 -ldflags " -X main.version=1.15.0-1 -X main.sourceDateTs=1737288581" blitiri.com.ar/go/chasquid blitiri.com.ar/go/chasquid/cmd/chasquid-util blitiri.com.ar/go/chasquid/cmd/mda-lmtp blitiri.com.ar/go/chasquid/cmd/smtp-check blitiri.com.ar/go/chasquid/internal/aliases blitiri.com.ar/go/chasquid/internal/auth blitiri.com.ar/go/chasquid/internal/config blitiri.com.ar/go/chasquid/internal/courier blitiri.com.ar/go/chasquid/internal/dkim blitiri.com.ar/go/chasquid/internal/domaininfo blitiri.com.ar/go/chasquid/internal/dovecot blitiri.com.ar/go/chasquid/internal/envelope blitiri.com.ar/go/chasquid/internal/expvarom blitiri.com.ar/go/chasquid/internal/haproxy blitiri.com.ar/go/chasquid/internal/localrpc blitiri.com.ar/go/chasquid/internal/maillog blitiri.com.ar/go/chasquid/internal/nettrace blitiri.com.ar/go/chasquid/internal/normalize blitiri.com.ar/go/chasquid/internal/protoio blitiri.com.ar/go/chasquid/internal/protoio/testpb blitiri.com.ar/go/chasquid/internal/queue blitiri.com.ar/go/chasquid/internal/safeio blitiri.com.ar/go/chasquid/internal/set blitiri.com.ar/go/chasquid/internal/smtp blitiri.com.ar/go/chasquid/internal/smtpsrv blitiri.com.ar/go/chasquid/internal/sts blitiri.com.ar/go/chasquid/internal/testlib blitiri.com.ar/go/chasquid/internal/tlsconst blitiri.com.ar/go/chasquid/internal/trace blitiri.com.ar/go/chasquid/internal/userdb -encoding -internal/unsafeheader -internal/byteorder -internal/goarch -internal/goexperiment -internal/asan -internal/coverage/rtcov + cd obj-i686-linux-gnu && go install -trimpath -v -p 21 -ldflags " -X main.version=1.15.0-1 -X main.sourceDateTs=1737288581" blitiri.com.ar/go/chasquid blitiri.com.ar/go/chasquid/cmd/chasquid-util blitiri.com.ar/go/chasquid/cmd/mda-lmtp blitiri.com.ar/go/chasquid/cmd/smtp-check blitiri.com.ar/go/chasquid/internal/aliases blitiri.com.ar/go/chasquid/internal/auth blitiri.com.ar/go/chasquid/internal/config blitiri.com.ar/go/chasquid/internal/courier blitiri.com.ar/go/chasquid/internal/dkim blitiri.com.ar/go/chasquid/internal/domaininfo blitiri.com.ar/go/chasquid/internal/dovecot blitiri.com.ar/go/chasquid/internal/envelope blitiri.com.ar/go/chasquid/internal/expvarom blitiri.com.ar/go/chasquid/internal/haproxy blitiri.com.ar/go/chasquid/internal/localrpc blitiri.com.ar/go/chasquid/internal/maillog blitiri.com.ar/go/chasquid/internal/nettrace blitiri.com.ar/go/chasquid/internal/normalize blitiri.com.ar/go/chasquid/internal/protoio blitiri.com.ar/go/chasquid/internal/protoio/testpb blitiri.com.ar/go/chasquid/internal/queue blitiri.com.ar/go/chasquid/internal/safeio blitiri.com.ar/go/chasquid/internal/set blitiri.com.ar/go/chasquid/internal/smtp blitiri.com.ar/go/chasquid/internal/smtpsrv blitiri.com.ar/go/chasquid/internal/sts blitiri.com.ar/go/chasquid/internal/testlib blitiri.com.ar/go/chasquid/internal/tlsconst blitiri.com.ar/go/chasquid/internal/trace blitiri.com.ar/go/chasquid/internal/userdb internal/godebugs -internal/profilerecord -internal/runtime/atomic -internal/cpu -internal/goos +internal/unsafeheader internal/msan -internal/runtime/syscall -cmp +log/internal internal/itoa +internal/profilerecord +internal/byteorder +internal/coverage/rtcov +internal/goarch unicode/utf8 +cmp math/bits -internal/abi -internal/runtime/math -internal/runtime/sys -internal/chacha8rand -sync/atomic +internal/asan +internal/goos +internal/goexperiment unicode -log/internal +encoding internal/nettrace google.golang.org/protobuf/internal/flags unicode/utf16 container/ring -internal/runtime/exithook container/list +internal/runtime/math crypto/internal/fips140/alias -math -google.golang.org/protobuf/internal/set -internal/bytealg -crypto/internal/fips140deps/byteorder -crypto/internal/fips140deps/cpu -crypto/internal/boring/sig vendor/golang.org/x/crypto/cryptobyte/asn1 -vendor/golang.org/x/crypto/internal/alias blitiri.com.ar/go/chasquid/internal/set +vendor/golang.org/x/crypto/internal/alias +crypto/internal/fips140deps/byteorder +internal/cpu +internal/runtime/syscall +internal/runtime/sys +internal/chacha8rand +internal/runtime/atomic +sync/atomic +crypto/internal/boring/sig +internal/abi +google.golang.org/protobuf/internal/set +math +crypto/internal/fips140deps/cpu +internal/bytealg +internal/runtime/exithook internal/stringslite internal/race internal/sync internal/runtime/maps runtime -internal/reflectlite weak -crypto/internal/fips140/subtle iter +internal/reflectlite +crypto/internal/fips140/subtle sync maps slices crypto/subtle +internal/testlog +internal/singleflight errors sort +internal/bisect +unique +google.golang.org/protobuf/internal/pragma +runtime/cgo +internal/godebug internal/oserror path -vendor/golang.org/x/net/dns/dnsmessage -internal/testlog -internal/singleflight -internal/bisect io -unique -strconv +vendor/golang.org/x/net/dns/dnsmessage math/rand/v2 +golang.org/x/text/internal/tag +strconv syscall -google.golang.org/protobuf/internal/pragma -internal/godebug hash -bytes -strings -hash/fnv crypto/internal/randutil -golang.org/x/text/internal/tag -hash/crc32 -runtime/cgo crypto/internal/fips140deps/godebug +reflect +bytes math/rand -crypto net/netip -reflect -crypto/internal/impl -regexp/syntax -net/http/internal/ascii +strings +hash/fnv +crypto +hash/crc32 +vendor/golang.org/x/text/transform +golang.org/x/text/transform crypto/internal/fips140 +crypto/internal/impl bufio html -golang.org/x/text/transform -vendor/golang.org/x/text/transform -crypto/internal/fips140/sha3 -crypto/internal/fips140/sha256 +net/http/internal/ascii +regexp/syntax +golang.org/x/text/runes golang.org/x/text/width crypto/tls/internal/fips140tls -golang.org/x/text/runes crypto/internal/fips140/sha512 +crypto/internal/fips140/sha256 +crypto/internal/fips140/sha3 +internal/syscall/execenv time -crypto/sha3 internal/syscall/unix -internal/syscall/execenv -regexp +crypto/sha3 crypto/internal/fips140/hmac +regexp crypto/internal/fips140hash crypto/internal/fips140/check -crypto/internal/fips140/edwards25519/field crypto/internal/fips140/hkdf crypto/internal/fips140/tls12 crypto/internal/fips140/bigmod +crypto/internal/fips140/edwards25519/field crypto/internal/fips140/aes crypto/internal/fips140/nistec/fiat crypto/internal/fips140/tls13 crypto/internal/fips140/edwards25519 -io/fs -context -internal/poll internal/fmtsort encoding/binary +context +io/fs +internal/poll embed internal/filepathlite google.golang.org/protobuf/internal/editiondefaults -os -vendor/golang.org/x/crypto/internal/poly1305 encoding/base64 -crypto/internal/fips140/nistec -golang.org/x/sys/unix +vendor/golang.org/x/crypto/internal/poly1305 encoding/pem +golang.org/x/sys/unix +os +crypto/internal/fips140/nistec +golang.org/x/term google.golang.org/protobuf/internal/detrand -blitiri.com.ar/go/chasquid/internal/safeio -crypto/internal/sysrand -fmt internal/sysinfo +crypto/internal/sysrand os/signal path/filepath +fmt +blitiri.com.ar/go/chasquid/internal/safeio crypto/internal/entropy crypto/internal/fips140/drbg +net crypto/internal/fips140only crypto/internal/fips140/ed25519 +crypto/internal/fips140/ecdh +crypto/internal/fips140/ecdsa +os/exec +crypto/internal/fips140/rsa crypto/internal/fips140/mlkem crypto/internal/fips140/aes/gcm -crypto/internal/fips140/rsa -os/exec crypto/rc4 crypto/md5 -crypto/cipher -google.golang.org/protobuf/internal/errors +log flag +encoding/hex +net/url go/token -log +google.golang.org/protobuf/internal/errors +google.golang.org/protobuf/internal/version +mime/quotedprintable +crypto/cipher +text/template/parse +mime compress/flate +vendor/golang.org/x/net/http2/hpack +net/http/internal encoding/json +blitiri.com.ar/go/chasquid/internal/envelope +vendor/golang.org/x/text/unicode/norm google.golang.org/protobuf/encoding/protowire -google.golang.org/protobuf/internal/version -net/url -text/template/parse -crypto/internal/boring -net -google.golang.org/protobuf/reflect/protoreflect math/big -crypto/aes +golang.org/x/text/internal/language +blitiri.com.ar/go/chasquid/internal/tlsconst +golang.org/x/text/unicode/norm +text/tabwriter +google.golang.org/protobuf/reflect/protoreflect +vendor/golang.org/x/text/unicode/bidi +golang.org/x/text/unicode/bidi +runtime/trace +runtime/debug +vendor/golang.org/x/crypto/chacha20 crypto/des -crypto/internal/fips140/ecdh -crypto/internal/fips140/ecdsa -crypto/ecdh +crypto/internal/boring +compress/gzip crypto/sha512 +crypto/aes +crypto/ecdh +crypto/sha256 crypto/hmac -compress/gzip -vendor/golang.org/x/crypto/chacha20 crypto/sha1 -crypto/sha256 vendor/golang.org/x/crypto/chacha20poly1305 -encoding/hex -vendor/golang.org/x/text/unicode/bidi -mime -vendor/golang.org/x/net/http2/hpack -mime/quotedprintable -vendor/golang.org/x/text/unicode/norm -net/http/internal -blitiri.com.ar/go/chasquid/internal/envelope -golang.org/x/text/unicode/bidi -golang.org/x/text/unicode/norm -golang.org/x/text/internal/language -google.golang.org/protobuf/internal/encoding/messageset +testing +golang.org/x/crypto/pbkdf2 +internal/profile +golang.org/x/text/secure/bidirule +vendor/golang.org/x/text/secure/bidirule +runtime/pprof +golang.org/x/crypto/scrypt text/template +golang.org/x/text/internal/language/compact +vendor/golang.org/x/net/idna +golang.org/x/net/idna google.golang.org/protobuf/internal/strs -google.golang.org/protobuf/internal/genid google.golang.org/protobuf/internal/order -google.golang.org/protobuf/internal/encoding/text -google.golang.org/protobuf/reflect/protoregistry -google.golang.org/protobuf/runtime/protoiface -google.golang.org/protobuf/internal/descfmt +google.golang.org/protobuf/internal/encoding/messageset google.golang.org/protobuf/internal/descopts +google.golang.org/protobuf/internal/descfmt +google.golang.org/protobuf/runtime/protoiface +google.golang.org/protobuf/internal/genid google.golang.org/protobuf/internal/protolazy -vendor/golang.org/x/text/secure/bidirule -golang.org/x/text/secure/bidirule -google.golang.org/protobuf/proto -blitiri.com.ar/go/chasquid/internal/tlsconst -golang.org/x/crypto/pbkdf2 -crypto/rand -google.golang.org/protobuf/internal/encoding/defval -crypto/elliptic +golang.org/x/text/language +google.golang.org/protobuf/reflect/protoregistry +google.golang.org/protobuf/internal/encoding/text crypto/internal/boring/bbig +crypto/dsa encoding/asn1 +crypto/elliptic +crypto/rand crypto/ed25519 crypto/internal/hpke crypto/rsa -crypto/dsa -golang.org/x/text/internal/language/compact -golang.org/x/crypto/scrypt +google.golang.org/protobuf/internal/encoding/defval +google.golang.org/protobuf/proto +golang.org/x/text/internal html/template -internal/profile -text/tabwriter -runtime/trace -vendor/golang.org/x/net/idna -runtime/pprof -runtime/debug -golang.org/x/text/language -golang.org/x/term -golang.org/x/net/idna +golang.org/x/text/cases +crypto/x509/pkix +vendor/golang.org/x/crypto/cryptobyte google.golang.org/protobuf/encoding/prototext google.golang.org/protobuf/internal/filedesc -vendor/golang.org/x/crypto/cryptobyte -crypto/x509/pkix -golang.org/x/text/internal -testing -golang.org/x/text/cases -blitiri.com.ar/go/chasquid/internal/protoio crypto/ecdsa golang.org/x/text/secure/precis -google.golang.org/protobuf/internal/encoding/tag +blitiri.com.ar/go/chasquid/internal/protoio blitiri.com.ar/go/chasquid/internal/normalize +google.golang.org/protobuf/internal/encoding/tag google.golang.org/protobuf/internal/impl -log/syslog +vendor/golang.org/x/net/http/httpproxy blitiri.com.ar/go/chasquid/internal/haproxy -net/textproto +log/syslog blitiri.com.ar/go/spf -vendor/golang.org/x/net/http/httpproxy blitiri.com.ar/go/systemd +net/textproto crypto/x509 blitiri.com.ar/go/log -mime/multipart -vendor/golang.org/x/net/http/httpguts +net/mail blitiri.com.ar/go/chasquid/internal/dovecot +vendor/golang.org/x/net/http/httpguts blitiri.com.ar/go/chasquid/cmd/mda-lmtp -net/mail -google.golang.org/protobuf/internal/filetype -crypto/tls +mime/multipart blitiri.com.ar/go/chasquid/internal/dkim +crypto/tls +google.golang.org/protobuf/internal/filetype google.golang.org/protobuf/runtime/protoimpl -blitiri.com.ar/go/chasquid/internal/protoio/testpb -blitiri.com.ar/go/chasquid/internal/userdb blitiri.com.ar/go/chasquid/internal/config -net/http/httptrace +blitiri.com.ar/go/chasquid/internal/userdb +blitiri.com.ar/go/chasquid/internal/protoio/testpb blitiri.com.ar/go/chasquid/internal/testlib +net/http/httptrace net/smtp blitiri.com.ar/go/chasquid/internal/smtp net/http -golang.org/x/net/context/ctxhttp net/http/pprof -blitiri.com.ar/go/chasquid/internal/nettrace +golang.org/x/net/context/ctxhttp expvar +blitiri.com.ar/go/chasquid/internal/nettrace +blitiri.com.ar/go/chasquid/internal/expvarom blitiri.com.ar/go/chasquid/internal/trace -blitiri.com.ar/go/chasquid/internal/maillog -blitiri.com.ar/go/chasquid/internal/domaininfo blitiri.com.ar/go/chasquid/internal/localrpc +blitiri.com.ar/go/chasquid/internal/maillog blitiri.com.ar/go/chasquid/internal/auth +blitiri.com.ar/go/chasquid/internal/domaininfo blitiri.com.ar/go/chasquid/cmd/chasquid-util -blitiri.com.ar/go/chasquid/internal/expvarom blitiri.com.ar/go/chasquid/internal/aliases blitiri.com.ar/go/chasquid/internal/sts blitiri.com.ar/go/chasquid/internal/courier @@ -672,7 +708,7 @@ blitiri.com.ar/go/chasquid make[1]: Leaving directory '/build/reproducible-path/chasquid-1.15.0' dh_auto_test -O--buildsystem=golang - cd obj-i686-linux-gnu && go test -vet=off -v -p 11 blitiri.com.ar/go/chasquid blitiri.com.ar/go/chasquid/cmd/chasquid-util blitiri.com.ar/go/chasquid/cmd/mda-lmtp blitiri.com.ar/go/chasquid/cmd/smtp-check blitiri.com.ar/go/chasquid/internal/aliases blitiri.com.ar/go/chasquid/internal/auth blitiri.com.ar/go/chasquid/internal/config blitiri.com.ar/go/chasquid/internal/courier blitiri.com.ar/go/chasquid/internal/dkim blitiri.com.ar/go/chasquid/internal/domaininfo blitiri.com.ar/go/chasquid/internal/dovecot blitiri.com.ar/go/chasquid/internal/envelope blitiri.com.ar/go/chasquid/internal/expvarom blitiri.com.ar/go/chasquid/internal/haproxy blitiri.com.ar/go/chasquid/internal/localrpc blitiri.com.ar/go/chasquid/internal/maillog blitiri.com.ar/go/chasquid/internal/nettrace blitiri.com.ar/go/chasquid/internal/normalize blitiri.com.ar/go/chasquid/internal/protoio blitiri.com.ar/go/chasquid/internal/protoio/testpb blitiri.com.ar/go/chasquid/internal/queue blitiri.com.ar/go/chasquid/internal/safeio blitiri.com.ar/go/chasquid/internal/set blitiri.com.ar/go/chasquid/internal/smtp blitiri.com.ar/go/chasquid/internal/smtpsrv blitiri.com.ar/go/chasquid/internal/sts blitiri.com.ar/go/chasquid/internal/testlib blitiri.com.ar/go/chasquid/internal/tlsconst blitiri.com.ar/go/chasquid/internal/trace blitiri.com.ar/go/chasquid/internal/userdb + cd obj-i686-linux-gnu && go test -vet=off -v -p 21 blitiri.com.ar/go/chasquid blitiri.com.ar/go/chasquid/cmd/chasquid-util blitiri.com.ar/go/chasquid/cmd/mda-lmtp blitiri.com.ar/go/chasquid/cmd/smtp-check blitiri.com.ar/go/chasquid/internal/aliases blitiri.com.ar/go/chasquid/internal/auth blitiri.com.ar/go/chasquid/internal/config blitiri.com.ar/go/chasquid/internal/courier blitiri.com.ar/go/chasquid/internal/dkim blitiri.com.ar/go/chasquid/internal/domaininfo blitiri.com.ar/go/chasquid/internal/dovecot blitiri.com.ar/go/chasquid/internal/envelope blitiri.com.ar/go/chasquid/internal/expvarom blitiri.com.ar/go/chasquid/internal/haproxy blitiri.com.ar/go/chasquid/internal/localrpc blitiri.com.ar/go/chasquid/internal/maillog blitiri.com.ar/go/chasquid/internal/nettrace blitiri.com.ar/go/chasquid/internal/normalize blitiri.com.ar/go/chasquid/internal/protoio blitiri.com.ar/go/chasquid/internal/protoio/testpb blitiri.com.ar/go/chasquid/internal/queue blitiri.com.ar/go/chasquid/internal/safeio blitiri.com.ar/go/chasquid/internal/set blitiri.com.ar/go/chasquid/internal/smtp blitiri.com.ar/go/chasquid/internal/smtpsrv blitiri.com.ar/go/chasquid/internal/sts blitiri.com.ar/go/chasquid/internal/testlib blitiri.com.ar/go/chasquid/internal/tlsconst blitiri.com.ar/go/chasquid/internal/trace blitiri.com.ar/go/chasquid/internal/userdb ? blitiri.com.ar/go/chasquid [no test files] ? blitiri.com.ar/go/chasquid/cmd/chasquid-util [no test files] ? blitiri.com.ar/go/chasquid/cmd/mda-lmtp [no test files] @@ -696,9 +732,9 @@ === RUN TestTooMuchRecursionOnCatchAll --- PASS: TestTooMuchRecursionOnCatchAll (0.00s) === RUN TestAddFile ---- PASS: TestAddFile (0.00s) +--- PASS: TestAddFile (0.02s) === RUN TestRichFile ---- PASS: TestRichFile (0.00s) +--- PASS: TestRichFile (0.05s) === RUN TestManyFiles --- PASS: TestManyFiles (0.00s) === RUN TestHookError @@ -714,7 +750,7 @@ === RUN FuzzReader/8234d8c5719f30e50525290db70743bf97d940e60591cf4a638c72158d35504a === RUN FuzzReader/c9c80ba9f513841cb081fe9bb7439d36f9f7a06bb999d4c39441991ccc878a9e === RUN FuzzReader/d40a98862ed393eb712e47a91bcef18e6f24cf368bb4bd248c7a7101ef8e178d ---- PASS: FuzzReader (0.00s) +--- PASS: FuzzReader (0.01s) --- PASS: FuzzReader/seed#0 (0.00s) --- PASS: FuzzReader/1c24d2215db69748c6fd16797673ad11ebc7e6167fe1bc1f54c6959ec10407b6 (0.00s) --- PASS: FuzzReader/4adaceaa32e2b32c00322948769d62c2dd42e1d9f4950d3c5b411c710e6d4a86 (0.00s) @@ -722,7 +758,7 @@ --- PASS: FuzzReader/c9c80ba9f513841cb081fe9bb7439d36f9f7a06bb999d4c39441991ccc878a9e (0.00s) --- PASS: FuzzReader/d40a98862ed393eb712e47a91bcef18e6f24cf368bb4bd248c7a7101ef8e178d (0.00s) PASS -ok blitiri.com.ar/go/chasquid/internal/aliases 0.074s +ok blitiri.com.ar/go/chasquid/internal/aliases 0.254s === RUN TestDecodeResponse auth_test.go:56: OK: "" failed with response pieces != 3, as per RFC auth_test.go:56: OK: "\x00" failed with response pieces != 3, as per RFC @@ -735,11 +771,11 @@ auth_test.go:56: OK: "\xffa@b\x00\xffa@b\x00pass" failed with bidirule: failed Bidi Rule --- PASS: TestDecodeResponse (0.00s) === RUN TestAuthenticate ---- PASS: TestAuthenticate (0.80s) +--- PASS: TestAuthenticate (0.58s) === RUN TestInterfaces --- PASS: TestInterfaces (0.00s) === RUN TestMultipleBackends ---- PASS: TestMultipleBackends (0.20s) +--- PASS: TestMultipleBackends (0.18s) === RUN TestErrors --- PASS: TestErrors (0.00s) === RUN TestReload @@ -756,7 +792,7 @@ === RUN FuzzDecodeResponse/c2ae184876dd0fe9acfc8a5e2f2174a968b889b01e0f5c9a61fa27d7361f0091 === RUN FuzzDecodeResponse/d9aa9c617d1f5b3021aca758b9d896d136e3b16ed53233d02abffd02aa73ffa4 === RUN FuzzDecodeResponse/de05c7993312bab83e8114e9d9ced331c49822dc55c1a353f1cc9718a28226e7 ---- PASS: FuzzDecodeResponse (0.03s) +--- PASS: FuzzDecodeResponse (0.01s) --- PASS: FuzzDecodeResponse/0274b170c6fe2654ca5418a914b804e9c7cc5d8e5c2a7c5fcf5c29540ec5ae52 (0.00s) --- PASS: FuzzDecodeResponse/24d35771ef1fe0645d90b061e13a777faea328736483ec2833b63950d26b5399 (0.00s) --- PASS: FuzzDecodeResponse/2e5d0b26626f2d2dd6fb423e1e1cc432277ae9877c622fe6ca067e247bc11c9d (0.00s) @@ -768,45 +804,45 @@ --- PASS: FuzzDecodeResponse/d9aa9c617d1f5b3021aca758b9d896d136e3b16ed53233d02abffd02aa73ffa4 (0.00s) --- PASS: FuzzDecodeResponse/de05c7993312bab83e8114e9d9ced331c49822dc55c1a353f1cc9718a28226e7 (0.00s) PASS -ok blitiri.com.ar/go/chasquid/internal/auth 1.066s +ok blitiri.com.ar/go/chasquid/internal/auth 0.923s === RUN TestEmptyStruct --- PASS: TestEmptyStruct (0.00s) === RUN TestEmptyConfig - testlib.go:32: test directory: "/tmp/testlib_3255746865" + testlib.go:32: test directory: "/tmp/testlib_2689406060" --- PASS: TestEmptyConfig (0.00s) === RUN TestFullConfig - testlib.go:32: test directory: "/tmp/testlib_631777408" + testlib.go:32: test directory: "/tmp/testlib_3723686771" --- PASS: TestFullConfig (0.00s) === RUN TestErrorLoading --- PASS: TestErrorLoading (0.00s) === RUN TestBrokenConfig - testlib.go:32: test directory: "/tmp/testlib_959765794" + testlib.go:32: test directory: "/tmp/testlib_1890484460" --- PASS: TestBrokenConfig (0.00s) === RUN TestBrokenOverride - testlib.go:32: test directory: "/tmp/testlib_2342234491" + testlib.go:32: test directory: "/tmp/testlib_1294291840" --- PASS: TestBrokenOverride (0.00s) PASS -ok blitiri.com.ar/go/chasquid/internal/config 0.048s +ok blitiri.com.ar/go/chasquid/internal/config 0.338s === RUN TestMDA - testlib.go:32: test directory: "/tmp/testlib_454849154" ---- PASS: TestMDA (0.03s) + testlib.go:32: test directory: "/tmp/testlib_3919263549" +--- PASS: TestMDA (0.20s) === RUN TestMDATimeout _ mda.go:73 Courier.MDA to@local: error: operation timed out ---- PASS: TestMDATimeout (0.11s) +--- PASS: TestMDATimeout (0.10s) === RUN TestMDABadCommandLine _ mda.go:86 Courier.MDA to: error: MDA delivery failed: exec: \"thisdoesnotexist\": executable file not found in $PATH - \"\" _ mda.go:86 Courier.MDA to: error: MDA delivery failed: exit status 1 - \"cat: unrecognized option '--fail_unknown_option'\\nTry 'cat --help' for more information.\\n\" ---- PASS: TestMDABadCommandLine (0.02s) +--- PASS: TestMDABadCommandLine (0.01s) === RUN TestExitCode mda_test.go:71: util/exitcode not found, running from outside repo? --- SKIP: TestExitCode (0.00s) === RUN TestSanitize --- PASS: TestSanitize (0.00s) === RUN TestSMTP - testlib.go:32: test directory: "/tmp/testlib_1067819003" - testlib.go:32: test directory: "/tmp/testlib_3380413538" -_ smtp.go:127 Courier.SMTP to@to: error: Could not dial: dial tcp: address ::::33013: too many colons in address -_ smtp.go:101 Courier.SMTP to@to: error: \":::\" returned transient error: Could not dial: dial tcp: address ::::33013: too many colons in address + testlib.go:32: test directory: "/tmp/testlib_3206710331" + testlib.go:32: test directory: "/tmp/testlib_3977182685" +_ smtp.go:127 Courier.SMTP to@to: error: Could not dial: dial tcp: address ::::44051: too many colons in address +_ smtp.go:101 Courier.SMTP to@to: error: \":::\" returned transient error: Could not dial: dial tcp: address ::::44051: too many colons in address fakeserver_test.go:98: fakeServer got connection fakeserver_test.go:109: fakeServer read: "EHLO hello" fakeserver_test.go:109: fakeServer read: "MAIL FROM:" @@ -814,26 +850,26 @@ fakeserver_test.go:109: fakeServer read: "DATA" fakeserver_test.go:109: fakeServer read: "QUIT" fakeserver_test.go:105: fakeServer exiting: EOF ---- PASS: TestSMTP (0.59s) +--- PASS: TestSMTP (0.19s) === RUN TestSMTPErrors - testlib.go:32: test directory: "/tmp/testlib_742926902" - testlib.go:32: test directory: "/tmp/testlib_2791177214" + testlib.go:32: test directory: "/tmp/testlib_808700385" + testlib.go:32: test directory: "/tmp/testlib_1095237347" fakeserver_test.go:98: fakeServer got connection -_ smtp.go:138 Courier.SMTP to@to: error: Error saying hello: write tcp 127.0.0.1:56856->127.0.0.1:45035: i/o timeout -_ smtp.go:101 Courier.SMTP to@to: error: \"127.0.0.1\" returned transient error: Error saying hello: write tcp 127.0.0.1:56856->127.0.0.1:45035: i/o timeout -_ smtp.go:105 Courier.SMTP to@to: error: all MXs returned transient failures (last: Error saying hello: write tcp 127.0.0.1:56856->127.0.0.1:45035: i/o timeout) - smtp_test.go:140: failed as expected: all MXs returned transient failures (last: Error saying hello: write tcp 127.0.0.1:56856->127.0.0.1:45035: i/o timeout) +_ smtp.go:138 Courier.SMTP to@to: error: Error saying hello: write tcp 127.0.0.1:42122->127.0.0.1:44349: i/o timeout +_ smtp.go:101 Courier.SMTP to@to: error: \"127.0.0.1\" returned transient error: Error saying hello: write tcp 127.0.0.1:42122->127.0.0.1:44349: i/o timeout +_ smtp.go:105 Courier.SMTP to@to: error: all MXs returned transient failures (last: Error saying hello: write tcp 127.0.0.1:42122->127.0.0.1:44349: i/o timeout) fakeserver_test.go:105: fakeServer exiting: EOF - testlib.go:32: test directory: "/tmp/testlib_1188955914" - testlib.go:32: test directory: "/tmp/testlib_1178714078" + smtp_test.go:140: failed as expected: all MXs returned transient failures (last: Error saying hello: write tcp 127.0.0.1:42122->127.0.0.1:44349: i/o timeout) + testlib.go:32: test directory: "/tmp/testlib_1715421806" + testlib.go:32: test directory: "/tmp/testlib_1771082390" fakeserver_test.go:98: fakeServer got connection fakeserver_test.go:109: fakeServer read: "EHLO hello" fakeserver_test.go:109: fakeServer read: "MAIL FROM:" _ smtp.go:202 Courier.SMTP to@to: error: MAIL+RCPT 501 mail error smtp_test.go:140: failed as expected: MAIL+RCPT 501 mail error fakeserver_test.go:105: fakeServer exiting: EOF - testlib.go:32: test directory: "/tmp/testlib_589434049" - testlib.go:32: test directory: "/tmp/testlib_915031884" + testlib.go:32: test directory: "/tmp/testlib_3011033332" + testlib.go:32: test directory: "/tmp/testlib_3854166445" fakeserver_test.go:98: fakeServer got connection fakeserver_test.go:109: fakeServer read: "EHLO hello" fakeserver_test.go:109: fakeServer read: "MAIL FROM:" @@ -841,8 +877,8 @@ _ smtp.go:202 Courier.SMTP to@to: error: MAIL+RCPT 501 rcpt error smtp_test.go:140: failed as expected: MAIL+RCPT 501 rcpt error fakeserver_test.go:105: fakeServer exiting: EOF - testlib.go:32: test directory: "/tmp/testlib_3144073523" - testlib.go:32: test directory: "/tmp/testlib_1547239281" + testlib.go:32: test directory: "/tmp/testlib_1306166275" + testlib.go:32: test directory: "/tmp/testlib_2874801170" fakeserver_test.go:98: fakeServer got connection fakeserver_test.go:109: fakeServer read: "EHLO hello" fakeserver_test.go:109: fakeServer read: "MAIL FROM:" @@ -851,8 +887,8 @@ _ smtp.go:207 Courier.SMTP to@to: error: DATA 554 data error smtp_test.go:140: failed as expected: DATA 554 data error fakeserver_test.go:132: fakeServer exiting: unexpected EOF - testlib.go:32: test directory: "/tmp/testlib_3412476365" - testlib.go:32: test directory: "/tmp/testlib_696669180" + testlib.go:32: test directory: "/tmp/testlib_3529939607" + testlib.go:32: test directory: "/tmp/testlib_1955799781" fakeserver_test.go:98: fakeServer got connection fakeserver_test.go:109: fakeServer read: "EHLO hello" fakeserver_test.go:109: fakeServer read: "MAIL FROM:" @@ -861,9 +897,9 @@ _ smtp.go:216 Courier.SMTP to@to: error: DATA closing 551 data response error smtp_test.go:140: failed as expected: DATA closing 551 data response error fakeserver_test.go:105: fakeServer exiting: EOF ---- PASS: TestSMTPErrors (3.50s) +--- PASS: TestSMTPErrors (3.02s) === RUN TestNoMXServer - testlib.go:32: test directory: "/tmp/testlib_1322905887" + testlib.go:32: test directory: "/tmp/testlib_1325612673" _ smtp.go:82 Courier.SMTP to@to: error: Could not find mail server: smtp_test.go:158: got permanent failure, as expected: Could not find mail server: --- PASS: TestNoMXServer (0.00s) @@ -876,10 +912,10 @@ === RUN TestMXLookupError --- PASS: TestMXLookupError (0.00s) === RUN TestLookupInvalidDomain ---- PASS: TestLookupInvalidDomain (0.01s) +--- PASS: TestLookupInvalidDomain (0.00s) === RUN TestTLS - testlib.go:32: test directory: "/tmp/testlib_3760330514" - testlib.go:32: test directory: "/tmp/testlib_3683103162" + testlib.go:32: test directory: "/tmp/testlib_1057623996" + testlib.go:32: test directory: "/tmp/testlib_665398369" fakeserver_test.go:98: fakeServer got connection fakeserver_test.go:109: fakeServer read: "EHLO hello" fakeserver_test.go:109: fakeServer read: "STARTTLS" @@ -890,7 +926,7 @@ fakeserver_test.go:109: fakeServer read: "DATA" fakeserver_test.go:109: fakeServer read: "QUIT" fakeserver_test.go:105: fakeServer exiting: EOF - testlib.go:32: test directory: "/tmp/testlib_3476470007" + testlib.go:32: test directory: "/tmp/testlib_1442202273" fakeserver_test.go:98: fakeServer got connection fakeserver_test.go:109: fakeServer read: "EHLO hello" _ domaininfo.go:145 DomainInfo.Outgoing to: error: to outgoing denied: PLAIN < TLS_INSECURE @@ -898,26 +934,26 @@ _ smtp.go:101 Courier.SMTP to@to: error: \"localhost\" returned transient error: Security level check failed (level:PLAIN) _ smtp.go:105 Courier.SMTP to@to: error: all MXs returned transient failures (last: Security level check failed (level:PLAIN)) fakeserver_test.go:105: fakeServer exiting: EOF ---- PASS: TestTLS (1.27s) +--- PASS: TestTLS (0.83s) === RUN TestTLSError - testlib.go:32: test directory: "/tmp/testlib_1682708779" - testlib.go:32: test directory: "/tmp/testlib_668370678" + testlib.go:32: test directory: "/tmp/testlib_4240294340" + testlib.go:32: test directory: "/tmp/testlib_622873514" fakeserver_test.go:98: fakeServer got connection fakeserver_test.go:109: fakeServer read: "EHLO hello" fakeserver_test.go:109: fakeServer read: "STARTTLS" _ smtp.go:171 Courier.SMTP to@to: error: TLS error, retrying without TLS: 500 starttls err - fakeserver_test.go:98: fakeServer got connection fakeserver_test.go:105: fakeServer exiting: EOF + fakeserver_test.go:98: fakeServer got connection fakeserver_test.go:109: fakeServer read: "EHLO hello" fakeserver_test.go:109: fakeServer read: "MAIL FROM:" fakeserver_test.go:109: fakeServer read: "RCPT TO:" fakeserver_test.go:109: fakeServer read: "DATA" fakeserver_test.go:109: fakeServer read: "QUIT" fakeserver_test.go:105: fakeServer exiting: EOF ---- PASS: TestTLSError (0.34s) +--- PASS: TestTLSError (0.84s) === RUN TestSTSPolicyEnforcement - testlib.go:32: test directory: "/tmp/testlib_1624577486" - testlib.go:32: test directory: "/tmp/testlib_1560504014" + testlib.go:32: test directory: "/tmp/testlib_3835173146" + testlib.go:32: test directory: "/tmp/testlib_3844209654" fakeserver_test.go:98: fakeServer got connection fakeserver_test.go:109: fakeServer read: "EHLO hello" fakeserver_test.go:109: fakeServer read: "STARTTLS" @@ -925,7 +961,7 @@ _ domaininfo.go:153 DomainInfo.Outgoing to: to outgoing level raised: TLS_INSECURE > PLAIN _ smtp.go:194 test test: error: invalid security level (TLS_INSECURE) for STS policy fakeserver_test.go:105: fakeServer exiting: EOF - testlib.go:32: test directory: "/tmp/testlib_2644043757" + testlib.go:32: test directory: "/tmp/testlib_3709091319" fakeserver_test.go:98: fakeServer got connection fakeserver_test.go:109: fakeServer read: "EHLO hello" fakeserver_test.go:109: fakeServer read: "STARTTLS" @@ -936,9 +972,9 @@ fakeserver_test.go:109: fakeServer read: "DATA" fakeserver_test.go:109: fakeServer read: "QUIT" fakeserver_test.go:105: fakeServer exiting: EOF ---- PASS: TestSTSPolicyEnforcement (1.34s) +--- PASS: TestSTSPolicyEnforcement (1.97s) PASS -ok blitiri.com.ar/go/chasquid/internal/courier 7.263s +ok blitiri.com.ar/go/chasquid/internal/courier 7.299s === RUN TestStringToCanonicalization --- PASS: TestStringToCanonicalization (0.00s) === RUN TestSimpleBody @@ -964,7 +1000,7 @@ === RUN TestSkipBadRecords --- PASS: TestSkipBadRecords (0.00s) === RUN TestParsePublicKey ---- PASS: TestParsePublicKey (0.02s) +--- PASS: TestParsePublicKey (0.07s) === RUN TestPublicKeyMatches --- PASS: TestPublicKeyMatches (0.00s) === RUN TestStrictDomainCheck @@ -974,7 +1010,7 @@ file_test.go:50: Loaded DNS results: map[string][]string{"brisbane._domainkey.football.example.com":[]string{" v=DKIM1; k=ed25519; p=11qYAYKxCrfVS/7TyWQHOg7hcvPapiMlrwIaaPcHURo="}, "test._domainkey.football.example.com":[]string{" v=DKIM1; k=rsa; p=MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQDkHlOQoBTzWRiGs5V6NpP3idY6Wk08a5qhdR6wy5bdOKb2jLQiY/J16JYi0Qvx/byYzCNb3W91y3FutACDfzwQ/BC/e/8uBsCR+yz1Lxj+PL6lHvqMKrM3rG4hstT5QjvHO9PzoxZyVYLzBfO2EeC3Ip3G+2kryOTIKT+l/K4w3QIDAQAB"}} file_test.go:50: Loaded DNS errors: map[] file_test.go:55: Message: "DKIM-Signature: v=1; a=ed25519-sha256; c=relaxed/relaxed;\r\n " - file_test.go:56: Want result: &{Found:2 Valid:2 Results:[0x9e065d0 0x9e06600]} + file_test.go:56: Want result: &{Found:2 Valid:2 Results:[0x9eb41b0 0x9eb41e0]} file_test.go:57: Want error: context.go:17: Found DKIM-Signature header: v=1; a=ed25519-sha256; c=relaxed/relaxed; d=football.example.com; i=@football.example.com; @@ -1018,7 +1054,7 @@ file_test.go:50: Loaded DNS results: map[string][]string{"brisbane._domainkey.football.example.com":[]string{" v=DKIM1; k=ed25519; p=11qYAYKxCrfVS/7TyWQHOg7hcvPapiMlrwIaaPcHURo="}, "test._domainkey.football.example.com":[]string{" v=DKIM1; k=rsa; p=MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQDkHlOQoBTzWRiGs5V6NpP3idY6Wk08a5qhdR6wy5bdOKb2jLQiY/J16JYi0Qvx/byYzCNb3W91y3FutACDfzwQ/BC/e/8uBsCR+yz1Lxj+PL6lHvqMKrM3rG4hstT5QjvHO9PzoxZyVYLzBfO2EeC3Ip3G+2kryOTIKT+l/K4w3QIDAQAB"}} file_test.go:50: Loaded DNS errors: map[] file_test.go:55: Message: "DKIM-Signature: v=1; a=ed25519-sha256; c=relaxed/relaxed;\r\n " - file_test.go:56: Want result: &{Found:5 Valid:5 Results:[0x9e06960 0x9e06990 0x9e069c0 0x9e069f0 0x9e06a20]} + file_test.go:56: Want result: &{Found:5 Valid:5 Results:[0x9eb4540 0x9eb4570 0x9eb45a0 0x9eb45d0 0x9eb4600]} file_test.go:57: Want error: context.go:17: Found DKIM-Signature header: v=1; a=ed25519-sha256; c=relaxed/relaxed; d=football.example.com; i=@football.example.com; @@ -1130,7 +1166,7 @@ file_test.go:50: Loaded DNS results: map[string][]string{} file_test.go:50: Loaded DNS errors: map[] file_test.go:55: Message: "DKIM-Signature: v=8; a=ed25519-sha256; c=relaxed/relaxed;\r\n " - file_test.go:56: Want result: &{Found:1 Valid:0 Results:[0x9e94000]} + file_test.go:56: Want result: &{Found:1 Valid:0 Results:[0x9d3c180]} file_test.go:57: Want error: context.go:17: Found DKIM-Signature header: v=8; a=ed25519-sha256; c=relaxed/relaxed; d=football.example.com; i=@football.example.com; @@ -1144,7 +1180,7 @@ file_test.go:50: Loaded DNS results: map[string][]string{"test._domainkey.football.example.com":[]string{" v=DKIM1; k=rsa; p=MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQDkHlOQoBTzWRiGs5V6NpP3idY6Wk08a5qhdR6wy5bdOKb2jLQiY/J16JYi0Qvx/byYzCNb3W91y3FutACDfzwQ/BC/e/8uBsCR+yz1Lxj+PL6lHvqMKrM3rG4hstT5QjvHO9PzoxZyVYLzBfO2EeC3Ip3G+2kryOTIKT+l/K4w3QIDAQAB"}} file_test.go:50: Loaded DNS errors: map[brisbane._domainkey.football.example.com:lookup : temporary error (for testing)] file_test.go:55: Message: "DKIM-Signature: v=1; a=ed25519-sha256; c=relaxed/relaxed;\r\n " - file_test.go:56: Want result: &{Found:2 Valid:1 Results:[0x9e941e0 0x9e94210]} + file_test.go:56: Want result: &{Found:2 Valid:1 Results:[0x9d3c330 0x9d3c360]} file_test.go:57: Want error: context.go:17: Found DKIM-Signature header: v=1; a=ed25519-sha256; c=relaxed/relaxed; d=football.example.com; i=@football.example.com; @@ -1178,7 +1214,7 @@ file_test.go:50: Loaded DNS results: map[string][]string{"test._domainkey.football.example.com":[]string{" v=DKIM1; k=rsa; p=MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQDkHlOQoBTzWRiGs5V6NpP3idY6Wk08a5qhdR6wy5bdOKb2jLQiY/J16JYi0Qvx/byYzCNb3W91y3FutACDfzwQ/BC/e/8uBsCR+yz1Lxj+PL6lHvqMKrM3rG4hstT5QjvHO9PzoxZyVYLzBfO2EeC3Ip3G+2kryOTIKT+l/K4w3QIDAQAB"}} file_test.go:50: Loaded DNS errors: map[brisbane._domainkey.football.example.com:lookup : permanent error (for testing)] file_test.go:55: Message: "DKIM-Signature: v=1; a=ed25519-sha256; c=relaxed/relaxed;\r\n " - file_test.go:56: Want result: &{Found:2 Valid:1 Results:[0x9e944b0 0x9e944e0]} + file_test.go:56: Want result: &{Found:2 Valid:1 Results:[0x9d3c600 0x9d3c630]} file_test.go:57: Want error: context.go:17: Found DKIM-Signature header: v=1; a=ed25519-sha256; c=relaxed/relaxed; d=football.example.com; i=@football.example.com; @@ -1212,7 +1248,7 @@ file_test.go:50: Loaded DNS results: map[string][]string{"brisbane._domainkey.football.example.com":[]string{" v=DKIM1; k=rsa; p=MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQDkHlOQoBTzWRiGs5V6NpP3idY6Wk08a5qhdR6wy5bdOKb2jLQiY/J16JYi0Qvx/byYzCNb3W91y3FutACDfzwQ/BC/e/8uBsCR+yz1Lxj+PL6lHvqMKrM3rG4hstT5QjvHO9PzoxZyVYLzBfO2EeC3Ip3G+2kryOTIKT+l/K4w3QIDAQAB", " v=DKIM1; k=ed25519; p=11qYAYKxCrfVS/7TyWQHOg7hcvPapiMlrwIaaPcHURo="}, "test._domainkey.football.example.com":[]string{" v=DKIM1; k=rsa; p=MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQDkHlOQoBTzWRiGs5V6NpP3idY6Wk08a5qhdR6wy5bdOKb2jLQiY/J16JYi0Qvx/byYzCNb3W91y3FutACDfzwQ/BC/e/8uBsCR+yz1Lxj+PL6lHvqMKrM3rG4hstT5QjvHO9PzoxZyVYLzBfO2EeC3Ip3G+2kryOTIKT+l/K4w3QIDAQAB"}} file_test.go:50: Loaded DNS errors: map[] file_test.go:55: Message: "DKIM-Signature: v=1; a=ed25519-sha256; c=relaxed/relaxed;\r\n " - file_test.go:56: Want result: &{Found:2 Valid:2 Results:[0x9e94750 0x9e94780]} + file_test.go:56: Want result: &{Found:2 Valid:2 Results:[0x9d3c8a0 0x9d3c8d0]} file_test.go:57: Want error: context.go:17: Found DKIM-Signature header: v=1; a=ed25519-sha256; c=relaxed/relaxed; d=football.example.com; i=@football.example.com; @@ -1259,7 +1295,7 @@ file_test.go:50: Loaded DNS results: map[string][]string{"brisbane._domainkey.football.example.com":[]string{" v=DKIM1; k=ed25519; p=11qYAYKxCrfVS/7TyWQHOg7hcvPapiMlrwIaaPcHURo="}, "selector._domainkey.example.com":[]string{" v=DKIM1; k=ed25519; p=SvoPT692bVrQBT8UNxt6SF538O3snA4fE3/i/glCxwQ="}, "test._domainkey.football.example.com":[]string{" v=DKIM1; k=rsa; p=MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQDkHlOQoBTzWRiGs5V6NpP3idY6Wk08a5qhdR6wy5bdOKb2jLQiY/J16JYi0Qvx/byYzCNb3W91y3FutACDfzwQ/BC/e/8uBsCR+yz1Lxj+PL6lHvqMKrM3rG4hstT5QjvHO9PzoxZyVYLzBfO2EeC3Ip3G+2kryOTIKT+l/K4w3QIDAQAB"}} file_test.go:50: Loaded DNS errors: map[] file_test.go:55: Message: "DKIM-Signature: v=1; a=ed25519-sha256; c=relaxed/relaxed;\r\n " - file_test.go:56: Want result: &{Found:3 Valid:3 Results:[0x9e94a50 0x9e94a80 0x9e94ab0]} + file_test.go:56: Want result: &{Found:3 Valid:3 Results:[0x9d3cba0 0x9d3cbd0 0x9d3cc00]} file_test.go:57: Want error: context.go:17: Found DKIM-Signature header: v=1; a=ed25519-sha256; c=relaxed/relaxed; d=example.com; s=selector; t=1709341950; @@ -1319,7 +1355,7 @@ file_test.go:50: Loaded DNS results: map[string][]string{"brisbane._domainkey.football.example.com":[]string{" v=DKIM1; k=ed25519; p=11qYAYKxCrfVS/7TyWQHOg7hcvPapiMlrwIaaPcHURo="}, "selector._domainkey.example.com":[]string{" v=DKIM1; k=ed25519; p=SvoPT692bVrQBT8UNxt6SF538O3snA4fE3/i/glCxwQ="}, "test._domainkey.football.example.com":[]string{" v=DKIM1; k=rsa; p=MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQDkHlOQoBTzWRiGs5V6NpP3idY6Wk08a5qhdR6wy5bdOKb2jLQiY/J16JYi0Qvx/byYzCNb3W91y3FutACDfzwQ/BC/e/8uBsCR+yz1Lxj+PL6lHvqMKrM3rG4hstT5QjvHO9PzoxZyVYLzBfO2EeC3Ip3G+2kryOTIKT+l/K4w3QIDAQAB"}} file_test.go:50: Loaded DNS errors: map[] file_test.go:55: Message: "DKIM-Signature: v=1; a=ed25519-sha256; c=relaxed/relaxed;\r\n " - file_test.go:56: Want result: &{Found:3 Valid:3 Results:[0x9e94e10 0x9e94e40 0x9e94e70]} + file_test.go:56: Want result: &{Found:3 Valid:3 Results:[0x9d3cf60 0x9d3cf90 0x9d3cfc0]} file_test.go:57: Want error: context.go:17: Found DKIM-Signature header: v=1; a=ed25519-sha256; c=relaxed/relaxed; d=example.com; s=selector; t=1709368031; @@ -1379,7 +1415,7 @@ file_test.go:50: Loaded DNS results: map[string][]string{"brisbane._domainkey.football.example.com":[]string{" v=DKIM1; k=ed25519; t=s; p=11qYAYKxCrfVS/7TyWQHOg7hcvPapiMlrwIaaPcHURo="}, "test._domainkey.football.example.com":[]string{" v=DKIM1; k=rsa; t=s; p=MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQDkHlOQoBTzWRiGs5V6NpP3idY6Wk08a5qhdR6wy5bdOKb2jLQiY/J16JYi0Qvx/byYzCNb3W91y3FutACDfzwQ/BC/e/8uBsCR+yz1Lxj+PL6lHvqMKrM3rG4hstT5QjvHO9PzoxZyVYLzBfO2EeC3Ip3G+2kryOTIKT+l/K4w3QIDAQAB"}} file_test.go:50: Loaded DNS errors: map[] file_test.go:55: Message: "DKIM-Signature: v=1; a=ed25519-sha256; c=relaxed/relaxed;\r\n " - file_test.go:56: Want result: &{Found:2 Valid:2 Results:[0x9e95230 0x9e95260]} + file_test.go:56: Want result: &{Found:2 Valid:2 Results:[0x9c16630 0x9c16660]} file_test.go:57: Want error: context.go:17: Found DKIM-Signature header: v=1; a=ed25519-sha256; c=relaxed/relaxed; d=football.example.com; i=@football.example.com; @@ -1425,7 +1461,7 @@ file_test.go:50: Loaded DNS results: map[string][]string{"selector._domainkey.example.com":[]string{" v=DKIM1; k=ed25519; t=s; p=SvoPT692bVrQBT8UNxt6SF538O3snA4fE3/i/glCxwQ="}} file_test.go:50: Loaded DNS errors: map[] file_test.go:55: Message: "DKIM-Signature: v=1; a=ed25519-sha256; c=relaxed/relaxed;\r\n " - file_test.go:56: Want result: &{Found:1 Valid:0 Results:[0x9e95500]} + file_test.go:56: Want result: &{Found:1 Valid:0 Results:[0x9c16900]} file_test.go:57: Want error: context.go:17: Found DKIM-Signature header: v=1; a=ed25519-sha256; c=relaxed/relaxed; d=example.com; s=selector; t=1709466347; @@ -1446,16 +1482,16 @@ context.go:17: Resulting hash: "kFTkVTyR9JWKX/Stl1+sUIuAgitRiOf7MwTBy5a2/ZA=" context.go:17: PK [ed25519:4afa0f4faf766d5a]: Strict domain check failed: "example.com" != "sub.example.com" ("test@sub.example.com") context.go:17: Found 1 signatures, 0 valid ---- PASS: TestFromFiles (0.25s) - --- PASS: TestFromFiles/testdata/01-rfc8463 (0.05s) - --- PASS: TestFromFiles/testdata/02-too_many_headers (0.04s) - --- PASS: TestFromFiles/testdata/03-bad_message (0.01s) - --- PASS: TestFromFiles/testdata/04-bad_dkim_signature_header (0.01s) - --- PASS: TestFromFiles/testdata/05-dns_temp_error (0.02s) - --- PASS: TestFromFiles/testdata/06-dns_perm_error (0.02s) - --- PASS: TestFromFiles/testdata/07-algo_mismatch (0.02s) - --- PASS: TestFromFiles/testdata/08-our_signature (0.03s) - --- PASS: TestFromFiles/testdata/09-limited_body (0.02s) +--- PASS: TestFromFiles (0.10s) + --- PASS: TestFromFiles/testdata/01-rfc8463 (0.01s) + --- PASS: TestFromFiles/testdata/02-too_many_headers (0.01s) + --- PASS: TestFromFiles/testdata/03-bad_message (0.00s) + --- PASS: TestFromFiles/testdata/04-bad_dkim_signature_header (0.00s) + --- PASS: TestFromFiles/testdata/05-dns_temp_error (0.01s) + --- PASS: TestFromFiles/testdata/06-dns_perm_error (0.01s) + --- PASS: TestFromFiles/testdata/07-algo_mismatch (0.00s) + --- PASS: TestFromFiles/testdata/08-our_signature (0.01s) + --- PASS: TestFromFiles/testdata/09-limited_body (0.01s) --- PASS: TestFromFiles/testdata/10-strict_domain_check_pass (0.01s) --- PASS: TestFromFiles/testdata/11-strict_domain_check_fail (0.01s) === RUN TestFromPrivateFiles @@ -1481,18 +1517,18 @@ context.go:17: Hashing header: "date:Fri, 11 Jul 2003 21:00:37 -0700 (PDT)\r\n" context.go:17: Hashing header: "to:Suzie Q \r\n" context.go:17: Hashing header: "message-id:<20030712040037.46341.5F8J@football.example.com>\r\n" - context.go:17: Hashing header: "dkim-signature:v=1; a=rsa-sha256; c=relaxed/relaxed; d=example.com; s=test; t=1741256197; h=from:subject:date:to:message-id:from:subject:date:to:cc:message-id; bh=2jUSOH9NhtVGCQWNr9BrIAPreKQjO6Sn7XIkfJVOzv8=; b=;" - context.go:17: Resulting hash: "lubHb+mzfdhJ0H6AIluXdkpC89H1HPEjhUNs6EzRp5M=" + context.go:17: Hashing header: "dkim-signature:v=1; a=rsa-sha256; c=relaxed/relaxed; d=example.com; s=test; t=1775666691; h=from:subject:date:to:message-id:from:subject:date:to:cc:message-id; bh=2jUSOH9NhtVGCQWNr9BrIAPreKQjO6Sn7XIkfJVOzv8=; b=;" + context.go:17: Resulting hash: "0VRYP7Z6RoWZXkk73cyKPIeNywGX6K5a7tw8/49o5HY=" context.go:17: Found DKIM-Signature header: v=1; a=rsa-sha256; c=relaxed/relaxed; - d=example.com; s=test; t=1741256197; + d=example.com; s=test; t=1775666691; h=from:subject:date:to:message-id:from:subject:date:to:cc:message-id; bh=2jUSOH9NhtVGCQWNr9BrIAPreKQjO6Sn7XIkfJVOzv8=; - b=CQaLX8W3YcDhPnIewcc4qgYknVn4hgNoqHwj3pbz7O9W/Gzanb2E8246MNlz6X7SLux1n0 - UzqVWyCHdRBXrPuvYHT33W5Tz1PvxJ9X8s085zbxwZh57C2EQ3vsWZ0gQOZntuO8LmTZW9 - hWssmuDDpYBIb8iYqf3T50S3AWKesPfETRil4G+oPOjFn84Y2OvPxJBRtST+1h4i/GFWbD - T3XeO5ah/DJZLgFAl3ccxCF8ewgAJlxd+NXe3rvWKjLMLyzabDhbeX2bLG1oP55Z5ZcIuF - oF1VfSq2ucVM4HdiO8sx7URxrIi/0ITKEBxgataX3Mxc4eXN17rIBGCJoDDASw==; - context.go:17: TXT record for "test._domainkey.example.com": "v=DKIM1; p=MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAse5Dw5x1wRTufm+TosTQgm4ja1D+vc2hetM+SHCDFGlxGv/AgBPx0X1Jsc9qn8c+oq35pDrR1OvlKQcdFLt+BJTzCULAfdqNQwPxSMqHobn3Y1UrsXKLyRW8phDZAJl89TMqpUYu9rfosOslrHKhHpWt8JJXoM+wQy+LKO3B5uC6oLiQVmSdKYgcDSa5uXUxngnhsPKhCtDuRo7y/V5qWTEFXmbs3LpKEof66ZH+nM11oVj/34r/YdUW1N3QbB07nVlx0jsDSijeva5Q80YekpjeJfVCH8kWCI7XFj6pjXZTp26aTVJUsf/YE+Szc9/6N0GoqEF6V3kcWrmwIB4DKQIDAQAB" + b=Klo64JVT47agpz3LAN2ABxnYm6VxW8QYRoQBZm6EHjF14NSyBpRa4rjaig5v+0E3HusJeI + UO/UXqfYLw6bm+s7gvxTUEfrD4KCG3ZEEjD9u+rDtHB250Se6yONie/Ksu1HNHpCYK9UrY + /3q3Ym2PUrdvTRVXMEFdauvlGvDtju/35FQlgl+fFtCcXoLToG0Fr8OmQX6KvGWc05H9ug + ds1FmH+bipiUfQHQPsjUeCSFEYzDlfupVqqxhJac7psagLKBa5AEECHBgFxhJGnZdXldnA + nc4aEzEzopjE5FeH/nmgFW4UMxyv2zbU5H+QOPEef2EzkBf7F1Sb5Vgf3lnsFQ==; + context.go:17: TXT record for "test._domainkey.example.com": "v=DKIM1; p=MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAuEer9/DT5ygmO5IKbvUZ5uu5QyvsA8bO8Wz/4maf09eD2oUGo5bJv7oT5ZGKLTOelda7JOIfnpVg6/mw2gmV2IoytttZJdH0QGYUE1ru19GNnpMeRu6QuFSYX+TjBmnMnxsNmC6rtLxpDsU7LeHzG9I5vSOfd0IgiePM2su/SCDrH59CB3DbiC4Zc5KZhKVoYg262H1dojrcADPN2zEgtVnrM/DpAve/5rcIaenfZAKDnAc+sCF9C325udWZC3yzotRy4+FED1G/qUnsbE0PCumx3KBoyYkz9DcXTmd8UK5AatjBN+bpELeoyzLKidykyB76aQiFbgehTJDqPiMxMwIDAQAB" context.go:17: Parsed public key: [rsa:30820122300d0609] context.go:17: Body hash matches: "2jUSOH9NhtVGCQWNr9BrIAPreKQjO6Sn7XIkfJVOzv8=" context.go:17: Hashing header: "from:Joe SixPack \r\n" @@ -1500,11 +1536,11 @@ context.go:17: Hashing header: "date:Fri, 11 Jul 2003 21:00:37 -0700 (PDT)\r\n" context.go:17: Hashing header: "to:Suzie Q \r\n" context.go:17: Hashing header: "message-id:<20030712040037.46341.5F8J@football.example.com>\r\n" - context.go:17: Hashing header: "dkim-signature:v=1; a=rsa-sha256; c=relaxed/relaxed; d=example.com; s=test; t=1741256197; h=from:subject:date:to:message-id:from:subject:date:to:cc:message-id; bh=2jUSOH9NhtVGCQWNr9BrIAPreKQjO6Sn7XIkfJVOzv8=; b=;" - context.go:17: Resulting hash: "lubHb+mzfdhJ0H6AIluXdkpC89H1HPEjhUNs6EzRp5M=" + context.go:17: Hashing header: "dkim-signature:v=1; a=rsa-sha256; c=relaxed/relaxed; d=example.com; s=test; t=1775666691; h=from:subject:date:to:message-id:from:subject:date:to:cc:message-id; bh=2jUSOH9NhtVGCQWNr9BrIAPreKQjO6Sn7XIkfJVOzv8=; b=;" + context.go:17: Resulting hash: "0VRYP7Z6RoWZXkk73cyKPIeNywGX6K5a7tw8/49o5HY=" context.go:17: PK [rsa:30820122300d0609]: Verification succeeded context.go:17: Found 1 signatures, 1 valid ---- PASS: TestSignRSA (4.55s) +--- PASS: TestSignRSA (1.85s) === RUN TestSignEd25519 context.go:17: Signing for example.com / test with ed25519-sha256 context.go:17: Hashing header: "from:Joe SixPack \r\n" @@ -1512,31 +1548,31 @@ context.go:17: Hashing header: "date:Fri, 11 Jul 2003 21:00:37 -0700 (PDT)\r\n" context.go:17: Hashing header: "to:Suzie Q \r\n" context.go:17: Hashing header: "message-id:<20030712040037.46341.5F8J@football.example.com>\r\n" - context.go:17: Hashing header: "dkim-signature:v=1; a=ed25519-sha256; c=relaxed/relaxed; d=example.com; s=test; t=1741256197; h=from:subject:date:to:message-id:from:subject:date:to:cc:message-id; bh=2jUSOH9NhtVGCQWNr9BrIAPreKQjO6Sn7XIkfJVOzv8=; b=;" - context.go:17: Resulting hash: "LNW7BvBHZLUvXP0CQtU65lnnWgVsrAFYq1pnXyYlHX8=" + context.go:17: Hashing header: "dkim-signature:v=1; a=ed25519-sha256; c=relaxed/relaxed; d=example.com; s=test; t=1775666691; h=from:subject:date:to:message-id:from:subject:date:to:cc:message-id; bh=2jUSOH9NhtVGCQWNr9BrIAPreKQjO6Sn7XIkfJVOzv8=; b=;" + context.go:17: Resulting hash: "2clWbsG4YpDMSignnO5/JO7fve+7Tyl+oFug1kJiY64=" context.go:17: Found DKIM-Signature header: v=1; a=ed25519-sha256; c=relaxed/relaxed; - d=example.com; s=test; t=1741256197; + d=example.com; s=test; t=1775666691; h=from:subject:date:to:message-id:from:subject:date:to:cc:message-id; bh=2jUSOH9NhtVGCQWNr9BrIAPreKQjO6Sn7XIkfJVOzv8=; - b=/Ah3BgGF90jYtWUvzRLSFB86zKN3vrB1JQVFcR4t0PtwFQUXsNMggZLWQ+ZKdc72eA7624 - fZreAktXqvD0FYDw==; - context.go:17: TXT record for "test._domainkey.example.com": "v=DKIM1; k=ed25519; p=GPG20kWNoS1VV7XnHxKxTbJV8fZr7iijTyafNJucpWk=" - context.go:17: Parsed public key: [ed25519:18f1b6d2458da12d] + b=47/KU5xWGOaSg3nDyEV7KSMonITUnajY1Xynjv+wkcG1E/No9ELoD1rfCNoVxs8xunwihI + OFWTxtzho9FBrHCg==; + context.go:17: TXT record for "test._domainkey.example.com": "v=DKIM1; k=ed25519; p=kjiRU3ov9Qw1to8P58HJymGL9Q5yafqo0OI6o0FVFIs=" + context.go:17: Parsed public key: [ed25519:923891537a2ff50c] context.go:17: Body hash matches: "2jUSOH9NhtVGCQWNr9BrIAPreKQjO6Sn7XIkfJVOzv8=" context.go:17: Hashing header: "from:Joe SixPack \r\n" context.go:17: Hashing header: "subject:Is dinner ready?\r\n" context.go:17: Hashing header: "date:Fri, 11 Jul 2003 21:00:37 -0700 (PDT)\r\n" context.go:17: Hashing header: "to:Suzie Q \r\n" context.go:17: Hashing header: "message-id:<20030712040037.46341.5F8J@football.example.com>\r\n" - context.go:17: Hashing header: "dkim-signature:v=1; a=ed25519-sha256; c=relaxed/relaxed; d=example.com; s=test; t=1741256197; h=from:subject:date:to:message-id:from:subject:date:to:cc:message-id; bh=2jUSOH9NhtVGCQWNr9BrIAPreKQjO6Sn7XIkfJVOzv8=; b=;" - context.go:17: Resulting hash: "LNW7BvBHZLUvXP0CQtU65lnnWgVsrAFYq1pnXyYlHX8=" - context.go:17: PK [ed25519:18f1b6d2458da12d]: Verification succeeded + context.go:17: Hashing header: "dkim-signature:v=1; a=ed25519-sha256; c=relaxed/relaxed; d=example.com; s=test; t=1775666691; h=from:subject:date:to:message-id:from:subject:date:to:cc:message-id; bh=2jUSOH9NhtVGCQWNr9BrIAPreKQjO6Sn7XIkfJVOzv8=; b=;" + context.go:17: Resulting hash: "2clWbsG4YpDMSignnO5/JO7fve+7Tyl+oFug1kJiY64=" + context.go:17: PK [ed25519:923891537a2ff50c]: Verification succeeded context.go:17: Found 1 signatures, 1 valid ---- PASS: TestSignEd25519 (0.04s) +--- PASS: TestSignEd25519 (0.02s) === RUN TestSignBadMessage --- PASS: TestSignBadMessage (0.00s) === RUN TestSignBadAlgorithm ---- PASS: TestSignBadAlgorithm (0.00s) +--- PASS: TestSignBadAlgorithm (0.01s) === RUN TestBreakLongLines --- PASS: TestBreakLongLines (0.00s) === RUN TestFormatHeaders @@ -1713,7 +1749,7 @@ === RUN FuzzParsePublicKey/seed#11 === RUN FuzzParsePublicKey/seed#12 === RUN FuzzParsePublicKey/seed#13 ---- PASS: FuzzParsePublicKey (0.00s) +--- PASS: FuzzParsePublicKey (0.01s) --- PASS: FuzzParsePublicKey/seed#0 (0.00s) --- PASS: FuzzParsePublicKey/seed#1 (0.00s) --- PASS: FuzzParsePublicKey/seed#2 (0.00s) @@ -1729,25 +1765,25 @@ --- PASS: FuzzParsePublicKey/seed#12 (0.00s) --- PASS: FuzzParsePublicKey/seed#13 (0.00s) PASS -ok blitiri.com.ar/go/chasquid/internal/dkim 4.910s +ok blitiri.com.ar/go/chasquid/internal/dkim 2.227s === RUN TestBasic - testlib.go:32: test directory: "/tmp/testlib_2307763994" + testlib.go:32: test directory: "/tmp/testlib_1179866879" _ domaininfo.go:117 DomainInfo.Incoming d1: d1 incoming level raised: TLS_SECURE > PLAIN _ domaininfo.go:109 DomainInfo.Incoming d1: error: d1 incoming denied: TLS_INSECURE < TLS_SECURE _ domaininfo.go:153 DomainInfo.Outgoing d1: d1 outgoing level raised: TLS_SECURE > PLAIN _ domaininfo.go:145 DomainInfo.Outgoing d1: error: d1 outgoing denied: TLS_INSECURE < TLS_SECURE _ domaininfo.go:109 DomainInfo.Incoming d1: error: d1 incoming denied: TLS_INSECURE < TLS_SECURE _ domaininfo.go:182 DomainInfo.SetToPlain d1: set to plain ---- PASS: TestBasic (0.02s) +--- PASS: TestBasic (0.00s) === RUN TestNewDomain - testlib.go:32: test directory: "/tmp/testlib_3474517514" + testlib.go:32: test directory: "/tmp/testlib_2437134689" _ domaininfo.go:153 DomainInfo.Outgoing insecure: insecure outgoing level raised: TLS_INSECURE > PLAIN _ domaininfo.go:117 DomainInfo.Incoming insecure: insecure incoming level raised: TLS_INSECURE > PLAIN _ domaininfo.go:153 DomainInfo.Outgoing secure: secure outgoing level raised: TLS_SECURE > PLAIN _ domaininfo.go:117 DomainInfo.Incoming secure: secure incoming level raised: TLS_SECURE > PLAIN ---- PASS: TestNewDomain (0.01s) +--- PASS: TestNewDomain (0.00s) === RUN TestProgressions - testlib.go:32: test directory: "/tmp/testlib_3467504445" + testlib.go:32: test directory: "/tmp/testlib_161459081" _ domaininfo.go:117 DomainInfo.Incoming pisis: pisis incoming level raised: TLS_INSECURE > PLAIN _ domaininfo.go:153 DomainInfo.Outgoing pisis: pisis outgoing level raised: TLS_INSECURE > PLAIN _ domaininfo.go:117 DomainInfo.Incoming pisis: pisis incoming level raised: TLS_SECURE > TLS_INSECURE @@ -1760,29 +1796,29 @@ _ domaininfo.go:145 DomainInfo.Outgoing ssip: error: ssip outgoing denied: TLS_INSECURE < TLS_SECURE _ domaininfo.go:109 DomainInfo.Incoming ssip: error: ssip incoming denied: PLAIN < TLS_SECURE _ domaininfo.go:145 DomainInfo.Outgoing ssip: error: ssip outgoing denied: PLAIN < TLS_SECURE ---- PASS: TestProgressions (0.01s) +--- PASS: TestProgressions (0.00s) === RUN TestErrors - testlib.go:32: test directory: "/tmp/testlib_108256782" + testlib.go:32: test directory: "/tmp/testlib_1335002066" _ domaininfo.go:117 DomainInfo.Incoming d1: d1 incoming level raised: TLS_SECURE > PLAIN _ domaininfo.go:67 DomainInfo.Reload reload: error: id \"d1\": proto: syntax error (line 1:1): invalid field name: invalid-text-protobuf-contents _ domaininfo.go:67 DomainInfo.Reload reload: error: id \"d1\": proto: syntax error (line 1:1): invalid field name: invalid-text-protobuf-contents --- PASS: TestErrors (0.00s) === RUN TestDirectoryErrors - testlib.go:32: test directory: "/tmp/testlib_3752764572" -_ domaininfo.go:59 DomainInfo.Reload reload: error: open /tmp/testlib_3752764572/db: no such file or directory -_ domaininfo.go:84 DomainInfo.write d1: error: open /tmp/testlib_3752764572/db/.s:d13322244895: no such file or directory + testlib.go:32: test directory: "/tmp/testlib_3651953944" +_ domaininfo.go:59 DomainInfo.Reload reload: error: open /tmp/testlib_3651953944/db: no such file or directory +_ domaininfo.go:84 DomainInfo.write d1: error: open /tmp/testlib_3651953944/db/.s:d12903804598: no such file or directory --- PASS: TestDirectoryErrors (0.00s) PASS -ok blitiri.com.ar/go/chasquid/internal/domaininfo 0.094s +ok blitiri.com.ar/go/chasquid/internal/domaininfo 0.013s === RUN TestUsernameNotSafe --- PASS: TestUsernameNotSafe (0.00s) === RUN TestAutodetect - testlib.go:32: test directory: "/tmp/testlib_1350494976" ---- PASS: TestAutodetect (0.00s) + testlib.go:32: test directory: "/tmp/testlib_2756951164" +--- PASS: TestAutodetect (0.01s) === RUN TestReload --- PASS: TestReload (0.00s) PASS -ok blitiri.com.ar/go/chasquid/internal/dovecot 0.064s +ok blitiri.com.ar/go/chasquid/internal/dovecot 0.087s === RUN TestSplit --- PASS: TestSplit (0.00s) === RUN TestDomainIn @@ -1790,13 +1826,13 @@ === RUN TestAddHeader --- PASS: TestAddHeader (0.00s) PASS -ok blitiri.com.ar/go/chasquid/internal/envelope 0.031s +ok blitiri.com.ar/go/chasquid/internal/envelope 0.076s === RUN TestHandler --- PASS: TestHandler (0.00s) === RUN TestMapLabelAccident --- PASS: TestMapLabelAccident (0.00s) PASS -ok blitiri.com.ar/go/chasquid/internal/expvarom 0.055s +ok blitiri.com.ar/go/chasquid/internal/expvarom 0.006s === RUN TestNoNewline --- PASS: TestNoNewline (0.00s) === RUN TestBasic @@ -1821,21 +1857,21 @@ haproxy_test.go:69: testing 18: PROXY TCP6 5::5 6::6 7777 8888 --- PASS: TestBasic (0.00s) PASS -ok blitiri.com.ar/go/chasquid/internal/haproxy 0.020s +ok blitiri.com.ar/go/chasquid/internal/haproxy 0.090s === RUN TestBadServer - asm_386.s:1393: FakeServer &{{0x96100f0}}: accepted - asm_386.s:1393: FakeServer &{{0x96100f0}}: readRequest: "" "" / EOF - asm_386.s:1393: FakeServer &{{0x96100f0}}: writeMessage("xxx"): 0 write unix /tmp/rpc-test-3031262961/rpc.sock->@: write: broken pipe - asm_386.s:1393: FakeServer &{{0x96100f0}}: closing - asm_386.s:1393: FakeServer &{{0x9610140}}: accepted - asm_386.s:1393: FakeServer &{{0x9610140}}: readRequest: "Echo" "" / - asm_386.s:1393: FakeServer &{{0x9610140}}: writeMessage("xxx"): 3 - asm_386.s:1393: FakeServer &{{0x9610140}}: closing + asm_386.s:1393: FakeServer &{{0x9a02000}}: accepted + asm_386.s:1393: FakeServer &{{0x9a02000}}: readRequest: "" "" / EOF + asm_386.s:1393: FakeServer &{{0x9a02000}}: writeMessage("xxx"): 0 write unix /tmp/rpc-test-4199029523/rpc.sock->@: write: broken pipe + asm_386.s:1393: FakeServer &{{0x9a02000}}: closing + asm_386.s:1393: FakeServer &{{0x9a02050}}: accepted + asm_386.s:1393: FakeServer &{{0x9a02050}}: readRequest: "Echo" "" / + asm_386.s:1393: FakeServer &{{0x9a02050}}: writeMessage("xxx"): 3 + asm_386.s:1393: FakeServer &{{0x9a02050}}: closing --- PASS: TestBadServer (0.01s) === RUN TestBadSocket --- PASS: TestBadSocket (0.00s) === RUN TestEndToEnd -_ localrpc.go:63 LocalRPC.Server /tmp/rpc-test-3462851668/sock: Listening +_ localrpc.go:63 LocalRPC.Server /tmp/rpc-test-301729236/sock: Listening === RUN TestEndToEnd/Echo === RUN TestEndToEnd/Echo#01 === RUN TestEndToEnd/Hola @@ -1843,7 +1879,7 @@ _ localrpc.go:139 LocalRPC.Handle @: error: -> 500 test error === RUN TestEndToEnd/UnknownMethod _ localrpc.go:139 LocalRPC.Handle @: error: -> 500 unknown method -_ localrpc.go:67 LocalRPC.Server /tmp/rpc-test-3462851668/sock: error: Accept error: accept unix /tmp/rpc-test-3462851668/sock: use of closed network connection +_ localrpc.go:67 LocalRPC.Server /tmp/rpc-test-301729236/sock: error: Accept error: accept unix /tmp/rpc-test-301729236/sock: use of closed network connection --- PASS: TestEndToEnd (0.01s) --- PASS: TestEndToEnd/Echo (0.00s) --- PASS: TestEndToEnd/Echo#01 (0.00s) @@ -1858,7 +1894,7 @@ === RUN TestShortReadRequest --- PASS: TestShortReadRequest (0.00s) PASS -ok blitiri.com.ar/go/chasquid/internal/localrpc 0.067s +ok blitiri.com.ar/go/chasquid/internal/localrpc 0.032s === RUN TestLogger --- PASS: TestLogger (0.00s) === RUN TestDefault @@ -1866,7 +1902,7 @@ === RUN TestFailedLogger --- PASS: TestFailedLogger (0.00s) PASS -ok blitiri.com.ar/go/chasquid/internal/maillog 0.019s +ok blitiri.com.ar/go/chasquid/internal/maillog 0.010s === RUN TestContext --- PASS: TestContext (0.00s) === RUN TestHistogramBasic @@ -1874,15 +1910,15 @@ === RUN TestHistogramEmpty --- PASS: TestHistogramEmpty (0.00s) === RUN TestHTTP ---- PASS: TestHTTP (0.03s) +--- PASS: TestHTTP (0.01s) === RUN TestHTTPLong ---- PASS: TestHTTPLong (0.02s) +--- PASS: TestHTTPLong (0.00s) === RUN TestHTTPErrors ---- PASS: TestHTTPErrors (0.05s) +--- PASS: TestHTTPErrors (0.01s) === RUN TestHTTPUroboro ---- PASS: TestHTTPUroboro (0.04s) +--- PASS: TestHTTPUroboro (0.01s) === RUN TestHTTPDeep ---- PASS: TestHTTPDeep (0.03s) +--- PASS: TestHTTPDeep (0.02s) === RUN TestStripZeros --- PASS: TestStripZeros (0.00s) === RUN TestRegisterHandler @@ -1902,7 +1938,7 @@ === RUN TestFindParent --- PASS: TestFindParent (0.00s) PASS -ok blitiri.com.ar/go/chasquid/internal/nettrace 0.223s +ok blitiri.com.ar/go/chasquid/internal/nettrace 0.060s === RUN TestUser --- PASS: TestUser (0.00s) === RUN TestDomain @@ -1919,7 +1955,7 @@ === RUN FuzzUser/6d603c8b9fbe8b9aa021dbde499ec1b3a00922b9338c68b2984cd314c3d5e633 === RUN FuzzUser/ccde73fe7b7352806a87cece8eb81867bdeb177019b69a4bb3c7bb5a277b9c32 === RUN FuzzUser/dc0204d8e2ab058a763873d2a5fede806e95235771ecdd96b56c906886822c19 ---- PASS: FuzzUser (0.03s) +--- PASS: FuzzUser (0.02s) --- PASS: FuzzUser/263da65bb5a59369f294d26a64a36a989a9a36ed5c60950b123e395bedbe881c (0.00s) --- PASS: FuzzUser/31400a53be6363c91bf6585789663189fa30b16181c1d18f19708acccc85f4a1 (0.00s) --- PASS: FuzzUser/6d603c8b9fbe8b9aa021dbde499ec1b3a00922b9338c68b2984cd314c3d5e633 (0.00s) @@ -1931,7 +1967,7 @@ === RUN FuzzDomain/6d603c8b9fbe8b9aa021dbde499ec1b3a00922b9338c68b2984cd314c3d5e633 === RUN FuzzDomain/ccde73fe7b7352806a87cece8eb81867bdeb177019b69a4bb3c7bb5a277b9c32 === RUN FuzzDomain/dc0204d8e2ab058a763873d2a5fede806e95235771ecdd96b56c906886822c19 ---- PASS: FuzzDomain (0.02s) +--- PASS: FuzzDomain (0.01s) --- PASS: FuzzDomain/263da65bb5a59369f294d26a64a36a989a9a36ed5c60950b123e395bedbe881c (0.00s) --- PASS: FuzzDomain/31400a53be6363c91bf6585789663189fa30b16181c1d18f19708acccc85f4a1 (0.00s) --- PASS: FuzzDomain/6d603c8b9fbe8b9aa021dbde499ec1b3a00922b9338c68b2984cd314c3d5e633 (0.00s) @@ -1943,7 +1979,7 @@ === RUN FuzzAddr/ccde73fe7b7352806a87cece8eb81867bdeb177019b69a4bb3c7bb5a277b9c32 === RUN FuzzAddr/d8637022b61fb5c4df4e153063564accd6331debaafdd594405c320a5e9f2e70 === RUN FuzzAddr/dc0204d8e2ab058a763873d2a5fede806e95235771ecdd96b56c906886822c19 ---- PASS: FuzzAddr (0.03s) +--- PASS: FuzzAddr (0.01s) --- PASS: FuzzAddr/31400a53be6363c91bf6585789663189fa30b16181c1d18f19708acccc85f4a1 (0.00s) --- PASS: FuzzAddr/7aba1e0ef80990ccac3731800dbb0267c4c8b7156d4da3b8a5f1b57a570adfb8 (0.00s) --- PASS: FuzzAddr/ccde73fe7b7352806a87cece8eb81867bdeb177019b69a4bb3c7bb5a277b9c32 (0.00s) @@ -1955,48 +1991,48 @@ === RUN FuzzDomainToUnicode/ccde73fe7b7352806a87cece8eb81867bdeb177019b69a4bb3c7bb5a277b9c32 === RUN FuzzDomainToUnicode/d8637022b61fb5c4df4e153063564accd6331debaafdd594405c320a5e9f2e70 === RUN FuzzDomainToUnicode/dc0204d8e2ab058a763873d2a5fede806e95235771ecdd96b56c906886822c19 ---- PASS: FuzzDomainToUnicode (0.03s) +--- PASS: FuzzDomainToUnicode (0.01s) --- PASS: FuzzDomainToUnicode/31400a53be6363c91bf6585789663189fa30b16181c1d18f19708acccc85f4a1 (0.00s) --- PASS: FuzzDomainToUnicode/7aba1e0ef80990ccac3731800dbb0267c4c8b7156d4da3b8a5f1b57a570adfb8 (0.00s) --- PASS: FuzzDomainToUnicode/ccde73fe7b7352806a87cece8eb81867bdeb177019b69a4bb3c7bb5a277b9c32 (0.00s) --- PASS: FuzzDomainToUnicode/d8637022b61fb5c4df4e153063564accd6331debaafdd594405c320a5e9f2e70 (0.00s) --- PASS: FuzzDomainToUnicode/dc0204d8e2ab058a763873d2a5fede806e95235771ecdd96b56c906886822c19 (0.00s) PASS -ok blitiri.com.ar/go/chasquid/internal/normalize 0.144s +ok blitiri.com.ar/go/chasquid/internal/normalize 0.174s === RUN TestBin - testlib.go:32: test directory: "/tmp/testlib_3100142585" + testlib.go:32: test directory: "/tmp/testlib_3345192332" --- PASS: TestBin (0.00s) === RUN TestText - testlib.go:32: test directory: "/tmp/testlib_510271956" + testlib.go:32: test directory: "/tmp/testlib_328285948" --- PASS: TestText (0.00s) === RUN TestStore - testlib.go:32: test directory: "/tmp/testlib_3186825439" + testlib.go:32: test directory: "/tmp/testlib_4179829831" --- PASS: TestStore (0.00s) === RUN TestFileErrors - testlib.go:32: test directory: "/tmp/testlib_2456139463" + testlib.go:32: test directory: "/tmp/testlib_1840098251" --- PASS: TestFileErrors (0.00s) === RUN TestMarshalErrors - testlib.go:32: test directory: "/tmp/testlib_2256233317" + testlib.go:32: test directory: "/tmp/testlib_1719745029" --- PASS: TestMarshalErrors (0.00s) PASS -ok blitiri.com.ar/go/chasquid/internal/protoio 0.053s +ok blitiri.com.ar/go/chasquid/internal/protoio 0.113s ? blitiri.com.ar/go/chasquid/internal/protoio/testpb [no test files] === RUN TestDSN dsn_test.go:49: From: Mail Delivery System To: Subject: Mail delivery failed: returning message to sender - Message-ID: - Date: Thu, 06 Mar 2025 10:16:36 +0000 + Message-ID: + Date: Wed, 08 Apr 2026 16:44:51 +0000 In-Reply-To: References: X-Failed-Recipients: pepe@africa.org, ñaca@africa.org, Auto-Submitted: auto-replied MIME-Version: 1.0 Content-Type: multipart/report; report-type=delivery-status; - boundary="dgkKZG-8gqo" + boundary="EMdISfHaZ8A" - --dgkKZG-8gqo + --EMdISfHaZ8A Content-Type: text/plain; charset="utf-8" Content-Disposition: inline Content-Description: Notification @@ -2021,7 +2057,7 @@ oh! the humanity! - --dgkKZG-8gqo + --EMdISfHaZ8A Content-Type: message/global-delivery-status Content-Description: Delivery Report Content-Transfer-Encoding: 8bit @@ -2052,7 +2088,7 @@ - --dgkKZG-8gqo + --EMdISfHaZ8A Content-Type: message/rfc822 Content-Description: Undelivered Message Content-Transfer-Encoding: 8bit @@ -2062,78 +2098,77 @@ Data ñaca. - --dgkKZG-8gqo-- + --EMdISfHaZ8A-- --- PASS: TestDSN (0.00s) === RUN TestBasic - testlib.go:32: test directory: "/tmp/testlib_673667491" -_ queue.go:308 Queue.SendLoop kvjqpeimjLg: from from -_ queue.go:367 Queue.SendLoop kvjqpeimjLg: nodomain sent -_ queue.go:367 Queue.SendLoop kvjqpeimjLg: am@loco sent -_ queue.go:367 Queue.SendLoop kvjqpeimjLg: x@remote sent -_ queue.go:342 Queue.SendLoop kvjqpeimjLg: all done + testlib.go:32: test directory: "/tmp/testlib_563906020" +_ queue.go:308 Queue.SendLoop mOnHAzDxG80: from from +_ queue.go:367 Queue.SendLoop mOnHAzDxG80: nodomain sent +_ queue.go:367 Queue.SendLoop mOnHAzDxG80: am@loco sent +_ queue.go:367 Queue.SendLoop mOnHAzDxG80: x@remote sent +_ queue.go:342 Queue.SendLoop mOnHAzDxG80: all done --- PASS: TestBasic (0.02s) === RUN TestDSNOnTimeout - testlib.go:32: test directory: "/tmp/testlib_2593195105" -_ queue.go:308 Queue.SendLoop jpek4nwn9v0: from from@loco -_ queue.go:467 Queue.SendLoop jpek4nwn9v0: queued DSN: 6oxjRUhjCCE -_ queue.go:342 Queue.SendLoop jpek4nwn9v0: all done -_ queue.go:308 Queue.SendLoop 6oxjRUhjCCE: from <> -_ queue.go:367 Queue.SendLoop 6oxjRUhjCCE: from@loco sent -_ queue.go:342 Queue.SendLoop 6oxjRUhjCCE: all done + testlib.go:32: test directory: "/tmp/testlib_3345207996" +_ queue.go:308 Queue.SendLoop MQmgo3zo53M: from from@loco +_ queue.go:467 Queue.SendLoop MQmgo3zo53M: queued DSN: bLVgZwzVNXI +_ queue.go:342 Queue.SendLoop MQmgo3zo53M: all done +_ queue.go:308 Queue.SendLoop bLVgZwzVNXI: from <> +_ queue.go:367 Queue.SendLoop bLVgZwzVNXI: from@loco sent +_ queue.go:342 Queue.SendLoop bLVgZwzVNXI: all done --- PASS: TestDSNOnTimeout (0.00s) === RUN TestAliases - testlib.go:32: test directory: "/tmp/testlib_1312992172" -_ queue.go:308 Queue.SendLoop dLuKDMBUSiY: from from -_ queue.go:367 Queue.SendLoop dLuKDMBUSiY: ata@hualpa sent -_ queue.go:367 Queue.SendLoop dLuKDMBUSiY: pq@loco sent -_ queue.go:367 Queue.SendLoop dLuKDMBUSiY: rs@loco sent + testlib.go:32: test directory: "/tmp/testlib_3210842095" +_ queue.go:308 Queue.SendLoop cTbtm3bY6uo: from from +_ queue.go:367 Queue.SendLoop cTbtm3bY6uo: ata@hualpa sent +_ queue.go:367 Queue.SendLoop cTbtm3bY6uo: rs@loco sent --- PASS: TestAliases (0.00s) === RUN TestFullQueue - testlib.go:32: test directory: "/tmp/testlib_1562389174" +_ queue.go:367 Queue.SendLoop cTbtm3bY6uo: pq@loco sent + testlib.go:32: test directory: "/tmp/testlib_2713385858" +_ queue.go:342 Queue.SendLoop cTbtm3bY6uo: all done _ queue.go:164 Queue.Put from: error: queue full +_ queue.go:308 Queue.SendLoop 54H-SnJOqOI: from from --- PASS: TestFullQueue (0.00s) +_ queue.go:367 Queue.SendLoop 54H-SnJOqOI: to sent === RUN TestPipes - testlib.go:32: test directory: "/tmp/testlib_2211232064" -_ queue.go:375 Queue.SendLoop dLuKDMBUSiY: error: failed to write: open /tmp/testlib_1312992172/.m:dLuKDMBUSiY1552324170: no such file or directory -_ queue.go:342 Queue.SendLoop dLuKDMBUSiY: all done -E queue.go:230 failed to remove queue file "/tmp/testlib_1312992172/m:dLuKDMBUSiY": remove /tmp/testlib_1312992172/m:dLuKDMBUSiY: no such file or directory -_ queue.go:308 Queue.SendLoop 653opmzKUCQ: from from -_ queue.go:367 Queue.SendLoop 653opmzKUCQ: to sent -_ queue.go:375 Queue.SendLoop 653opmzKUCQ: error: failed to write: open /tmp/testlib_1562389174/.m:653opmzKUCQ4112601964: no such file or directory -_ queue.go:342 Queue.SendLoop 653opmzKUCQ: all done -E queue.go:230 failed to remove queue file "/tmp/testlib_1562389174/m:653opmzKUCQ": remove /tmp/testlib_1562389174/m:653opmzKUCQ: no such file or directory ---- PASS: TestPipes (0.02s) +_ queue.go:375 Queue.SendLoop 54H-SnJOqOI: error: failed to write: open /tmp/testlib_2713385858/.m:54H-SnJOqOI2448322923: no such file or directory + testlib.go:32: test directory: "/tmp/testlib_3685926252" +_ queue.go:342 Queue.SendLoop 54H-SnJOqOI: all done +E queue.go:230 failed to remove queue file "/tmp/testlib_2713385858/m:54H-SnJOqOI": remove /tmp/testlib_2713385858/m:54H-SnJOqOI: no such file or directory +--- PASS: TestPipes (0.01s) === RUN TestBadPath --- PASS: TestBadPath (0.00s) === RUN TestNextDelay --- PASS: TestNextDelay (0.00s) === RUN TestSerialization - testlib.go:32: test directory: "/tmp/testlib_804211649" -_ queue.go:308 Queue.SendLoop -d6WsNsu_D4: from from@loco -_ queue.go:367 Queue.SendLoop -d6WsNsu_D4: to@to sent -_ queue.go:342 Queue.SendLoop -d6WsNsu_D4: all done + testlib.go:32: test directory: "/tmp/testlib_4129931382" +_ queue.go:308 Queue.SendLoop 3pnRnkuGRgc: from from@loco +_ queue.go:367 Queue.SendLoop 3pnRnkuGRgc: to@to sent --- PASS: TestSerialization (0.00s) +_ queue.go:375 Queue.SendLoop 3pnRnkuGRgc: error: failed to write: rename /tmp/testlib_4129931382/.m:3pnRnkuGRgc3698360361 /tmp/testlib_4129931382/m:3pnRnkuGRgc: no such file or directory PASS -ok blitiri.com.ar/go/chasquid/internal/queue 0.096s +_ queue.go:342 Queue.SendLoop 3pnRnkuGRgc: all done +ok blitiri.com.ar/go/chasquid/internal/queue 0.043s === RUN TestWriteFile - testlib.go:32: test directory: "/tmp/testlib_2850277163" + testlib.go:32: test directory: "/tmp/testlib_3180188871" --- PASS: TestWriteFile (0.00s) === RUN TestWriteFileWithOp - testlib.go:32: test directory: "/tmp/testlib_4163866360" + testlib.go:32: test directory: "/tmp/testlib_2784334642" --- PASS: TestWriteFileWithOp (0.00s) === RUN TestWriteFileWithFailingOp - testlib.go:32: test directory: "/tmp/testlib_3631005635" + testlib.go:32: test directory: "/tmp/testlib_3746490301" --- PASS: TestWriteFileWithFailingOp (0.00s) === RUN TestErrors - testlib.go:32: test directory: "/tmp/testlib_1121839165" + testlib.go:32: test directory: "/tmp/testlib_179573758" --- PASS: TestErrors (0.00s) PASS -ok blitiri.com.ar/go/chasquid/internal/safeio 0.019s +ok blitiri.com.ar/go/chasquid/internal/safeio 0.087s === RUN TestString --- PASS: TestString (0.00s) PASS -ok blitiri.com.ar/go/chasquid/internal/set 0.032s +ok blitiri.com.ar/go/chasquid/internal/set 0.080s === RUN TestIsPermanent --- PASS: TestIsPermanent (0.00s) === RUN TestIsASCII @@ -2147,17 +2182,17 @@ === RUN TestFallbackToIDNA --- PASS: TestFallbackToIDNA (0.00s) === RUN TestLineTooLong ---- PASS: TestLineTooLong (0.14s) +--- PASS: TestLineTooLong (0.04s) PASS -ok blitiri.com.ar/go/chasquid/internal/smtp 0.160s -_ server.go:300 Server listening on 127.0.0.1:35581 (SMTP) -2025-03-06 10:16:38.976052 daemon listening on 127.0.0.1:35581 -_ server.go:300 Server listening on 127.0.0.1:33291 (submission) -2025-03-06 10:16:38.976287 daemon listening on 127.0.0.1:33291 -_ server.go:300 Server listening on 127.0.0.1:39971 (submission+TLS) -2025-03-06 10:16:38.976353 daemon listening on 127.0.0.1:39971 +ok blitiri.com.ar/go/chasquid/internal/smtp 0.121s +_ server.go:300 Server listening on 127.0.0.1:40471 (SMTP) +2026-04-08 16:44:52.379228 daemon listening on 127.0.0.1:40471 +_ server.go:300 Server listening on 127.0.0.1:33491 (submission) +2026-04-08 16:44:52.379374 daemon listening on 127.0.0.1:33491 +_ server.go:300 Server listening on 127.0.0.1:35985 (submission+TLS) +2026-04-08 16:44:52.379455 daemon listening on 127.0.0.1:35985 +_ conn.go:209 SMTP.Conn 127.0.0.1:37820: error: error completing TLS handshake: EOF === RUN TestSecLevel -_ conn.go:209 SMTP.Conn 127.0.0.1:36628: error: error completing TLS handshake: EOF _ domaininfo.go:117 DomainInfo.Incoming slc: slc incoming level raised: TLS_CLIENT > PLAIN _ domaininfo.go:109 DomainInfo.Incoming slc: error: slc incoming denied: PLAIN < TLS_CLIENT _ conn.go:559 testconn testconn: error: security level check for slc failed (PLAIN) @@ -2173,189 +2208,189 @@ === RUN TestReadUntilDotReadError --- PASS: TestReadUntilDotReadError (0.00s) === RUN TestSimple -_ conn.go:722 SMTP.Conn 127.0.0.1:59300: Queued from from@from to [to@localhost] - 2d2YdRmHr14 -2025-03-06 10:16:39.088723 2d2YdRmHr14 from=from@from queued ip=127.0.0.1:59300 to=[to@localhost] -_ queue.go:308 Queue.SendLoop 2d2YdRmHr14: from from@from -_ queue.go:367 Queue.SendLoop 2d2YdRmHr14: testuser@localhost sent -2025-03-06 10:16:39.088906 2d2YdRmHr14 from=from@from to=testuser@localhost sent -_ queue.go:342 Queue.SendLoop 2d2YdRmHr14: all done -2025-03-06 10:16:39.089594 2d2YdRmHr14 from=from@from all done +_ conn.go:722 SMTP.Conn 127.0.0.1:34464: Queued from from@from to [to@localhost] - YgkKklCh-28 +2026-04-08 16:44:52.483582 YgkKklCh-28 from=from@from queued ip=127.0.0.1:34464 to=[to@localhost] +_ queue.go:308 Queue.SendLoop YgkKklCh-28: from from@from +_ queue.go:367 Queue.SendLoop YgkKklCh-28: testuser@localhost sent +2026-04-08 16:44:52.483829 YgkKklCh-28 from=from@from to=testuser@localhost sent --- PASS: TestSimple (0.00s) === RUN TestSimpleTLS -_ conn.go:722 SMTP.Conn 127.0.0.1:59302: Queued from from@from to [to@localhost] - Xt98ulrniMA -2025-03-06 10:16:39.119657 Xt98ulrniMA from=from@from queued ip=127.0.0.1:59302 to=[to@localhost] -_ queue.go:308 Queue.SendLoop Xt98ulrniMA: from from@from -_ queue.go:367 Queue.SendLoop Xt98ulrniMA: testuser@localhost sent -2025-03-06 10:16:39.123027 Xt98ulrniMA from=from@from to=testuser@localhost sent -_ queue.go:342 Queue.SendLoop Xt98ulrniMA: all done -2025-03-06 10:16:39.123971 Xt98ulrniMA from=from@from all done ---- PASS: TestSimpleTLS (0.03s) +_ queue.go:342 Queue.SendLoop YgkKklCh-28: all done +2026-04-08 16:44:52.484731 YgkKklCh-28 from=from@from all done +_ conn.go:722 SMTP.Conn 127.0.0.1:34472: Queued from from@from to [to@localhost] - 3RG0P0gqu0M +2026-04-08 16:44:52.493603 3RG0P0gqu0M from=from@from queued ip=127.0.0.1:34472 to=[to@localhost] +_ queue.go:308 Queue.SendLoop 3RG0P0gqu0M: from from@from +_ queue.go:367 Queue.SendLoop 3RG0P0gqu0M: testuser@localhost sent +2026-04-08 16:44:52.493782 3RG0P0gqu0M from=from@from to=testuser@localhost sent +--- PASS: TestSimpleTLS (0.01s) === RUN TestManyEmails -_ conn.go:722 SMTP.Conn 127.0.0.1:59310: Queued from from@from to [to@localhost] - nxnNMarf0lw -2025-03-06 10:16:39.151134 nxnNMarf0lw from=from@from queued ip=127.0.0.1:59310 to=[to@localhost] -_ queue.go:308 Queue.SendLoop nxnNMarf0lw: from from@from -_ queue.go:367 Queue.SendLoop nxnNMarf0lw: testuser@localhost sent -2025-03-06 10:16:39.151257 nxnNMarf0lw from=from@from to=testuser@localhost sent -_ queue.go:342 Queue.SendLoop nxnNMarf0lw: all done -2025-03-06 10:16:39.151919 nxnNMarf0lw from=from@from all done -_ conn.go:722 SMTP.Conn 127.0.0.1:59310: Queued from from@from to [to@localhost] - TEbanzWwxBY -2025-03-06 10:16:39.160880 TEbanzWwxBY from=from@from queued ip=127.0.0.1:59310 to=[to@localhost] -_ queue.go:308 Queue.SendLoop TEbanzWwxBY: from from@from -_ queue.go:367 Queue.SendLoop TEbanzWwxBY: testuser@localhost sent -2025-03-06 10:16:39.161013 TEbanzWwxBY from=from@from to=testuser@localhost sent -_ queue.go:342 Queue.SendLoop TEbanzWwxBY: all done -2025-03-06 10:16:39.161617 TEbanzWwxBY from=from@from all done -_ conn.go:722 SMTP.Conn 127.0.0.1:59310: Queued from from@from to [to@localhost] - 0woMaQR3zas -2025-03-06 10:16:39.163057 0woMaQR3zas from=from@from queued ip=127.0.0.1:59310 to=[to@localhost] -_ queue.go:308 Queue.SendLoop 0woMaQR3zas: from from@from -_ queue.go:367 Queue.SendLoop 0woMaQR3zas: testuser@localhost sent -2025-03-06 10:16:39.163171 0woMaQR3zas from=from@from to=testuser@localhost sent -_ queue.go:342 Queue.SendLoop 0woMaQR3zas: all done -2025-03-06 10:16:39.163593 0woMaQR3zas from=from@from all done ---- PASS: TestManyEmails (0.04s) +_ queue.go:342 Queue.SendLoop 3RG0P0gqu0M: all done +2026-04-08 16:44:52.494054 3RG0P0gqu0M from=from@from all done +_ conn.go:722 SMTP.Conn 127.0.0.1:34486: Queued from from@from to [to@localhost] - 84fvrfaqSJc +2026-04-08 16:44:52.502820 84fvrfaqSJc from=from@from queued ip=127.0.0.1:34486 to=[to@localhost] +_ queue.go:308 Queue.SendLoop 84fvrfaqSJc: from from@from +_ queue.go:367 Queue.SendLoop 84fvrfaqSJc: testuser@localhost sent +2026-04-08 16:44:52.502987 84fvrfaqSJc from=from@from to=testuser@localhost sent +_ queue.go:342 Queue.SendLoop 84fvrfaqSJc: all done +2026-04-08 16:44:52.503213 84fvrfaqSJc from=from@from all done +_ conn.go:722 SMTP.Conn 127.0.0.1:34486: Queued from from@from to [to@localhost] - 1OgCvVwSWas +2026-04-08 16:44:52.503730 1OgCvVwSWas from=from@from queued ip=127.0.0.1:34486 to=[to@localhost] +_ queue.go:308 Queue.SendLoop 1OgCvVwSWas: from from@from +_ queue.go:367 Queue.SendLoop 1OgCvVwSWas: testuser@localhost sent +2026-04-08 16:44:52.503839 1OgCvVwSWas from=from@from to=testuser@localhost sent +_ queue.go:342 Queue.SendLoop 1OgCvVwSWas: all done +2026-04-08 16:44:52.504096 1OgCvVwSWas from=from@from all done +_ conn.go:722 SMTP.Conn 127.0.0.1:34486: Queued from from@from to [to@localhost] - -KZS8log2m8 +2026-04-08 16:44:52.504541 -KZS8log2m8 from=from@from queued ip=127.0.0.1:34486 to=[to@localhost] +_ queue.go:308 Queue.SendLoop -KZS8log2m8: from from@from +_ queue.go:367 Queue.SendLoop -KZS8log2m8: testuser@localhost sent +2026-04-08 16:44:52.504612 -KZS8log2m8 from=from@from to=testuser@localhost sent +--- PASS: TestManyEmails (0.01s) === RUN TestAuth -2025-03-06 10:16:39.332043 127.0.0.1:33638 auth succeeded for testuser@localhost -_ conn.go:722 SMTP.Conn 127.0.0.1:33638: Queued from testuser@localhost to [to@localhost] - ntA2a98I_6I -2025-03-06 10:16:39.337355 ntA2a98I_6I from=testuser@localhost queued ip=127.0.0.1:33638 to=[to@localhost] -_ queue.go:308 Queue.SendLoop ntA2a98I_6I: from testuser@localhost -_ queue.go:367 Queue.SendLoop ntA2a98I_6I: testuser@localhost sent -2025-03-06 10:16:39.337493 ntA2a98I_6I from=testuser@localhost to=testuser@localhost sent -_ queue.go:342 Queue.SendLoop ntA2a98I_6I: all done -2025-03-06 10:16:39.338204 ntA2a98I_6I from=testuser@localhost all done ---- PASS: TestAuth (0.17s) +_ queue.go:342 Queue.SendLoop -KZS8log2m8: all done +2026-04-08 16:44:52.504779 -KZS8log2m8 from=from@from all done +2026-04-08 16:44:52.617383 127.0.0.1:49274 auth succeeded for testuser@localhost +_ conn.go:722 SMTP.Conn 127.0.0.1:49274: Queued from testuser@localhost to [to@localhost] - lOuReA1tC6w +2026-04-08 16:44:52.618404 lOuReA1tC6w from=testuser@localhost queued ip=127.0.0.1:49274 to=[to@localhost] +_ queue.go:308 Queue.SendLoop lOuReA1tC6w: from testuser@localhost +_ queue.go:367 Queue.SendLoop lOuReA1tC6w: testuser@localhost sent +2026-04-08 16:44:52.618577 lOuReA1tC6w from=testuser@localhost to=testuser@localhost sent +--- PASS: TestAuth (0.11s) === RUN TestSubmissionWithoutAuth -_ conn.go:318 SMTP.Conn 127.0.0.1:33648: error: MAIL failed: 550 5.7.9 Mail to submission port must be authenticated ---- PASS: TestSubmissionWithoutAuth (0.02s) +_ queue.go:342 Queue.SendLoop lOuReA1tC6w: all done +2026-04-08 16:44:52.619264 lOuReA1tC6w from=testuser@localhost all done +_ conn.go:318 SMTP.Conn 127.0.0.1:49280: error: MAIL failed: 550 5.7.9 Mail to submission port must be authenticated +--- PASS: TestSubmissionWithoutAuth (0.01s) === RUN TestAuthOnTLS -2025-03-06 10:16:39.637294 127.0.0.1:36638 auth succeeded for testuser@localhost -_ conn.go:722 SMTP.Conn 127.0.0.1:36638: Queued from testuser@localhost to [to@localhost] - kvfR1sBc5iw -2025-03-06 10:16:39.639224 kvfR1sBc5iw from=testuser@localhost queued ip=127.0.0.1:36638 to=[to@localhost] -_ queue.go:308 Queue.SendLoop kvfR1sBc5iw: from testuser@localhost -_ queue.go:367 Queue.SendLoop kvfR1sBc5iw: testuser@localhost sent -2025-03-06 10:16:39.639368 kvfR1sBc5iw from=testuser@localhost to=testuser@localhost sent -_ queue.go:342 Queue.SendLoop kvfR1sBc5iw: all done -2025-03-06 10:16:39.639960 kvfR1sBc5iw from=testuser@localhost all done ---- PASS: TestAuthOnTLS (0.28s) +2026-04-08 16:44:52.744524 127.0.0.1:37834 auth succeeded for testuser@localhost +_ conn.go:722 SMTP.Conn 127.0.0.1:37834: Queued from testuser@localhost to [to@localhost] - BHoNQm-4Tzk +2026-04-08 16:44:52.745777 BHoNQm-4Tzk from=testuser@localhost queued ip=127.0.0.1:37834 to=[to@localhost] +_ queue.go:308 Queue.SendLoop BHoNQm-4Tzk: from testuser@localhost +_ queue.go:367 Queue.SendLoop BHoNQm-4Tzk: testuser@localhost sent +2026-04-08 16:44:52.745948 BHoNQm-4Tzk from=testuser@localhost to=testuser@localhost sent +--- PASS: TestAuthOnTLS (0.11s) === RUN TestAuthOnSMTP -2025-03-06 10:16:39.789808 127.0.0.1:59314 auth succeeded for testuser@localhost -_ conn.go:722 SMTP.Conn 127.0.0.1:59314: Queued from testuser@localhost to [to@localhost] - BODOOFncsic -2025-03-06 10:16:39.792659 BODOOFncsic from=testuser@localhost queued ip=127.0.0.1:59314 to=[to@localhost] -_ queue.go:308 Queue.SendLoop BODOOFncsic: from testuser@localhost -_ queue.go:367 Queue.SendLoop BODOOFncsic: testuser@localhost sent -2025-03-06 10:16:39.792804 BODOOFncsic from=testuser@localhost to=testuser@localhost sent ---- PASS: TestAuthOnSMTP (0.15s) +_ queue.go:342 Queue.SendLoop BHoNQm-4Tzk: all done +2026-04-08 16:44:52.746242 BHoNQm-4Tzk from=testuser@localhost all done +2026-04-08 16:44:52.855665 127.0.0.1:34494 auth succeeded for testuser@localhost +_ conn.go:722 SMTP.Conn 127.0.0.1:34494: Queued from testuser@localhost to [to@localhost] - 8gYLRmOpH5M +2026-04-08 16:44:52.857321 8gYLRmOpH5M from=testuser@localhost queued ip=127.0.0.1:34494 to=[to@localhost] +_ queue.go:308 Queue.SendLoop 8gYLRmOpH5M: from testuser@localhost +_ queue.go:367 Queue.SendLoop 8gYLRmOpH5M: testuser@localhost sent +2026-04-08 16:44:52.857405 8gYLRmOpH5M from=testuser@localhost to=testuser@localhost sent +--- PASS: TestAuthOnSMTP (0.11s) === RUN TestBrokenAuth -_ queue.go:342 Queue.SendLoop BODOOFncsic: all done -2025-03-06 10:16:39.793446 BODOOFncsic from=testuser@localhost all done -_ conn.go:1193 SMTP.Conn 127.0.0.1:33656: error: error authenticating \"user\"@\"broken\": failed to auth -2025-03-06 10:16:39.926401 127.0.0.1:33656 auth failed for user@broken -_ conn.go:318 SMTP.Conn 127.0.0.1:33656: error: AUTH failed: 454 4.7.0 Temporary authentication failure -_ conn.go:318 SMTP.Conn 127.0.0.1:33656: error: unknown<\"*\"> failed: 500 5.5.1 Unknown command ---- PASS: TestBrokenAuth (0.14s) +_ queue.go:342 Queue.SendLoop 8gYLRmOpH5M: all done +2026-04-08 16:44:52.857622 8gYLRmOpH5M from=testuser@localhost all done +_ conn.go:1193 SMTP.Conn 127.0.0.1:49296: error: error authenticating \"user\"@\"broken\": failed to auth +2026-04-08 16:44:52.985452 127.0.0.1:49296 auth failed for user@broken +_ conn.go:318 SMTP.Conn 127.0.0.1:49296: error: AUTH failed: 454 4.7.0 Temporary authentication failure +_ conn.go:318 SMTP.Conn 127.0.0.1:49296: error: unknown<\"*\"> failed: 500 5.5.1 Unknown command +--- PASS: TestBrokenAuth (0.13s) === RUN TestWrongMailParsing -_ conn.go:318 SMTP.Conn 127.0.0.1:59330: error: MAIL failed: 501 5.1.7 Sender address malformed -_ conn.go:318 SMTP.Conn 127.0.0.1:59330: error: RCPT failed: 501 5.1.3 Malformed destination address -_ conn.go:318 SMTP.Conn 127.0.0.1:59330: error: RCPT failed: 501 5.1.3 Malformed destination address -_ conn.go:325 SMTP.Conn 127.0.0.1:59330: error: too many errors, breaking connection -_ conn.go:318 SMTP.Conn 127.0.0.1:59338: error: MAIL failed: 501 5.1.7 Sender address malformed -_ conn.go:318 SMTP.Conn 127.0.0.1:59338: error: RCPT failed: 501 5.1.3 Malformed destination address -_ conn.go:318 SMTP.Conn 127.0.0.1:59338: error: RCPT failed: 501 5.1.3 Malformed destination address -_ conn.go:325 SMTP.Conn 127.0.0.1:59338: error: too many errors, breaking connection -_ conn.go:318 SMTP.Conn 127.0.0.1:59344: error: MAIL failed: 501 5.1.7 Sender address malformed -_ conn.go:318 SMTP.Conn 127.0.0.1:59344: error: RCPT failed: 501 5.1.3 Malformed destination address -_ conn.go:318 SMTP.Conn 127.0.0.1:59344: error: RCPT failed: 501 5.1.3 Malformed destination address -_ conn.go:325 SMTP.Conn 127.0.0.1:59344: error: too many errors, breaking connection -_ conn.go:318 SMTP.Conn 127.0.0.1:59358: error: MAIL failed: 501 5.1.7 Sender address malformed -_ conn.go:318 SMTP.Conn 127.0.0.1:59358: error: RCPT failed: 501 5.1.3 Malformed destination address -_ conn.go:318 SMTP.Conn 127.0.0.1:59358: error: RCPT failed: 501 5.1.3 Malformed destination address -_ conn.go:325 SMTP.Conn 127.0.0.1:59358: error: too many errors, breaking connection -_ conn.go:318 SMTP.Conn 127.0.0.1:59368: error: MAIL failed: 501 5.1.7 Sender address malformed -_ conn.go:318 SMTP.Conn 127.0.0.1:59368: error: RCPT failed: 501 5.1.3 Malformed destination address -_ conn.go:318 SMTP.Conn 127.0.0.1:59368: error: RCPT failed: 501 5.1.3 Malformed destination address -_ conn.go:325 SMTP.Conn 127.0.0.1:59368: error: too many errors, breaking connection -_ conn.go:318 SMTP.Conn 127.0.0.1:59384: error: MAIL failed: 501 5.1.7 Sender address malformed -_ conn.go:318 SMTP.Conn 127.0.0.1:59384: error: RCPT failed: 501 5.1.3 Malformed destination address -_ conn.go:318 SMTP.Conn 127.0.0.1:59384: error: RCPT failed: 501 5.1.3 Malformed destination address -_ conn.go:325 SMTP.Conn 127.0.0.1:59384: error: too many errors, breaking connection +_ conn.go:318 SMTP.Conn 127.0.0.1:34496: error: MAIL failed: 501 5.1.7 Sender address malformed +_ conn.go:318 SMTP.Conn 127.0.0.1:34496: error: RCPT failed: 501 5.1.3 Malformed destination address +_ conn.go:318 SMTP.Conn 127.0.0.1:34496: error: RCPT failed: 501 5.1.3 Malformed destination address +_ conn.go:325 SMTP.Conn 127.0.0.1:34496: error: too many errors, breaking connection +_ conn.go:318 SMTP.Conn 127.0.0.1:34498: error: MAIL failed: 501 5.1.7 Sender address malformed +_ conn.go:318 SMTP.Conn 127.0.0.1:34498: error: RCPT failed: 501 5.1.3 Malformed destination address +_ conn.go:318 SMTP.Conn 127.0.0.1:34498: error: RCPT failed: 501 5.1.3 Malformed destination address +_ conn.go:325 SMTP.Conn 127.0.0.1:34498: error: too many errors, breaking connection +_ conn.go:318 SMTP.Conn 127.0.0.1:34512: error: MAIL failed: 501 5.1.7 Sender address malformed +_ conn.go:318 SMTP.Conn 127.0.0.1:34512: error: RCPT failed: 501 5.1.3 Malformed destination address +_ conn.go:318 SMTP.Conn 127.0.0.1:34512: error: RCPT failed: 501 5.1.3 Malformed destination address +_ conn.go:325 SMTP.Conn 127.0.0.1:34512: error: too many errors, breaking connection +_ conn.go:318 SMTP.Conn 127.0.0.1:34518: error: MAIL failed: 501 5.1.7 Sender address malformed +_ conn.go:318 SMTP.Conn 127.0.0.1:34518: error: RCPT failed: 501 5.1.3 Malformed destination address +_ conn.go:318 SMTP.Conn 127.0.0.1:34518: error: RCPT failed: 501 5.1.3 Malformed destination address +_ conn.go:325 SMTP.Conn 127.0.0.1:34518: error: too many errors, breaking connection +_ conn.go:318 SMTP.Conn 127.0.0.1:34520: error: MAIL failed: 501 5.1.7 Sender address malformed +_ conn.go:318 SMTP.Conn 127.0.0.1:34520: error: RCPT failed: 501 5.1.3 Malformed destination address +_ conn.go:318 SMTP.Conn 127.0.0.1:34520: error: RCPT failed: 501 5.1.3 Malformed destination address +_ conn.go:325 SMTP.Conn 127.0.0.1:34520: error: too many errors, breaking connection +_ conn.go:318 SMTP.Conn 127.0.0.1:34534: error: MAIL failed: 501 5.1.7 Sender address malformed +_ conn.go:318 SMTP.Conn 127.0.0.1:34534: error: RCPT failed: 501 5.1.3 Malformed destination address +_ conn.go:318 SMTP.Conn 127.0.0.1:34534: error: RCPT failed: 501 5.1.3 Malformed destination address +_ conn.go:325 SMTP.Conn 127.0.0.1:34534: error: too many errors, breaking connection --- PASS: TestWrongMailParsing (0.01s) === RUN TestNullMailFrom --- PASS: TestNullMailFrom (0.00s) === RUN TestRcptBeforeMail -_ conn.go:318 SMTP.Conn 127.0.0.1:59392: error: RCPT failed: 503 5.5.1 Sender not yet given +_ conn.go:318 SMTP.Conn 127.0.0.1:34550: error: RCPT failed: 503 5.5.1 Sender not yet given --- PASS: TestRcptBeforeMail (0.00s) === RUN TestRcptOption --- PASS: TestRcptOption (0.01s) === RUN TestRelayForbidden -2025-03-06 10:16:39.962263 127.0.0.1:59420 rejected from=from@somewhere to=[to@somewhere] - relay not allowed -_ conn.go:318 SMTP.Conn 127.0.0.1:59420: error: RCPT failed: 503 5.7.1 Relay not allowed +2026-04-08 16:44:53.002622 127.0.0.1:34568 rejected from=from@somewhere to=[to@somewhere] - relay not allowed +_ conn.go:318 SMTP.Conn 127.0.0.1:34568: error: RCPT failed: 503 5.7.1 Relay not allowed --- PASS: TestRelayForbidden (0.00s) === RUN TestTooManyRecipients -2025-03-06 10:16:40.141395 127.0.0.1:33660 auth succeeded for testuser@localhost -_ conn.go:318 SMTP.Conn 127.0.0.1:33660: error: RCPT failed: 452 4.5.3 Too many recipients ---- PASS: TestTooManyRecipients (0.20s) +2026-04-08 16:44:53.114885 127.0.0.1:49312 auth succeeded for testuser@localhost +_ conn.go:318 SMTP.Conn 127.0.0.1:49312: error: RCPT failed: 452 4.5.3 Too many recipients +--- PASS: TestTooManyRecipients (0.12s) === RUN TestRcptBrokenExists -_ conn.go:622 SMTP.Conn 127.0.0.1:59432: error: error checking if user \"to@broken\" exists: failed to check if user exists -2025-03-06 10:16:40.186544 127.0.0.1:59432 rejected from=from@localhost to=[to@broken] - error checking if user exists: failed to check if user exists -_ conn.go:318 SMTP.Conn 127.0.0.1:59432: error: RCPT failed: 451 4.4.3 Temporary error checking address ---- PASS: TestRcptBrokenExists (0.02s) +_ conn.go:622 SMTP.Conn 127.0.0.1:34570: error: error checking if user \"to@broken\" exists: failed to check if user exists +2026-04-08 16:44:53.132388 127.0.0.1:34570 rejected from=from@localhost to=[to@broken] - error checking if user exists: failed to check if user exists +_ conn.go:318 SMTP.Conn 127.0.0.1:34570: error: RCPT failed: 451 4.4.3 Temporary error checking address +--- PASS: TestRcptBrokenExists (0.01s) === RUN TestRcptUserDoesNotExist -2025-03-06 10:16:40.205039 127.0.0.1:59434 rejected from=from@localhost to=[doesnotexist@localhost] - local user does not exist -_ conn.go:318 SMTP.Conn 127.0.0.1:59434: error: RCPT failed: 550 5.1.1 Destination address is unknown (user does not exist) ---- PASS: TestRcptUserDoesNotExist (0.02s) +2026-04-08 16:44:53.141216 127.0.0.1:34586 rejected from=from@localhost to=[doesnotexist@localhost] - local user does not exist +_ conn.go:318 SMTP.Conn 127.0.0.1:34586: error: RCPT failed: 550 5.1.1 Destination address is unknown (user does not exist) +--- PASS: TestRcptUserDoesNotExist (0.01s) === RUN TestTooMuchData -_ conn.go:722 SMTP.Conn 127.0.0.1:59436: Queued from from@from to [to@localhost] - Kvyxixe2Frs -2025-03-06 10:16:40.800002 Kvyxixe2Frs from=from@from queued ip=127.0.0.1:59436 to=[to@localhost] -_ queue.go:308 Queue.SendLoop Kvyxixe2Frs: from from@from -_ queue.go:367 Queue.SendLoop Kvyxixe2Frs: testuser@localhost sent -2025-03-06 10:16:40.800455 Kvyxixe2Frs from=from@from to=testuser@localhost sent -_ queue.go:342 Queue.SendLoop Kvyxixe2Frs: all done -2025-03-06 10:16:40.881251 Kvyxixe2Frs from=from@from all done -_ conn.go:722 SMTP.Conn 127.0.0.1:59436: Queued from from@from to [to@localhost] - 8g5JwImklLQ -2025-03-06 10:16:41.446497 8g5JwImklLQ from=from@from queued ip=127.0.0.1:59436 to=[to@localhost] -_ queue.go:308 Queue.SendLoop 8g5JwImklLQ: from from@from -_ queue.go:367 Queue.SendLoop 8g5JwImklLQ: testuser@localhost sent -2025-03-06 10:16:41.446858 8g5JwImklLQ from=from@from to=testuser@localhost sent -_ queue.go:342 Queue.SendLoop 8g5JwImklLQ: all done -2025-03-06 10:16:41.530366 8g5JwImklLQ from=from@from all done -_ conn.go:318 SMTP.Conn 127.0.0.1:59436: error: DATA failed: 552 5.3.4 Message too big -_ conn.go:722 SMTP.Conn 127.0.0.1:59436: Queued from from@from to [to@localhost] - GSHsNlqbqcE -2025-03-06 10:16:42.744837 GSHsNlqbqcE from=from@from queued ip=127.0.0.1:59436 to=[to@localhost] -_ queue.go:308 Queue.SendLoop GSHsNlqbqcE: from from@from -_ queue.go:367 Queue.SendLoop GSHsNlqbqcE: testuser@localhost sent -2025-03-06 10:16:42.745369 GSHsNlqbqcE from=from@from to=testuser@localhost sent ---- PASS: TestTooMuchData (2.55s) +_ conn.go:722 SMTP.Conn 127.0.0.1:34600: Queued from from@from to [to@localhost] - CrzEWxk0DBA +2026-04-08 16:44:53.440016 CrzEWxk0DBA from=from@from queued ip=127.0.0.1:34600 to=[to@localhost] +_ queue.go:308 Queue.SendLoop CrzEWxk0DBA: from from@from +_ queue.go:367 Queue.SendLoop CrzEWxk0DBA: testuser@localhost sent +2026-04-08 16:44:53.440241 CrzEWxk0DBA from=from@from to=testuser@localhost sent +_ queue.go:342 Queue.SendLoop CrzEWxk0DBA: all done +2026-04-08 16:44:53.462824 CrzEWxk0DBA from=from@from all done +_ conn.go:722 SMTP.Conn 127.0.0.1:34600: Queued from from@from to [to@localhost] - SPW-uNNz5AA +2026-04-08 16:44:54.126755 SPW-uNNz5AA from=from@from queued ip=127.0.0.1:34600 to=[to@localhost] +_ queue.go:308 Queue.SendLoop SPW-uNNz5AA: from from@from +_ queue.go:367 Queue.SendLoop SPW-uNNz5AA: testuser@localhost sent +2026-04-08 16:44:54.127000 SPW-uNNz5AA from=from@from to=testuser@localhost sent +_ queue.go:342 Queue.SendLoop SPW-uNNz5AA: all done +2026-04-08 16:44:54.148566 SPW-uNNz5AA from=from@from all done +_ conn.go:318 SMTP.Conn 127.0.0.1:34600: error: DATA failed: 552 5.3.4 Message too big +_ conn.go:722 SMTP.Conn 127.0.0.1:34600: Queued from from@from to [to@localhost] - BAkvTokTWlA +2026-04-08 16:44:55.381747 BAkvTokTWlA from=from@from queued ip=127.0.0.1:34600 to=[to@localhost] +_ queue.go:308 Queue.SendLoop BAkvTokTWlA: from from@from +_ queue.go:367 Queue.SendLoop BAkvTokTWlA: testuser@localhost sent +2026-04-08 16:44:55.381933 BAkvTokTWlA from=from@from to=testuser@localhost sent +--- PASS: TestTooMuchData (2.24s) === RUN TestSimpleCommands -_ conn.go:318 SMTP.Conn 127.0.0.1:59452: error: VRFY failed: 502 5.5.1 You have a strange feeling for a moment, then it passes. -_ conn.go:318 SMTP.Conn 127.0.0.1:59452: error: EXPN failed: 502 5.5.1 You feel disoriented for a moment. +_ conn.go:318 SMTP.Conn 127.0.0.1:34604: error: VRFY failed: 502 5.5.1 You have a strange feeling for a moment, then it passes. +_ conn.go:318 SMTP.Conn 127.0.0.1:34604: error: EXPN failed: 502 5.5.1 You feel disoriented for a moment. --- PASS: TestSimpleCommands (0.00s) === RUN TestLongLines -_ conn.go:318 SMTP.Conn 127.0.0.1:59466: error: unknown<\"\"> failed: 500 5.5.1 Unknown command -_ conn.go:348 SMTP.Conn 127.0.0.1:59466: error: exiting with error: line too long +_ conn.go:318 SMTP.Conn 127.0.0.1:34618: error: unknown<\"\"> failed: 500 5.5.1 Unknown command +_ conn.go:348 SMTP.Conn 127.0.0.1:34618: error: exiting with error: line too long --- PASS: TestLongLines (0.00s) === RUN TestReset ---- PASS: TestReset (0.01s) +--- PASS: TestReset (0.00s) === RUN TestRepeatedStartTLS -_ conn.go:318 SMTP.Conn 127.0.0.1:59486: error: STARTTLS failed: 503 5.5.1 You are already wearing that! ---- PASS: TestRepeatedStartTLS (0.03s) +_ conn.go:318 SMTP.Conn 127.0.0.1:34624: error: STARTTLS failed: 503 5.5.1 You are already wearing that! +--- PASS: TestRepeatedStartTLS (0.01s) === RUN TestStartTLSOnTLS -_ conn.go:318 SMTP.Conn 127.0.0.1:36644: error: STARTTLS failed: 503 5.5.1 You are already wearing that! ---- PASS: TestStartTLSOnTLS (0.02s) +_ queue.go:342 Queue.SendLoop BAkvTokTWlA: all done +2026-04-08 16:44:55.399650 BAkvTokTWlA from=from@from all done +_ conn.go:318 SMTP.Conn 127.0.0.1:37850: error: STARTTLS failed: 503 5.5.1 You are already wearing that! +--- PASS: TestStartTLSOnTLS (0.01s) === RUN TestAddDKIMSigner - testlib.go:32: test directory: "/tmp/testlib_626315947" -_ queue.go:342 Queue.SendLoop GSHsNlqbqcE: all done -2025-03-06 10:16:42.823495 GSHsNlqbqcE from=from@from all done ---- PASS: TestAddDKIMSigner (0.04s) + testlib.go:32: test directory: "/tmp/testlib_1442707442" +--- PASS: TestAddDKIMSigner (0.02s) === RUN FuzzConnection --- PASS: FuzzConnection (0.00s) PASS -ok blitiri.com.ar/go/chasquid/internal/smtpsrv 4.881s +ok blitiri.com.ar/go/chasquid/internal/smtpsrv 3.240s === RUN TestParsePolicy sts_test.go:90: pol1: &{Version:STSv1 Mode:enforce MXs:[*.mail.example.com] MaxAge:34h17m36s} --- PASS: TestParsePolicy (0.00s) === RUN TestCheckPolicy --- PASS: TestCheckPolicy (0.00s) === RUN TestMatchDomain ---- PASS: TestMatchDomain (0.01s) +--- PASS: TestMatchDomain (0.00s) === RUN TestMXIsAllowed --- PASS: TestMXIsAllowed (0.00s) === RUN TestFetch @@ -2363,34 +2398,34 @@ sts_test.go:210: policy404: got error as expected: HTTP response status code: 404 sts_test.go:218: version99: got expected error: unknown policy version sts_test.go:226: domErr: got expected error: error for testing purposes ---- PASS: TestFetch (0.01s) +--- PASS: TestFetch (0.00s) === RUN TestPolicyTooBig sts_test.go:242: got error as expected: MTA-STS TXT record missing ---- PASS: TestPolicyTooBig (0.13s) +--- PASS: TestPolicyTooBig (0.01s) === RUN TestCacheBasics - testlib.go:32: test directory: "/tmp/testlib_2840957487" + testlib.go:32: test directory: "/tmp/testlib_3926972051" sts_test.go:277: cache fetched domain.com: &{STSv1 enforce [*.mail.domain.com] 1h0m0s} sts_test.go:286: cache fetched domain.com: &{STSv1 enforce [*.mail.domain.com] 1h0m0s} sts_test.go:300: cache fetched domain.com: &{STSv1 enforce [*.mail.domain.com] 1h0m0s} sts_test.go:309: cache fetched domErr: ---- PASS: TestCacheBasics (0.04s) +--- PASS: TestCacheBasics (0.00s) === RUN TestCacheBadData - testlib.go:32: test directory: "/tmp/testlib_697580820" + testlib.go:32: test directory: "/tmp/testlib_4227192381" sts_test.go:349: cache fetched domain.com: &{STSv1 enforce [*.mail.domain.com] 1h0m0s} sts_test.go:363: cache fetched domain.com: &{STSv1 enforce [*.mail.domain.com] 1h0m0s} sts_test.go:372: cache fetched domain.com: &{STSv1 enforce [*.mail.domain.com] 1h0m0s} sts_test.go:349: cache fetched domain.com: &{STSv1 enforce [*.mail.domain.com] 1h0m0s} sts_test.go:363: cache fetched domain.com: &{STSv1 enforce [*.mail.domain.com] 1h0m0s} sts_test.go:372: cache fetched domain.com: &{STSv1 enforce [*.mail.domain.com] 1h0m0s} ---- PASS: TestCacheBadData (0.01s) +--- PASS: TestCacheBadData (0.00s) === RUN TestCacheRefresh - testlib.go:32: test directory: "/tmp/testlib_2239707022" + testlib.go:32: test directory: "/tmp/testlib_2441934764" sts_test.go:389: Fetch "refresh-test": &{STSv1 enforce [mx] 1m40s} sts_test.go:389: Fetch "refresh-test": &{STSv1 enforce [mx] 1m40s} sts_test.go:389: Fetch "refresh-test": &{STSv1 enforce [mx] 3m20s} --- PASS: TestCacheRefresh (0.01s) === RUN TestCacheSlashSafe - testlib.go:32: test directory: "/tmp/testlib_1936776584" + testlib.go:32: test directory: "/tmp/testlib_109742454" sts_test.go:464: recovered: domain contains slash --- PASS: TestCacheSlashSafe (0.00s) === RUN TestURLForDomain @@ -2400,9 +2435,9 @@ === RUN TestHTTPGet --- PASS: TestHTTPGet (0.00s) PASS -ok blitiri.com.ar/go/chasquid/internal/sts 0.252s +ok blitiri.com.ar/go/chasquid/internal/sts 0.038s === RUN TestBasic - testlib.go:32: test directory: "/tmp/testlib_376615011" + testlib.go:32: test directory: "/tmp/testlib_2775609372" --- PASS: TestBasic (0.00s) === RUN TestRemoveCheck testlib_test.go:33: recovered: invalid/dangerous directory @@ -2413,55 +2448,55 @@ testlib_test.go:60: recovered: invalid/dangerous path --- PASS: TestRewriteSafeguard (0.00s) === RUN TestRewrite - testlib.go:32: test directory: "/tmp/testlib_1160796324" + testlib.go:32: test directory: "/tmp/testlib_1330432444" --- PASS: TestRewrite (0.00s) === RUN TestGetFreePort ---- PASS: TestGetFreePort (0.00s) +--- PASS: TestGetFreePort (0.01s) === RUN TestWaitFor --- PASS: TestWaitFor (0.02s) === RUN TestGenerateCert - testlib.go:32: test directory: "/tmp/testlib_2468916010" ---- PASS: TestGenerateCert (0.40s) + testlib.go:32: test directory: "/tmp/testlib_2259863917" +--- PASS: TestGenerateCert (0.24s) === RUN TestGenerateCertBadDir ---- PASS: TestGenerateCertBadDir (1.06s) +--- PASS: TestGenerateCertBadDir (0.11s) PASS -ok blitiri.com.ar/go/chasquid/internal/testlib 1.512s +ok blitiri.com.ar/go/chasquid/internal/testlib 0.480s === RUN TestVersionName --- PASS: TestVersionName (0.00s) === RUN TestCipherSuiteName --- PASS: TestCipherSuiteName (0.00s) PASS -ok blitiri.com.ar/go/chasquid/internal/tlsconst 0.056s +ok blitiri.com.ar/go/chasquid/internal/tlsconst 0.082s ? blitiri.com.ar/go/chasquid/internal/trace [no test files] === RUN TestEmptyLoad - userdb_test.go:37: file: "/tmp/userdb_test461721354" - userdb_test.go:37: file: "/tmp/userdb_test2073677132" ---- PASS: TestEmptyLoad (0.00s) + userdb_test.go:37: file: "/tmp/userdb_test4172371037" + userdb_test.go:37: file: "/tmp/userdb_test4206601582" +--- PASS: TestEmptyLoad (0.01s) === RUN TestWrite - userdb_test.go:37: file: "/tmp/userdb_test2912769306" ---- PASS: TestWrite (1.13s) + userdb_test.go:37: file: "/tmp/userdb_test460937258" +--- PASS: TestWrite (0.55s) === RUN TestNew ---- PASS: TestNew (0.14s) +--- PASS: TestNew (0.07s) === RUN TestInvalidUsername - userdb_test.go:37: file: "/tmp/userdb_test1649529714" + userdb_test.go:37: file: "/tmp/userdb_test2164800534" --- PASS: TestInvalidUsername (0.00s) === RUN TestPlainScheme - userdb_test.go:37: file: "/tmp/userdb_test2074194381" + userdb_test.go:37: file: "/tmp/userdb_test611106053" --- PASS: TestPlainScheme (0.00s) === RUN TestDeniedScheme - userdb_test.go:37: file: "/tmp/userdb_test3202351460" + userdb_test.go:37: file: "/tmp/userdb_test2771505834" --- PASS: TestDeniedScheme (0.00s) === RUN TestReload - userdb_test.go:37: file: "/tmp/userdb_test1964643077" + userdb_test.go:37: file: "/tmp/userdb_test1234049759" --- PASS: TestReload (0.00s) === RUN TestRemoveUser - userdb_test.go:37: file: "/tmp/userdb_test867076104" ---- PASS: TestRemoveUser (0.14s) + userdb_test.go:37: file: "/tmp/userdb_test3006112222" +--- PASS: TestRemoveUser (0.07s) === RUN TestExists - userdb_test.go:37: file: "/tmp/userdb_test2629246746" ---- PASS: TestExists (0.14s) + userdb_test.go:37: file: "/tmp/userdb_test2631612803" +--- PASS: TestExists (0.07s) PASS -ok blitiri.com.ar/go/chasquid/internal/userdb 1.581s +ok blitiri.com.ar/go/chasquid/internal/userdb 0.874s create-stamp debian/debhelper-build-stamp dh_testroot -O--buildsystem=golang dh_prep -O--buildsystem=golang @@ -2515,8 +2550,8 @@ dpkg-gencontrol: warning: package chasquid: substitution variable ${misc:Static-Built-Using} unused, but is defined dh_md5sums -O--buildsystem=golang dh_builddeb -O--buildsystem=golang -dpkg-deb: building package 'chasquid' in '../chasquid_1.15.0-1_i386.deb'. dpkg-deb: building package 'chasquid-dbgsym' in '../chasquid-dbgsym_1.15.0-1_i386.deb'. +dpkg-deb: building package 'chasquid' in '../chasquid_1.15.0-1_i386.deb'. dpkg-genbuildinfo --build=binary -O../chasquid_1.15.0-1_i386.buildinfo dpkg-genchanges --build=binary -O../chasquid_1.15.0-1_i386.changes dpkg-genchanges: info: binary-only upload (no source code included) @@ -2524,12 +2559,14 @@ dpkg-buildpackage: info: binary-only upload (no source included) dpkg-genchanges: info: including full source code in upload I: copying local configuration +I: user script /srv/workspace/pbuilder/55605/tmp/hooks/B01_cleanup starting +I: user script /srv/workspace/pbuilder/55605/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 I: cleaning the build env -I: removing directory /srv/workspace/pbuilder/52388 and its subdirectories -I: Current time: Wed Mar 5 22:17:28 -12 2025 -I: pbuilder-time-stamp: 1741256248 +I: removing directory /srv/workspace/pbuilder/55605 and its subdirectories +I: Current time: Thu Apr 9 06:46:22 +14 2026 +I: pbuilder-time-stamp: 1775666782