Diff of the two buildlogs: -- --- b1/build.log 2025-08-28 22:45:10.646780632 +0000 +++ b2/build.log 2025-08-28 22:46:23.014873783 +0000 @@ -1,6 +1,6 @@ I: pbuilder: network access will be disabled during build -I: Current time: Wed Sep 30 17:04:03 -12 2026 -I: pbuilder-time-stamp: 1790831043 +I: Current time: Fri Aug 29 12:45:11 +14 2025 +I: pbuilder-time-stamp: 1756421111 I: Building the build Environment I: extracting base tarball [/var/cache/pbuilder/forky-reproducible-base.tgz] I: copying local configuration @@ -24,53 +24,85 @@ 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/1180880/tmp/hooks/D02_print_environment starting +I: user script /srv/workspace/pbuilder/591128/tmp/hooks/D01_modify_environment starting +debug: Running on ionos11-amd64. +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 Aug 28 22:45 /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/591128/tmp/hooks/D01_modify_environment finished +I: user script /srv/workspace/pbuilder/591128/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='amd64' - DEBIAN_FRONTEND='noninteractive' - DEB_BUILD_OPTIONS='buildinfo=+all reproducible=+all parallel=42 ' - DISTRIBUTION='forky' - HOME='/root' - HOST_ARCH='amd64' + 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]="x86_64-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=amd64 + DEBIAN_FRONTEND=noninteractive + DEB_BUILD_OPTIONS='buildinfo=+all reproducible=+all parallel=40 ' + DIRSTACK=() + DISTRIBUTION=forky + EUID=0 + FUNCNAME=([0]="Echo" [1]="main") + GROUPS=() + HOME=/root + HOSTNAME=i-capture-the-hostname + HOSTTYPE=x86_64 + HOST_ARCH=amd64 IFS=' ' - INVOCATION_ID='f7fd170383b84b18b3597f758beaa2ec' - LANG='C' - LANGUAGE='en_US:en' - LC_ALL='C' - 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='1180880' - PS1='# ' - PS2='> ' + INVOCATION_ID=f08fd3dd1e984072b3a6aa8edba12bea + LANG=C + LANGUAGE=et_EE:et + LC_ALL=C + MACHTYPE=x86_64-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=591128 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.9hLoGke8/pbuilderrc_5A84 --distribution forky --hookdir /etc/pbuilder/first-build-hooks --debbuildopts -b --basetgz /var/cache/pbuilder/forky-reproducible-base.tgz --buildresult /srv/reproducible-results/rbuild-debian/r-b-build.9hLoGke8/b1 --logfile b1/build.log chasquid_1.15.0-1.dsc' - SUDO_GID='110' - SUDO_HOME='/var/lib/jenkins' - SUDO_UID='105' - SUDO_USER='jenkins' - TERM='unknown' - TZ='/usr/share/zoneinfo/Etc/GMT+12' - USER='root' - _='/usr/bin/systemd-run' - http_proxy='http://213.165.73.152:3128' + PWD=/ + SHELL=/bin/bash + SHELLOPTS=braceexpand:errexit:hashall:interactive-comments:posix + SHLVL=3 + SUDO_COMMAND='/usr/bin/timeout -k 24.1h 24h /usr/bin/ionice -c 3 /usr/bin/nice -n 11 /usr/bin/unshare --uts -- /usr/sbin/pbuilder --build --configfile /srv/reproducible-results/rbuild-debian/r-b-build.9hLoGke8/pbuilderrc_Ac48 --distribution forky --hookdir /etc/pbuilder/rebuild-hooks --debbuildopts -b --basetgz /var/cache/pbuilder/forky-reproducible-base.tgz --buildresult /srv/reproducible-results/rbuild-debian/r-b-build.9hLoGke8/b2 --logfile b2/build.log chasquid_1.15.0-1.dsc' + SUDO_GID=111 + SUDO_HOME=/var/lib/jenkins + SUDO_UID=106 + SUDO_USER=jenkins + TERM=unknown + TZ=/usr/share/zoneinfo/Etc/GMT-14 + UID=0 + USER=root + _='I: set' + http_proxy=http://46.16.76.132:3128 I: uname -a - Linux ionos5-amd64 6.12.41+deb13-amd64 #1 SMP PREEMPT_DYNAMIC Debian 6.12.41-1 (2025-08-12) x86_64 GNU/Linux + Linux i-capture-the-hostname 6.12.41+deb13-amd64 #1 SMP PREEMPT_DYNAMIC Debian 6.12.41-1 (2025-08-12) x86_64 GNU/Linux I: ls -l /bin - lrwxrwxrwx 1 root root 7 Aug 10 2025 /bin -> usr/bin -I: user script /srv/workspace/pbuilder/1180880/tmp/hooks/D02_print_environment finished + lrwxrwxrwx 1 root root 7 Aug 10 12:30 /bin -> usr/bin +I: user script /srv/workspace/pbuilder/591128/tmp/hooks/D02_print_environment finished -> Attempting to satisfy build-dependencies -> Creating pbuilder-satisfydepends-dummy package Package: pbuilder-satisfydepends-dummy @@ -173,7 +205,7 @@ Get: 43 http://deb.debian.org/debian forky/main amd64 golang-blitiri-go-log-dev all 1.1.0-1 [6724 B] Get: 44 http://deb.debian.org/debian forky/main amd64 golang-blitiri-go-spf-dev all 1.5.1-1 [37.2 kB] Get: 45 http://deb.debian.org/debian forky/main amd64 golang-blitiri-go-systemd-dev all 1.1.0-1 [6952 B] -Fetched 69.2 MB in 1s (56.7 MB/s) +Fetched 69.2 MB in 3s (22.9 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 ... 19855 files and directories currently installed.) @@ -368,7 +400,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/591128/tmp/hooks/A99_set_merged_usr starting +Not re-configuring usrmerge for forky +I: user script /srv/workspace/pbuilder/591128/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 @@ -388,44 +424,44 @@ 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-x86_64-linux-gnu && go install -trimpath -v -p 42 -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/coverage/rtcov -internal/msan + cd obj-x86_64-linux-gnu && go install -trimpath -v -p 40 -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 +cmp +math/bits +internal/asan internal/byteorder -internal/goexperiment internal/unsafeheader +unicode/utf8 +internal/msan +internal/goarch encoding -crypto/internal/fips140/alias -internal/godebugs -vendor/golang.org/x/crypto/cryptobyte/asn1 internal/itoa -cmp -internal/goos -internal/profilerecord -internal/cpu -unicode/utf8 unicode/utf16 -vendor/golang.org/x/crypto/internal/alias +internal/coverage/rtcov container/list -internal/runtime/atomic -internal/goarch -blitiri.com.ar/go/chasquid/internal/set -internal/nettrace +internal/goos container/ring +internal/nettrace +vendor/golang.org/x/crypto/cryptobyte/asn1 +vendor/golang.org/x/crypto/internal/alias +crypto/internal/fips140/alias +blitiri.com.ar/go/chasquid/internal/set +google.golang.org/protobuf/internal/flags +internal/cpu sync/atomic -crypto/internal/boring/sig +internal/runtime/atomic internal/runtime/syscall +crypto/internal/boring/sig log/internal -google.golang.org/protobuf/internal/flags -internal/asan -math/bits unicode -crypto/internal/fips140/subtle -crypto/internal/fips140deps/byteorder +internal/goexperiment internal/runtime/math -internal/chacha8rand internal/runtime/sys internal/abi +crypto/internal/fips140/subtle +internal/chacha8rand +crypto/internal/fips140deps/byteorder google.golang.org/protobuf/internal/set internal/runtime/exithook crypto/internal/fips140deps/cpu @@ -436,54 +472,51 @@ internal/sync internal/runtime/maps runtime +iter weak crypto/subtle -sync -iter internal/reflectlite +sync maps slices errors sort -internal/testlog internal/bisect internal/singleflight +internal/testlog google.golang.org/protobuf/internal/pragma unique +runtime/cgo internal/oserror io path -vendor/golang.org/x/net/dns/dnsmessage math/rand/v2 +vendor/golang.org/x/net/dns/dnsmessage strconv -runtime/cgo -syscall internal/godebug -reflect -golang.org/x/text/internal/tag -math/rand -crypto/internal/randutil -crypto/internal/fips140deps/godebug -net/netip +syscall hash bytes strings -hash/crc32 +crypto/internal/randutil +golang.org/x/text/internal/tag hash/fnv +hash/crc32 +crypto/internal/fips140deps/godebug +math/rand crypto -internal/syscall/execenv -internal/syscall/unix -time -crypto/internal/fips140 -html -regexp/syntax +net/netip +reflect +golang.org/x/text/transform +vendor/golang.org/x/text/transform +bufio crypto/internal/impl net/http/internal/ascii -bufio -vendor/golang.org/x/text/transform -golang.org/x/text/transform -crypto/tls/internal/fips140tls +html +crypto/internal/fips140 +regexp/syntax crypto/internal/fips140/sha256 +crypto/tls/internal/fips140tls crypto/internal/fips140/sha512 crypto/internal/fips140/sha3 golang.org/x/text/runes @@ -493,168 +526,171 @@ crypto/internal/fips140/check crypto/internal/fips140hash crypto/internal/fips140/hkdf +crypto/internal/fips140/tls12 crypto/internal/fips140/edwards25519/field -crypto/internal/fips140/bigmod crypto/internal/fips140/aes -crypto/internal/fips140/tls12 +crypto/internal/fips140/bigmod crypto/internal/fips140/nistec/fiat +internal/syscall/unix +time +internal/syscall/execenv crypto/internal/fips140/tls13 -regexp crypto/internal/fips140/edwards25519 +regexp +crypto/internal/fips140/nistec context -internal/poll io/fs +internal/poll internal/filepathlite embed google.golang.org/protobuf/internal/editiondefaults os -crypto/internal/fips140/nistec -encoding/binary internal/fmtsort -vendor/golang.org/x/crypto/internal/poly1305 +encoding/binary encoding/base64 +vendor/golang.org/x/crypto/internal/poly1305 +golang.org/x/sys/unix +encoding/pem google.golang.org/protobuf/internal/detrand +crypto/internal/sysrand blitiri.com.ar/go/chasquid/internal/safeio internal/sysinfo -crypto/internal/sysrand -os/signal -fmt path/filepath +fmt +os/signal vendor/golang.org/x/sys/cpu -golang.org/x/sys/unix net crypto/internal/entropy crypto/internal/fips140/drbg -encoding/pem +os/exec +crypto/internal/fips140/ecdsa crypto/internal/fips140only +crypto/internal/fips140/ecdh crypto/internal/fips140/ed25519 -crypto/internal/fips140/mlkem crypto/internal/fips140/rsa crypto/internal/fips140/aes/gcm -os/exec -crypto/md5 +crypto/internal/fips140/mlkem crypto/rc4 +crypto/md5 crypto/cipher +crypto/internal/boring +crypto/des +vendor/golang.org/x/crypto/chacha20 log +flag google.golang.org/protobuf/internal/errors -go/token google.golang.org/protobuf/internal/version -compress/flate -text/template/parse +go/token encoding/hex +text/template/parse mime/quotedprintable -text/tabwriter +net/http/internal net/url +mime +vendor/golang.org/x/net/http2/hpack +text/tabwriter +runtime/trace blitiri.com.ar/go/chasquid/internal/tlsconst -encoding/json -math/big -net/http/internal -golang.org/x/text/unicode/norm -golang.org/x/text/internal/language -flag blitiri.com.ar/go/chasquid/internal/envelope +encoding/json runtime/debug vendor/golang.org/x/text/unicode/norm -mime -runtime/trace -crypto/internal/fips140/ecdh -crypto/internal/fips140/ecdsa -vendor/golang.org/x/net/http2/hpack -google.golang.org/protobuf/encoding/protowire -crypto/internal/boring -crypto/des -vendor/golang.org/x/crypto/chacha20 -google.golang.org/protobuf/reflect/protoreflect -vendor/golang.org/x/text/unicode/bidi -golang.org/x/text/unicode/bidi -crypto/aes +compress/flate +golang.org/x/text/internal/language +math/big +golang.org/x/text/unicode/norm crypto/sha512 -crypto/ecdh crypto/hmac crypto/sha1 +crypto/aes crypto/sha256 -golang.org/x/crypto/pbkdf2 +crypto/ecdh +google.golang.org/protobuf/encoding/protowire vendor/golang.org/x/crypto/chacha20poly1305 +golang.org/x/crypto/pbkdf2 +google.golang.org/protobuf/reflect/protoreflect +vendor/golang.org/x/text/unicode/bidi +golang.org/x/text/unicode/bidi golang.org/x/crypto/scrypt testing compress/gzip -vendor/golang.org/x/text/secure/bidirule -golang.org/x/text/secure/bidirule -internal/profile runtime/pprof +internal/profile +vendor/golang.org/x/text/secure/bidirule golang.org/x/text/internal/language/compact +golang.org/x/text/secure/bidirule text/template +golang.org/x/term golang.org/x/net/idna golang.org/x/text/language -vendor/golang.org/x/net/idna google.golang.org/protobuf/internal/encoding/messageset google.golang.org/protobuf/internal/strs google.golang.org/protobuf/internal/order -google.golang.org/protobuf/internal/descfmt google.golang.org/protobuf/runtime/protoiface +google.golang.org/protobuf/internal/descfmt google.golang.org/protobuf/internal/descopts google.golang.org/protobuf/internal/genid +vendor/golang.org/x/net/idna google.golang.org/protobuf/internal/protolazy google.golang.org/protobuf/reflect/protoregistry google.golang.org/protobuf/internal/encoding/text +google.golang.org/protobuf/proto golang.org/x/text/internal -golang.org/x/text/cases -html/template google.golang.org/protobuf/internal/encoding/defval -google.golang.org/protobuf/proto crypto/internal/boring/bbig -crypto/rand crypto/elliptic -encoding/asn1 crypto/dsa +crypto/rand +encoding/asn1 +golang.org/x/text/cases crypto/ed25519 crypto/internal/hpke crypto/rsa -golang.org/x/text/secure/precis +html/template google.golang.org/protobuf/encoding/prototext google.golang.org/protobuf/internal/filedesc -golang.org/x/term +golang.org/x/text/secure/precis crypto/x509/pkix vendor/golang.org/x/crypto/cryptobyte -blitiri.com.ar/go/chasquid/internal/normalize blitiri.com.ar/go/chasquid/internal/protoio crypto/ecdsa +blitiri.com.ar/go/chasquid/internal/normalize google.golang.org/protobuf/internal/encoding/tag google.golang.org/protobuf/internal/impl -net/textproto blitiri.com.ar/go/chasquid/internal/haproxy -blitiri.com.ar/go/spf -blitiri.com.ar/go/systemd -crypto/x509 log/syslog vendor/golang.org/x/net/http/httpproxy +blitiri.com.ar/go/systemd +blitiri.com.ar/go/spf +net/textproto +crypto/x509 blitiri.com.ar/go/log vendor/golang.org/x/net/http/httpguts blitiri.com.ar/go/chasquid/internal/dovecot -net/mail mime/multipart blitiri.com.ar/go/chasquid/cmd/mda-lmtp +net/mail 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/config 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/testlib net/smtp +blitiri.com.ar/go/chasquid/internal/testlib net/http blitiri.com.ar/go/chasquid/internal/smtp expvar -blitiri.com.ar/go/chasquid/internal/nettrace golang.org/x/net/context/ctxhttp net/http/pprof +blitiri.com.ar/go/chasquid/internal/nettrace blitiri.com.ar/go/chasquid/internal/trace -blitiri.com.ar/go/chasquid/internal/localrpc -blitiri.com.ar/go/chasquid/internal/maillog blitiri.com.ar/go/chasquid/internal/domaininfo +blitiri.com.ar/go/chasquid/internal/maillog blitiri.com.ar/go/chasquid/internal/auth +blitiri.com.ar/go/chasquid/internal/localrpc blitiri.com.ar/go/chasquid/internal/expvarom blitiri.com.ar/go/chasquid/cmd/chasquid-util blitiri.com.ar/go/chasquid/internal/sts @@ -666,7 +702,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-x86_64-linux-gnu && go test -vet=off -v -p 42 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-x86_64-linux-gnu && go test -vet=off -v -p 40 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] @@ -690,9 +726,9 @@ === RUN TestTooMuchRecursionOnCatchAll --- PASS: TestTooMuchRecursionOnCatchAll (0.00s) === RUN TestAddFile ---- PASS: TestAddFile (0.01s) +--- PASS: TestAddFile (0.00s) === RUN TestRichFile ---- PASS: TestRichFile (0.02s) +--- PASS: TestRichFile (0.00s) === RUN TestManyFiles --- PASS: TestManyFiles (0.00s) === RUN TestHookError @@ -700,7 +736,7 @@ _ aliases.go:544 Hook.Alias-Resolve a@localA: error: exit status 1 _ aliases.go:544 Hook.Alias-Resolve *@localA: error: exit status 1 _ aliases.go:544 Hook.Alias-Resolve a@localA: error: exit status 1 ---- PASS: TestHookError (0.02s) +--- PASS: TestHookError (0.01s) === RUN FuzzReader === RUN FuzzReader/seed#0 === RUN FuzzReader/1c24d2215db69748c6fd16797673ad11ebc7e6167fe1bc1f54c6959ec10407b6 @@ -716,7 +752,7 @@ --- PASS: FuzzReader/c9c80ba9f513841cb081fe9bb7439d36f9f7a06bb999d4c39441991ccc878a9e (0.00s) --- PASS: FuzzReader/d40a98862ed393eb712e47a91bcef18e6f24cf368bb4bd248c7a7101ef8e178d (0.00s) PASS -ok blitiri.com.ar/go/chasquid/internal/aliases 0.076s +ok blitiri.com.ar/go/chasquid/internal/aliases 0.018s === 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 @@ -729,11 +765,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.50s) +--- PASS: TestAuthenticate (0.33s) === RUN TestInterfaces --- PASS: TestInterfaces (0.00s) === RUN TestMultipleBackends ---- PASS: TestMultipleBackends (0.18s) +--- PASS: TestMultipleBackends (0.19s) === RUN TestErrors --- PASS: TestErrors (0.00s) === RUN TestReload @@ -762,28 +798,28 @@ --- PASS: FuzzDecodeResponse/d9aa9c617d1f5b3021aca758b9d896d136e3b16ed53233d02abffd02aa73ffa4 (0.00s) --- PASS: FuzzDecodeResponse/de05c7993312bab83e8114e9d9ced331c49822dc55c1a353f1cc9718a28226e7 (0.00s) PASS -ok blitiri.com.ar/go/chasquid/internal/auth 0.719s +ok blitiri.com.ar/go/chasquid/internal/auth 0.522s === RUN TestEmptyStruct ---- PASS: TestEmptyStruct (0.01s) +--- PASS: TestEmptyStruct (0.00s) === RUN TestEmptyConfig - testlib.go:32: test directory: "/tmp/testlib_3184338233" ---- PASS: TestEmptyConfig (0.01s) + testlib.go:32: test directory: "/tmp/testlib_17235508" +--- PASS: TestEmptyConfig (0.00s) === RUN TestFullConfig - testlib.go:32: test directory: "/tmp/testlib_3514246948" ---- PASS: TestFullConfig (0.02s) + testlib.go:32: test directory: "/tmp/testlib_328500605" +--- PASS: TestFullConfig (0.00s) === RUN TestErrorLoading --- PASS: TestErrorLoading (0.00s) === RUN TestBrokenConfig - testlib.go:32: test directory: "/tmp/testlib_2748514124" + testlib.go:32: test directory: "/tmp/testlib_3157293688" --- PASS: TestBrokenConfig (0.00s) === RUN TestBrokenOverride - testlib.go:32: test directory: "/tmp/testlib_2040737226" + testlib.go:32: test directory: "/tmp/testlib_2928324299" --- PASS: TestBrokenOverride (0.00s) PASS -ok blitiri.com.ar/go/chasquid/internal/config 0.059s +ok blitiri.com.ar/go/chasquid/internal/config 0.009s === RUN TestMDA - testlib.go:32: test directory: "/tmp/testlib_492024805" ---- PASS: TestMDA (0.01s) + testlib.go:32: test directory: "/tmp/testlib_976434593" +--- PASS: TestMDA (0.00s) === RUN TestMDATimeout _ mda.go:73 Courier.MDA to@local: error: operation timed out --- PASS: TestMDATimeout (0.10s) @@ -797,10 +833,10 @@ === RUN TestSanitize --- PASS: TestSanitize (0.00s) === RUN TestSMTP - testlib.go:32: test directory: "/tmp/testlib_3660166729" - testlib.go:32: test directory: "/tmp/testlib_750830679" -_ smtp.go:127 Courier.SMTP to@to: error: Could not dial: dial tcp: address ::::42087: too many colons in address -_ smtp.go:101 Courier.SMTP to@to: error: \":::\" returned transient error: Could not dial: dial tcp: address ::::42087: too many colons in address + testlib.go:32: test directory: "/tmp/testlib_2353702914" + testlib.go:32: test directory: "/tmp/testlib_1860767018" +_ smtp.go:127 Courier.SMTP to@to: error: Could not dial: dial tcp: address ::::42463: too many colons in address +_ smtp.go:101 Courier.SMTP to@to: error: \":::\" returned transient error: Could not dial: dial tcp: address ::::42463: 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:" @@ -808,26 +844,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.16s) +--- PASS: TestSMTP (0.03s) === RUN TestSMTPErrors - testlib.go:32: test directory: "/tmp/testlib_768971737" - testlib.go:32: test directory: "/tmp/testlib_3987234352" + testlib.go:32: test directory: "/tmp/testlib_2415332784" + testlib.go:32: test directory: "/tmp/testlib_2925744426" fakeserver_test.go:98: fakeServer got connection -_ smtp.go:138 Courier.SMTP to@to: error: Error saying hello: write tcp 127.0.0.1:39036->127.0.0.1:33129: 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:39036->127.0.0.1:33129: i/o timeout +_ smtp.go:138 Courier.SMTP to@to: error: Error saying hello: write tcp 127.0.0.1:49348->127.0.0.1:43239: 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:49348->127.0.0.1:43239: 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:49348->127.0.0.1:43239: 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:49348->127.0.0.1:43239: i/o timeout) fakeserver_test.go:105: fakeServer exiting: EOF -_ smtp.go:105 Courier.SMTP to@to: error: all MXs returned transient failures (last: Error saying hello: write tcp 127.0.0.1:39036->127.0.0.1:33129: 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:39036->127.0.0.1:33129: i/o timeout) - testlib.go:32: test directory: "/tmp/testlib_2848594904" - testlib.go:32: test directory: "/tmp/testlib_4080734164" + testlib.go:32: test directory: "/tmp/testlib_3398623594" + testlib.go:32: test directory: "/tmp/testlib_3907356188" 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 - fakeserver_test.go:105: fakeServer exiting: EOF smtp_test.go:140: failed as expected: MAIL+RCPT 501 mail error - testlib.go:32: test directory: "/tmp/testlib_462814210" - testlib.go:32: test directory: "/tmp/testlib_1644350637" + fakeserver_test.go:105: fakeServer exiting: EOF + testlib.go:32: test directory: "/tmp/testlib_4187891830" + testlib.go:32: test directory: "/tmp/testlib_2773363455" fakeserver_test.go:98: fakeServer got connection fakeserver_test.go:109: fakeServer read: "EHLO hello" fakeserver_test.go:109: fakeServer read: "MAIL FROM:" @@ -835,8 +871,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_819661823" - testlib.go:32: test directory: "/tmp/testlib_3924186971" + testlib.go:32: test directory: "/tmp/testlib_4283302492" + testlib.go:32: test directory: "/tmp/testlib_2265054732" fakeserver_test.go:98: fakeServer got connection fakeserver_test.go:109: fakeServer read: "EHLO hello" fakeserver_test.go:109: fakeServer read: "MAIL FROM:" @@ -845,19 +881,19 @@ _ 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_179799660" - testlib.go:32: test directory: "/tmp/testlib_675944704" + testlib.go:32: test directory: "/tmp/testlib_3209784368" + testlib.go:32: test directory: "/tmp/testlib_1056470262" 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" _ smtp.go:216 Courier.SMTP to@to: error: DATA closing 551 data response error - fakeserver_test.go:105: fakeServer exiting: EOF smtp_test.go:140: failed as expected: DATA closing 551 data response error ---- PASS: TestSMTPErrors (2.33s) + fakeserver_test.go:105: fakeServer exiting: EOF +--- PASS: TestSMTPErrors (1.42s) === RUN TestNoMXServer - testlib.go:32: test directory: "/tmp/testlib_3236308586" + testlib.go:32: test directory: "/tmp/testlib_2053460762" _ 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) @@ -872,8 +908,8 @@ === RUN TestLookupInvalidDomain --- PASS: TestLookupInvalidDomain (0.00s) === RUN TestTLS - testlib.go:32: test directory: "/tmp/testlib_1541804430" - testlib.go:32: test directory: "/tmp/testlib_1461399415" + testlib.go:32: test directory: "/tmp/testlib_3215552046" + testlib.go:32: test directory: "/tmp/testlib_2495614853" fakeserver_test.go:98: fakeServer got connection fakeserver_test.go:109: fakeServer read: "EHLO hello" fakeserver_test.go:109: fakeServer read: "STARTTLS" @@ -884,34 +920,34 @@ 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_1424164325" + testlib.go:32: test directory: "/tmp/testlib_3793940582" 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 _ smtp.go:185 Courier.SMTP to@to: error: Security level check failed (level:PLAIN) _ smtp.go:101 Courier.SMTP to@to: error: \"localhost\" returned transient error: Security level check failed (level:PLAIN) - fakeserver_test.go:105: fakeServer exiting: EOF _ smtp.go:105 Courier.SMTP to@to: error: all MXs returned transient failures (last: Security level check failed (level:PLAIN)) ---- PASS: TestTLS (0.44s) + fakeserver_test.go:105: fakeServer exiting: EOF +--- PASS: TestTLS (0.04s) === RUN TestTLSError - testlib.go:32: test directory: "/tmp/testlib_1550261350" - testlib.go:32: test directory: "/tmp/testlib_3793362096" + testlib.go:32: test directory: "/tmp/testlib_2101468285" + testlib.go:32: test directory: "/tmp/testlib_911533265" 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.50s) +--- PASS: TestTLSError (0.10s) === RUN TestSTSPolicyEnforcement - testlib.go:32: test directory: "/tmp/testlib_1870019738" - testlib.go:32: test directory: "/tmp/testlib_393052372" + testlib.go:32: test directory: "/tmp/testlib_2707096035" + testlib.go:32: test directory: "/tmp/testlib_2425348837" fakeserver_test.go:98: fakeServer got connection fakeserver_test.go:109: fakeServer read: "EHLO hello" fakeserver_test.go:109: fakeServer read: "STARTTLS" @@ -919,7 +955,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_408511857" + testlib.go:32: test directory: "/tmp/testlib_92861754" fakeserver_test.go:98: fakeServer got connection fakeserver_test.go:109: fakeServer read: "EHLO hello" fakeserver_test.go:109: fakeServer read: "STARTTLS" @@ -930,9 +966,9 @@ fakeserver_test.go:109: fakeServer read: "DATA" fakeserver_test.go:109: fakeServer read: "QUIT" fakeserver_test.go:105: fakeServer exiting: EOF ---- PASS: TestSTSPolicyEnforcement (0.16s) +--- PASS: TestSTSPolicyEnforcement (0.06s) PASS -ok blitiri.com.ar/go/chasquid/internal/courier 3.733s +ok blitiri.com.ar/go/chasquid/internal/courier 1.775s === RUN TestStringToCanonicalization --- PASS: TestStringToCanonicalization (0.00s) === RUN TestSimpleBody @@ -958,7 +994,7 @@ === RUN TestSkipBadRecords --- PASS: TestSkipBadRecords (0.00s) === RUN TestParsePublicKey ---- PASS: TestParsePublicKey (0.01s) +--- PASS: TestParsePublicKey (0.00s) === RUN TestPublicKeyMatches --- PASS: TestPublicKeyMatches (0.00s) === RUN TestStrictDomainCheck @@ -1012,7 +1048,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:[0xc000310360 0xc0003103c0 0xc000310420 0xc000310480 0xc0003104e0]} + file_test.go:56: Want result: &{Found:5 Valid:5 Results:[0xc00029e720 0xc00029e780 0xc00029e7e0 0xc00029e840 0xc00029e8a0]} 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; @@ -1124,7 +1160,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:[0xc0003110e0]} + file_test.go:56: Want result: &{Found:1 Valid:0 Results:[0xc00029f4a0]} 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; @@ -1138,7 +1174,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:[0xc000311500 0xc000311560]} + file_test.go:56: Want result: &{Found:2 Valid:1 Results:[0xc00032a0c0 0xc00032a120]} 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; @@ -1172,7 +1208,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:[0xc000311b60 0xc000311bc0]} + file_test.go:56: Want result: &{Found:2 Valid:1 Results:[0xc00032a780 0xc00032a7e0]} 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; @@ -1206,7 +1242,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:[0xc0003ce2a0 0xc0003ce300]} + file_test.go:56: Want result: &{Found:2 Valid:2 Results:[0xc00032ae40 0xc00032aea0]} 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; @@ -1253,7 +1289,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:[0xc0003cea20 0xc0003cea80 0xc0003ceae0]} + file_test.go:56: Want result: &{Found:3 Valid:3 Results:[0xc00032b5c0 0xc00032b620 0xc00032b680]} 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; @@ -1313,7 +1349,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:[0xc0003cf2c0 0xc0003cf320 0xc0003cf380]} + file_test.go:56: Want result: &{Found:3 Valid:3 Results:[0xc00032be60 0xc00032bec0 0xc00032bf20]} 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; @@ -1373,7 +1409,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:[0xc0003cfbc0 0xc0003cfc20]} + file_test.go:56: Want result: &{Found:2 Valid:2 Results:[0xc0003ce7e0 0xc0003ce840]} 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; @@ -1419,7 +1455,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:[0xc00043e360]} + file_test.go:56: Want result: &{Found:1 Valid:0 Results:[0xc0003cef00]} 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; @@ -1440,15 +1476,15 @@ 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.04s) - --- PASS: TestFromFiles/testdata/01-rfc8463 (0.01s) - --- PASS: TestFromFiles/testdata/02-too_many_headers (0.01s) +--- PASS: TestFromFiles (0.01s) + --- PASS: TestFromFiles/testdata/01-rfc8463 (0.00s) + --- PASS: TestFromFiles/testdata/02-too_many_headers (0.00s) --- 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/05-dns_temp_error (0.00s) --- PASS: TestFromFiles/testdata/06-dns_perm_error (0.00s) --- PASS: TestFromFiles/testdata/07-algo_mismatch (0.00s) - --- PASS: TestFromFiles/testdata/08-our_signature (0.01s) + --- PASS: TestFromFiles/testdata/08-our_signature (0.00s) --- PASS: TestFromFiles/testdata/09-limited_body (0.00s) --- PASS: TestFromFiles/testdata/10-strict_domain_check_pass (0.00s) --- PASS: TestFromFiles/testdata/11-strict_domain_check_fail (0.00s) @@ -1475,18 +1511,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=1790831208; h=from:subject:date:to:message-id:from:subject:date:to:cc:message-id; bh=2jUSOH9NhtVGCQWNr9BrIAPreKQjO6Sn7XIkfJVOzv8=; b=;" - context.go:17: Resulting hash: "y7vLh9cFEj/soBHaad5VwaOG86r1ohgdHgQGGjh+VSQ=" + context.go:17: Hashing header: "dkim-signature:v=1; a=rsa-sha256; c=relaxed/relaxed; d=example.com; s=test; t=1756421164; h=from:subject:date:to:message-id:from:subject:date:to:cc:message-id; bh=2jUSOH9NhtVGCQWNr9BrIAPreKQjO6Sn7XIkfJVOzv8=; b=;" + context.go:17: Resulting hash: "071w3XohJv3fpkObSoZSIVoSNcK+F4bLYxtMDvyHvJ0=" context.go:17: Found DKIM-Signature header: v=1; a=rsa-sha256; c=relaxed/relaxed; - d=example.com; s=test; t=1790831208; + d=example.com; s=test; t=1756421164; h=from:subject:date:to:message-id:from:subject:date:to:cc:message-id; bh=2jUSOH9NhtVGCQWNr9BrIAPreKQjO6Sn7XIkfJVOzv8=; - b=Jv3LxDyjMCKwc48selYr3/4jfV8g5lTPzW1s/DWNnWyeHPmebJL+b+8NtpaLKFfEG/oMgY - bQxruh6j6Kh1IloSB8AAdc1nFyklUNZY8Lq6NTZrtetzDMX1gm0+4qj/I4zM+/LAGbdbgZ - YdfxKAHPcQXvfXEiS/ER+cMlO1/Ziz7rAENWCXHA1DCyIv6erq8znbCUuEXn1AtxC1eJE5 - Rla2iQ0eKsmIH3UZOgb8KiIJeWGWXBG3CIz8ywg4PztCWzFhuFmopbf9Sy4oQ5ixmUd+HR - qWdKJFuyYamLIx4NlEmPh3OfvzKt9QTHYr+6RtBGYKcvouf90i8BLl2voqqnfQ==; - context.go:17: TXT record for "test._domainkey.example.com": "v=DKIM1; p=MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAytGa+1wIYfYELUe8nryBeiaEO8RzAzdr1EsmNZP3ti0pXwHpEW/TEK5ZBo2kdEKvtla/0QoIcI+Kvi0f04E7EJwEFAceYooGnpMGdjC1TDUc17pzXmKk1+NMVIC87Qw6jUIgteuaCvXLSXyBea7j+ffJO2SLeYbrKIW2N8s9YGDb89ri8y50PXCOxVNUeP8ZOQVHZl+iLt3m+kMgMe149mi9csj8xdejDOO0/FJeXlbuB6cC/rkAsImFLztOFZIEUmqsaVFfoz7LfX8TqK2lWceJae/OFeUVLgH20WM1btZJDmpdL72tGSUsKwVELKnX7o9hTWxGZTgCZRp8+u34cQIDAQAB" + b=hIpe/du/y7zc+ZQ1mmLAtYmuPAIgwkMHb0Fq0UKHZBpe/GxLxPkliheedJrFRQII0ohfAF + FSco+5qoQnf7AbxPNi3/FZ2IzrgUgCmY+FbUAqEVouZg2pgje3yePapMDVvjz8yILbKnhW + SltVWOQOgoR7jASY2of+YwE8zXFuG1tJUNVws5uokkp/KmzsxyaNOAu/5zlvPEYkOXsyzY + 4amikmMCzEbAYcl3QnEHepLo4g0wpSQxGETX9S87/wyipx5yM6BdjsghL+88Tdcn26KVDw + J589ySuqyLBZdWpCz4UgsCyF4nQfo2drz9812/I4Q74Kx55lm9M/jO6/P4SxeA==; + context.go:17: TXT record for "test._domainkey.example.com": "v=DKIM1; p=MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA2ikiZ/8HYfCOBEt3LXfCjkUsMbLYwcEhpuFO/Y3X64OQym4i6LhcRUzM514H8cho7XSB7UPrhDZHyLDDAIyK0c89BFj0CYjonPc3DPw122os7V5MfNgBUYEgdYuh78gYyXnrD0Mxx9k5StEC4N356L7aletnycjZ1qJXENztl78s2+XiA0cxXfatmkRzoCZPK3EmPgeETtcjNYC53RlWMK/+6l6H+agkU4p+X/lHJbbRoGldUajYViwSuRqjnUhOUTkTJncfd8QtgcacTr8gjhrUv1yQJU+BZeXY49nakqgyZxh1OfolW0f1p/JMHESrifba0QHks2v3KMfZb6lO0wIDAQAB" 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" @@ -1494,11 +1530,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=1790831208; h=from:subject:date:to:message-id:from:subject:date:to:cc:message-id; bh=2jUSOH9NhtVGCQWNr9BrIAPreKQjO6Sn7XIkfJVOzv8=; b=;" - context.go:17: Resulting hash: "y7vLh9cFEj/soBHaad5VwaOG86r1ohgdHgQGGjh+VSQ=" + context.go:17: Hashing header: "dkim-signature:v=1; a=rsa-sha256; c=relaxed/relaxed; d=example.com; s=test; t=1756421164; h=from:subject:date:to:message-id:from:subject:date:to:cc:message-id; bh=2jUSOH9NhtVGCQWNr9BrIAPreKQjO6Sn7XIkfJVOzv8=; b=;" + context.go:17: Resulting hash: "071w3XohJv3fpkObSoZSIVoSNcK+F4bLYxtMDvyHvJ0=" context.go:17: PK [rsa:30820122300d0609]: Verification succeeded context.go:17: Found 1 signatures, 1 valid ---- PASS: TestSignRSA (0.89s) +--- PASS: TestSignRSA (0.31s) === RUN TestSignEd25519 context.go:17: Signing for example.com / test with ed25519-sha256 context.go:17: Hashing header: "from:Joe SixPack \r\n" @@ -1506,25 +1542,25 @@ 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=1790831208; h=from:subject:date:to:message-id:from:subject:date:to:cc:message-id; bh=2jUSOH9NhtVGCQWNr9BrIAPreKQjO6Sn7XIkfJVOzv8=; b=;" - context.go:17: Resulting hash: "qNq9+vqAXr8DESugNViTpWkgtPhD5P9hwawPyVz3H6Y=" + context.go:17: Hashing header: "dkim-signature:v=1; a=ed25519-sha256; c=relaxed/relaxed; d=example.com; s=test; t=1756421164; h=from:subject:date:to:message-id:from:subject:date:to:cc:message-id; bh=2jUSOH9NhtVGCQWNr9BrIAPreKQjO6Sn7XIkfJVOzv8=; b=;" + context.go:17: Resulting hash: "+49vlMbhzTD6VxKMvw/x5ET/DqH3t65N2IsmaGl3QIk=" context.go:17: Found DKIM-Signature header: v=1; a=ed25519-sha256; c=relaxed/relaxed; - d=example.com; s=test; t=1790831208; + d=example.com; s=test; t=1756421164; h=from:subject:date:to:message-id:from:subject:date:to:cc:message-id; bh=2jUSOH9NhtVGCQWNr9BrIAPreKQjO6Sn7XIkfJVOzv8=; - b=KtIjpa8GSZcLSHiWfHQBtADuUj0fzl4TQ9Dz6HgOqy3QuQASD5rsD1x7ojhbwu7x9JScNj - bZWg2ch9TnJJGBDQ==; - context.go:17: TXT record for "test._domainkey.example.com": "v=DKIM1; k=ed25519; p=NQ+i898HnOhSV7aZvXgpnNnwv3xWhckQzJvbvd8e9kU=" - context.go:17: Parsed public key: [ed25519:350fa2f3df079ce8] + b=y5ZPs5B500n4d2nhRxgqikQdLQZctOKcscLq1oLMYdgC9ikrgl8Vp7hQqpi0XEbrFq+qyJ + NiJfUmGuOUsJMRAQ==; + context.go:17: TXT record for "test._domainkey.example.com": "v=DKIM1; k=ed25519; p=F5zEdgioWSEfwxNQgNjh9r9LbCRYUReZau3avSYgm00=" + context.go:17: Parsed public key: [ed25519:179cc47608a85921] 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=1790831208; h=from:subject:date:to:message-id:from:subject:date:to:cc:message-id; bh=2jUSOH9NhtVGCQWNr9BrIAPreKQjO6Sn7XIkfJVOzv8=; b=;" - context.go:17: Resulting hash: "qNq9+vqAXr8DESugNViTpWkgtPhD5P9hwawPyVz3H6Y=" - context.go:17: PK [ed25519:350fa2f3df079ce8]: Verification succeeded + context.go:17: Hashing header: "dkim-signature:v=1; a=ed25519-sha256; c=relaxed/relaxed; d=example.com; s=test; t=1756421164; h=from:subject:date:to:message-id:from:subject:date:to:cc:message-id; bh=2jUSOH9NhtVGCQWNr9BrIAPreKQjO6Sn7XIkfJVOzv8=; b=;" + context.go:17: Resulting hash: "+49vlMbhzTD6VxKMvw/x5ET/DqH3t65N2IsmaGl3QIk=" + context.go:17: PK [ed25519:179cc47608a85921]: Verification succeeded context.go:17: Found 1 signatures, 1 valid --- PASS: TestSignEd25519 (0.00s) === RUN TestSignBadMessage @@ -1723,9 +1759,9 @@ --- PASS: FuzzParsePublicKey/seed#12 (0.00s) --- PASS: FuzzParsePublicKey/seed#13 (0.00s) PASS -ok blitiri.com.ar/go/chasquid/internal/dkim 0.982s +ok blitiri.com.ar/go/chasquid/internal/dkim 0.342s === RUN TestBasic - testlib.go:32: test directory: "/tmp/testlib_1554864651" + testlib.go:32: test directory: "/tmp/testlib_2515278295" _ 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 @@ -1734,14 +1770,14 @@ _ domaininfo.go:182 DomainInfo.SetToPlain d1: set to plain --- PASS: TestBasic (0.00s) === RUN TestNewDomain - testlib.go:32: test directory: "/tmp/testlib_4207989121" + testlib.go:32: test directory: "/tmp/testlib_3824742370" _ 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_4247687988" + testlib.go:32: test directory: "/tmp/testlib_2633732184" _ 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 @@ -1754,29 +1790,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_365646906" + testlib.go:32: test directory: "/tmp/testlib_674436446" _ domaininfo.go:117 DomainInfo.Incoming d1: d1 incoming level raised: TLS_SECURE > PLAIN _ domaininfo.go:67 DomainInfo.Reload reload: error: id \"d1\": proto:\u00a0syntax error (line 1:1): invalid field name: invalid-text-protobuf-contents _ domaininfo.go:67 DomainInfo.Reload reload: error: id \"d1\": proto:\u00a0syntax error (line 1:1): invalid field name: invalid-text-protobuf-contents --- PASS: TestErrors (0.00s) === RUN TestDirectoryErrors - testlib.go:32: test directory: "/tmp/testlib_3932199984" -_ domaininfo.go:59 DomainInfo.Reload reload: error: open /tmp/testlib_3932199984/db: no such file or directory -_ domaininfo.go:84 DomainInfo.write d1: error: open /tmp/testlib_3932199984/db/.s:d12415473865: no such file or directory + testlib.go:32: test directory: "/tmp/testlib_1081312621" +_ domaininfo.go:59 DomainInfo.Reload reload: error: open /tmp/testlib_1081312621/db: no such file or directory +_ domaininfo.go:84 DomainInfo.write d1: error: open /tmp/testlib_1081312621/db/.s:d13271488473: no such file or directory --- PASS: TestDirectoryErrors (0.00s) PASS -ok blitiri.com.ar/go/chasquid/internal/domaininfo 0.036s +ok blitiri.com.ar/go/chasquid/internal/domaininfo 0.014s === RUN TestUsernameNotSafe --- PASS: TestUsernameNotSafe (0.00s) === RUN TestAutodetect - testlib.go:32: test directory: "/tmp/testlib_3391272438" ---- PASS: TestAutodetect (0.01s) + testlib.go:32: test directory: "/tmp/testlib_4152157844" +--- PASS: TestAutodetect (0.00s) === RUN TestReload --- PASS: TestReload (0.00s) PASS -ok blitiri.com.ar/go/chasquid/internal/dovecot 0.025s +ok blitiri.com.ar/go/chasquid/internal/dovecot 0.006s === RUN TestSplit --- PASS: TestSplit (0.00s) === RUN TestDomainIn @@ -1784,13 +1820,13 @@ === RUN TestAddHeader --- PASS: TestAddHeader (0.00s) PASS -ok blitiri.com.ar/go/chasquid/internal/envelope 0.012s +ok blitiri.com.ar/go/chasquid/internal/envelope 0.004s === RUN TestHandler --- PASS: TestHandler (0.00s) === RUN TestMapLabelAccident --- PASS: TestMapLabelAccident (0.00s) PASS -ok blitiri.com.ar/go/chasquid/internal/expvarom 0.021s +ok blitiri.com.ar/go/chasquid/internal/expvarom 0.007s === RUN TestNoNewline --- PASS: TestNoNewline (0.00s) === RUN TestBasic @@ -1815,21 +1851,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.017s +ok blitiri.com.ar/go/chasquid/internal/haproxy 0.004s === RUN TestBadServer - asm_amd64.s:1700: FakeServer &{{0xc000182080}}: accepted - asm_amd64.s:1700: FakeServer &{{0xc000182080}}: readRequest: "" "" / EOF - asm_amd64.s:1700: FakeServer &{{0xc000182080}}: writeMessage("xxx"): 0 write unix /tmp/rpc-test-2452369764/rpc.sock->@: write: broken pipe - asm_amd64.s:1700: FakeServer &{{0xc000182080}}: closing - asm_amd64.s:1700: FakeServer &{{0xc000182200}}: accepted - asm_amd64.s:1700: FakeServer &{{0xc000182200}}: readRequest: "Echo" "" / - asm_amd64.s:1700: FakeServer &{{0xc000182200}}: writeMessage("xxx"): 3 - asm_amd64.s:1700: FakeServer &{{0xc000182200}}: closing + asm_amd64.s:1700: FakeServer &{{0xc000280080}}: accepted + asm_amd64.s:1700: FakeServer &{{0xc000280080}}: readRequest: "" "" / EOF + asm_amd64.s:1700: FakeServer &{{0xc000280080}}: writeMessage("xxx"): 0 write unix /tmp/rpc-test-552135509/rpc.sock->@: write: broken pipe + asm_amd64.s:1700: FakeServer &{{0xc000280080}}: closing + asm_amd64.s:1700: FakeServer &{{0xc000280200}}: accepted + asm_amd64.s:1700: FakeServer &{{0xc000280200}}: readRequest: "Echo" "" / + asm_amd64.s:1700: FakeServer &{{0xc000280200}}: writeMessage("xxx"): 3 + asm_amd64.s:1700: FakeServer &{{0xc000280200}}: closing --- PASS: TestBadServer (0.01s) === RUN TestBadSocket --- PASS: TestBadSocket (0.00s) === RUN TestEndToEnd -_ localrpc.go:63 LocalRPC.Server /tmp/rpc-test-528885552/sock: Listening +_ localrpc.go:63 LocalRPC.Server /tmp/rpc-test-812934221/sock: Listening === RUN TestEndToEnd/Echo === RUN TestEndToEnd/Echo#01 === RUN TestEndToEnd/Hola @@ -1837,7 +1873,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-528885552/sock: error: Accept error: accept unix /tmp/rpc-test-528885552/sock: use of closed network connection +_ localrpc.go:67 LocalRPC.Server /tmp/rpc-test-812934221/sock: error: Accept error: accept unix /tmp/rpc-test-812934221/sock: use of closed network connection --- PASS: TestEndToEnd (0.01s) --- PASS: TestEndToEnd/Echo (0.00s) --- PASS: TestEndToEnd/Echo#01 (0.00s) @@ -1852,7 +1888,7 @@ === RUN TestShortReadRequest --- PASS: TestShortReadRequest (0.00s) PASS -ok blitiri.com.ar/go/chasquid/internal/localrpc 0.046s +ok blitiri.com.ar/go/chasquid/internal/localrpc 0.031s === RUN TestLogger --- PASS: TestLogger (0.00s) === RUN TestDefault @@ -1860,7 +1896,7 @@ === RUN TestFailedLogger --- PASS: TestFailedLogger (0.00s) PASS -ok blitiri.com.ar/go/chasquid/internal/maillog 0.021s +ok blitiri.com.ar/go/chasquid/internal/maillog 0.011s === RUN TestContext --- PASS: TestContext (0.00s) === RUN TestHistogramBasic @@ -1868,15 +1904,15 @@ === RUN TestHistogramEmpty --- PASS: TestHistogramEmpty (0.00s) === RUN TestHTTP ---- PASS: TestHTTP (0.02s) +--- PASS: TestHTTP (0.01s) === RUN TestHTTPLong ---- PASS: TestHTTPLong (0.01s) +--- PASS: TestHTTPLong (0.00s) === RUN TestHTTPErrors ---- PASS: TestHTTPErrors (0.03s) +--- PASS: TestHTTPErrors (0.01s) === RUN TestHTTPUroboro ---- PASS: TestHTTPUroboro (0.01s) +--- PASS: TestHTTPUroboro (0.00s) === RUN TestHTTPDeep ---- PASS: TestHTTPDeep (0.01s) +--- PASS: TestHTTPDeep (0.00s) === RUN TestStripZeros --- PASS: TestStripZeros (0.00s) === RUN TestRegisterHandler @@ -1896,7 +1932,7 @@ === RUN TestFindParent --- PASS: TestFindParent (0.00s) PASS -ok blitiri.com.ar/go/chasquid/internal/nettrace 0.093s +ok blitiri.com.ar/go/chasquid/internal/nettrace 0.032s === RUN TestUser --- PASS: TestUser (0.00s) === RUN TestDomain @@ -1956,41 +1992,41 @@ --- PASS: FuzzDomainToUnicode/d8637022b61fb5c4df4e153063564accd6331debaafdd594405c320a5e9f2e70 (0.00s) --- PASS: FuzzDomainToUnicode/dc0204d8e2ab058a763873d2a5fede806e95235771ecdd96b56c906886822c19 (0.00s) PASS -ok blitiri.com.ar/go/chasquid/internal/normalize 0.027s +ok blitiri.com.ar/go/chasquid/internal/normalize 0.006s === RUN TestBin - testlib.go:32: test directory: "/tmp/testlib_316149438" + testlib.go:32: test directory: "/tmp/testlib_3722924979" --- PASS: TestBin (0.00s) === RUN TestText - testlib.go:32: test directory: "/tmp/testlib_3818554434" ---- PASS: TestText (0.01s) + testlib.go:32: test directory: "/tmp/testlib_1097511491" +--- PASS: TestText (0.00s) === RUN TestStore - testlib.go:32: test directory: "/tmp/testlib_2656744006" + testlib.go:32: test directory: "/tmp/testlib_3646020381" --- PASS: TestStore (0.00s) === RUN TestFileErrors - testlib.go:32: test directory: "/tmp/testlib_679748233" + testlib.go:32: test directory: "/tmp/testlib_2274384500" --- PASS: TestFileErrors (0.00s) === RUN TestMarshalErrors - testlib.go:32: test directory: "/tmp/testlib_2536797230" + testlib.go:32: test directory: "/tmp/testlib_506222930" --- PASS: TestMarshalErrors (0.00s) PASS -ok blitiri.com.ar/go/chasquid/internal/protoio 0.030s +ok blitiri.com.ar/go/chasquid/internal/protoio 0.007s ? 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, 01 Oct 2026 05:06:48 +0000 + Message-ID: + Date: Thu, 28 Aug 2025 22:46:04 +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="Rga5rR9mcz0" + boundary="tXOE7yP1_yU" - --Rga5rR9mcz0 + --tXOE7yP1_yU Content-Type: text/plain; charset="utf-8" Content-Disposition: inline Content-Description: Notification @@ -2015,7 +2051,7 @@ oh! the humanity! - --Rga5rR9mcz0 + --tXOE7yP1_yU Content-Type: message/global-delivery-status Content-Description: Delivery Report Content-Transfer-Encoding: 8bit @@ -2046,7 +2082,7 @@ - --Rga5rR9mcz0 + --tXOE7yP1_yU Content-Type: message/rfc822 Content-Description: Undelivered Message Content-Transfer-Encoding: 8bit @@ -2056,79 +2092,78 @@ Data ñaca. - --Rga5rR9mcz0-- + --tXOE7yP1_yU-- --- PASS: TestDSN (0.00s) === RUN TestBasic - testlib.go:32: test directory: "/tmp/testlib_1915234086" -_ queue.go:308 Queue.SendLoop NZEzrHKCY0Q: from from -_ queue.go:367 Queue.SendLoop NZEzrHKCY0Q: nodomain sent -_ queue.go:367 Queue.SendLoop NZEzrHKCY0Q: am@loco sent -_ queue.go:367 Queue.SendLoop NZEzrHKCY0Q: x@remote sent -_ queue.go:342 Queue.SendLoop NZEzrHKCY0Q: all done + testlib.go:32: test directory: "/tmp/testlib_2453618442" +_ queue.go:308 Queue.SendLoop 2Znl8_-N-Zc: from from +_ queue.go:367 Queue.SendLoop 2Znl8_-N-Zc: am@loco sent +_ queue.go:367 Queue.SendLoop 2Znl8_-N-Zc: nodomain sent +_ queue.go:367 Queue.SendLoop 2Znl8_-N-Zc: x@remote sent +_ queue.go:342 Queue.SendLoop 2Znl8_-N-Zc: all done --- PASS: TestBasic (0.02s) === RUN TestDSNOnTimeout - testlib.go:32: test directory: "/tmp/testlib_452953957" -_ queue.go:308 Queue.SendLoop 0qHyiDhY7UU: from from@loco -_ queue.go:467 Queue.SendLoop 0qHyiDhY7UU: queued DSN: Ks8nlPVFZRY -_ queue.go:342 Queue.SendLoop 0qHyiDhY7UU: all done -_ queue.go:308 Queue.SendLoop Ks8nlPVFZRY: from <> -_ queue.go:367 Queue.SendLoop Ks8nlPVFZRY: from@loco sent + testlib.go:32: test directory: "/tmp/testlib_4232080335" +_ queue.go:308 Queue.SendLoop gfpxLlY1m2U: from from@loco +_ queue.go:467 Queue.SendLoop gfpxLlY1m2U: queued DSN: wMe6ggA8qUk +_ queue.go:342 Queue.SendLoop gfpxLlY1m2U: all done +_ queue.go:308 Queue.SendLoop wMe6ggA8qUk: from <> +_ queue.go:367 Queue.SendLoop wMe6ggA8qUk: from@loco sent +_ queue.go:375 Queue.SendLoop wMe6ggA8qUk: error: failed to write: rename /tmp/testlib_4232080335/.m:wMe6ggA8qUk1972725275 /tmp/testlib_4232080335/m:wMe6ggA8qUk: no such file or directory --- PASS: TestDSNOnTimeout (0.00s) -_ queue.go:375 Queue.SendLoop Ks8nlPVFZRY: error: failed to write: rename /tmp/testlib_452953957/.m:Ks8nlPVFZRY829291247 /tmp/testlib_452953957/m:Ks8nlPVFZRY: no such file or directory +_ queue.go:342 Queue.SendLoop wMe6ggA8qUk: all done === RUN TestAliases -_ queue.go:342 Queue.SendLoop Ks8nlPVFZRY: all done -E queue.go:230 failed to remove queue file "/tmp/testlib_452953957/m:Ks8nlPVFZRY": remove /tmp/testlib_452953957/m:Ks8nlPVFZRY: no such file or directory - testlib.go:32: test directory: "/tmp/testlib_759768368" -_ queue.go:308 Queue.SendLoop vXO37ITU3Ps: from from -_ queue.go:367 Queue.SendLoop vXO37ITU3Ps: ata@hualpa sent -_ queue.go:367 Queue.SendLoop vXO37ITU3Ps: pq@loco sent -_ queue.go:367 Queue.SendLoop vXO37ITU3Ps: rs@loco sent -_ queue.go:342 Queue.SendLoop vXO37ITU3Ps: all done +E queue.go:230 failed to remove queue file "/tmp/testlib_4232080335/m:wMe6ggA8qUk": remove /tmp/testlib_4232080335/m:wMe6ggA8qUk: no such file or directory + testlib.go:32: test directory: "/tmp/testlib_1434131607" +_ queue.go:308 Queue.SendLoop GHPg40zckUs: from from +_ queue.go:367 Queue.SendLoop GHPg40zckUs: pq@loco sent +_ queue.go:367 Queue.SendLoop GHPg40zckUs: rs@loco sent --- PASS: TestAliases (0.00s) === RUN TestFullQueue - testlib.go:32: test directory: "/tmp/testlib_3446740125" + testlib.go:32: test directory: "/tmp/testlib_312270416" +_ queue.go:367 Queue.SendLoop GHPg40zckUs: ata@hualpa sent _ queue.go:164 Queue.Put from: error: queue full +_ queue.go:342 Queue.SendLoop GHPg40zckUs: all done --- PASS: TestFullQueue (0.00s) +_ queue.go:308 Queue.SendLoop ABMXKyrcGjY: from from +_ queue.go:367 Queue.SendLoop ABMXKyrcGjY: to sent === RUN TestPipes - testlib.go:32: test directory: "/tmp/testlib_2270979657" -_ queue.go:308 Queue.SendLoop wJq1Jg4vlh8: from from -_ queue.go:367 Queue.SendLoop wJq1Jg4vlh8: to sent -_ queue.go:375 Queue.SendLoop wJq1Jg4vlh8: error: failed to write: open /tmp/testlib_3446740125/.m:wJq1Jg4vlh8639331383: no such file or directory -_ queue.go:342 Queue.SendLoop wJq1Jg4vlh8: all done -E queue.go:230 failed to remove queue file "/tmp/testlib_3446740125/m:wJq1Jg4vlh8": remove /tmp/testlib_3446740125/m:wJq1Jg4vlh8: no such file or directory ---- PASS: TestPipes (0.01s) +_ queue.go:375 Queue.SendLoop ABMXKyrcGjY: error: failed to write: open /tmp/testlib_312270416/.m:ABMXKyrcGjY203608748: no such file or directory +_ queue.go:342 Queue.SendLoop ABMXKyrcGjY: all done +E queue.go:230 failed to remove queue file "/tmp/testlib_312270416/m:ABMXKyrcGjY": remove /tmp/testlib_312270416/m:ABMXKyrcGjY: no such file or directory + testlib.go:32: test directory: "/tmp/testlib_257530419" +--- PASS: TestPipes (0.00s) === RUN TestBadPath --- PASS: TestBadPath (0.00s) === RUN TestNextDelay --- PASS: TestNextDelay (0.00s) === RUN TestSerialization - testlib.go:32: test directory: "/tmp/testlib_1175824639" -_ queue.go:308 Queue.SendLoop PykKyz94Rwg: from from@loco -_ queue.go:367 Queue.SendLoop PykKyz94Rwg: to@to sent -_ queue.go:342 Queue.SendLoop PykKyz94Rwg: all done -E queue.go:230 failed to remove queue file "/tmp/testlib_1175824639/m:PykKyz94Rwg": remove /tmp/testlib_1175824639/m:PykKyz94Rwg: no such file or directory + testlib.go:32: test directory: "/tmp/testlib_3713410150" +_ queue.go:308 Queue.SendLoop -kJ0Qcttf28: from from@loco +_ queue.go:367 Queue.SendLoop -kJ0Qcttf28: to@to sent +_ queue.go:342 Queue.SendLoop -kJ0Qcttf28: all done --- PASS: TestSerialization (0.00s) PASS -ok blitiri.com.ar/go/chasquid/internal/queue 0.058s +ok blitiri.com.ar/go/chasquid/internal/queue 0.034s === RUN TestWriteFile - testlib.go:32: test directory: "/tmp/testlib_1351826257" + testlib.go:32: test directory: "/tmp/testlib_3377808140" --- PASS: TestWriteFile (0.00s) === RUN TestWriteFileWithOp - testlib.go:32: test directory: "/tmp/testlib_2019997021" + testlib.go:32: test directory: "/tmp/testlib_158118053" --- PASS: TestWriteFileWithOp (0.00s) === RUN TestWriteFileWithFailingOp - testlib.go:32: test directory: "/tmp/testlib_4153321127" + testlib.go:32: test directory: "/tmp/testlib_2656545501" --- PASS: TestWriteFileWithFailingOp (0.00s) === RUN TestErrors - testlib.go:32: test directory: "/tmp/testlib_3643997939" + testlib.go:32: test directory: "/tmp/testlib_600847933" --- PASS: TestErrors (0.00s) PASS -ok blitiri.com.ar/go/chasquid/internal/safeio 0.020s +ok blitiri.com.ar/go/chasquid/internal/safeio 0.007s === RUN TestString --- PASS: TestString (0.00s) PASS -ok blitiri.com.ar/go/chasquid/internal/set 0.019s +ok blitiri.com.ar/go/chasquid/internal/set 0.003s === RUN TestIsPermanent --- PASS: TestIsPermanent (0.00s) === RUN TestIsASCII @@ -2142,23 +2177,21 @@ === RUN TestFallbackToIDNA --- PASS: TestFallbackToIDNA (0.00s) === RUN TestLineTooLong ---- PASS: TestLineTooLong (0.05s) +--- PASS: TestLineTooLong (0.01s) PASS -ok blitiri.com.ar/go/chasquid/internal/smtp 0.086s -_ server.go:300 Server listening on 127.0.0.1:37573 (submission+TLS) -2026-10-01 05:06:50.498260 daemon listening on 127.0.0.1:37573 -_ server.go:300 Server listening on 127.0.0.1:38383 (SMTP) -2026-10-01 05:06:50.498469 daemon listening on 127.0.0.1:38383 -_ server.go:300 Server listening on 127.0.0.1:33131 (submission) -2026-10-01 05:06:50.498523 daemon listening on 127.0.0.1:33131 -_ conn.go:348 SMTP.Conn 127.0.0.1:54384: error: exiting with error: read tcp 127.0.0.1:38383->127.0.0.1:54384: read: connection reset by peer -_ conn.go:348 SMTP.Conn 127.0.0.1:58950: error: exiting with error: read tcp 127.0.0.1:33131->127.0.0.1:58950: read: connection reset by peer -_ conn.go:209 SMTP.Conn 127.0.0.1:54602: error: error completing TLS handshake: EOF +ok blitiri.com.ar/go/chasquid/internal/smtp 0.019s +_ server.go:300 Server listening on 127.0.0.1:44953 (SMTP) +2025-08-28 22:46:04.793751 daemon listening on 127.0.0.1:44953 +_ server.go:300 Server listening on 127.0.0.1:33007 (submission) +2025-08-28 22:46:04.793927 daemon listening on 127.0.0.1:33007 +_ server.go:300 Server listening on 127.0.0.1:44357 (submission+TLS) +2025-08-28 22:46:04.793982 daemon listening on 127.0.0.1:44357 +_ conn.go:209 SMTP.Conn 127.0.0.1:45872: error: error completing TLS handshake: EOF === RUN TestSecLevel _ 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) ---- PASS: TestSecLevel (0.21s) +--- PASS: TestSecLevel (0.00s) === RUN TestIsHeader --- PASS: TestIsHeader (0.00s) === RUN TestAddrLiteral @@ -2170,180 +2203,184 @@ === RUN TestReadUntilDotReadError --- PASS: TestReadUntilDotReadError (0.00s) === RUN TestSimple -_ conn.go:722 SMTP.Conn 127.0.0.1:41722: Queued from from@from to [to@localhost] - r5N5wf4jM2s -2026-10-01 05:06:50.731201 r5N5wf4jM2s from=from@from queued ip=127.0.0.1:41722 to=[to@localhost] -_ queue.go:308 Queue.SendLoop r5N5wf4jM2s: from from@from -_ queue.go:367 Queue.SendLoop r5N5wf4jM2s: testuser@localhost sent -2026-10-01 05:06:50.731348 r5N5wf4jM2s from=from@from to=testuser@localhost sent -_ queue.go:342 Queue.SendLoop r5N5wf4jM2s: all done -2026-10-01 05:06:50.731721 r5N5wf4jM2s from=from@from all done +_ conn.go:722 SMTP.Conn 127.0.0.1:45810: Queued from from@from to [to@localhost] - eFdEtxVxYho +2025-08-28 22:46:04.897825 eFdEtxVxYho from=from@from queued ip=127.0.0.1:45810 to=[to@localhost] +_ queue.go:308 Queue.SendLoop eFdEtxVxYho: from from@from +_ queue.go:367 Queue.SendLoop eFdEtxVxYho: testuser@localhost sent +2025-08-28 22:46:04.898014 eFdEtxVxYho from=from@from to=testuser@localhost sent --- PASS: TestSimple (0.00s) === RUN TestSimpleTLS -_ conn.go:722 SMTP.Conn 127.0.0.1:41736: Queued from from@from to [to@localhost] - 58rGPmtYi7s -2026-10-01 05:06:50.735564 58rGPmtYi7s from=from@from queued ip=127.0.0.1:41736 to=[to@localhost] -_ queue.go:308 Queue.SendLoop 58rGPmtYi7s: from from@from -_ queue.go:367 Queue.SendLoop 58rGPmtYi7s: testuser@localhost sent -2026-10-01 05:06:50.735735 58rGPmtYi7s from=from@from to=testuser@localhost sent +_ queue.go:342 Queue.SendLoop eFdEtxVxYho: all done +2025-08-28 22:46:04.898283 eFdEtxVxYho from=from@from all done +_ conn.go:722 SMTP.Conn 127.0.0.1:45812: Queued from from@from to [to@localhost] - oQcZmCeHFnw +2025-08-28 22:46:04.900514 oQcZmCeHFnw from=from@from queued ip=127.0.0.1:45812 to=[to@localhost] +_ queue.go:308 Queue.SendLoop oQcZmCeHFnw: from from@from +_ queue.go:367 Queue.SendLoop oQcZmCeHFnw: testuser@localhost sent +2025-08-28 22:46:04.900637 oQcZmCeHFnw from=from@from to=testuser@localhost sent --- PASS: TestSimpleTLS (0.00s) === RUN TestManyEmails -_ queue.go:342 Queue.SendLoop 58rGPmtYi7s: all done -2026-10-01 05:06:50.741828 58rGPmtYi7s from=from@from all done -_ conn.go:722 SMTP.Conn 127.0.0.1:41746: Queued from from@from to [to@localhost] - DzjWsJ4PDW4 -2026-10-01 05:06:50.744580 DzjWsJ4PDW4 from=from@from queued ip=127.0.0.1:41746 to=[to@localhost] -_ queue.go:308 Queue.SendLoop DzjWsJ4PDW4: from from@from -_ queue.go:367 Queue.SendLoop DzjWsJ4PDW4: testuser@localhost sent -2026-10-01 05:06:50.744722 DzjWsJ4PDW4 from=from@from to=testuser@localhost sent -_ queue.go:342 Queue.SendLoop DzjWsJ4PDW4: all done -2026-10-01 05:06:50.745039 DzjWsJ4PDW4 from=from@from all done -_ conn.go:722 SMTP.Conn 127.0.0.1:41746: Queued from from@from to [to@localhost] - Bl3bRB9C_N0 -2026-10-01 05:06:50.745904 Bl3bRB9C_N0 from=from@from queued ip=127.0.0.1:41746 to=[to@localhost] -_ queue.go:308 Queue.SendLoop Bl3bRB9C_N0: from from@from -_ queue.go:367 Queue.SendLoop Bl3bRB9C_N0: testuser@localhost sent -2026-10-01 05:06:50.746022 Bl3bRB9C_N0 from=from@from to=testuser@localhost sent -_ queue.go:342 Queue.SendLoop Bl3bRB9C_N0: all done -2026-10-01 05:06:50.746296 Bl3bRB9C_N0 from=from@from all done -_ conn.go:722 SMTP.Conn 127.0.0.1:41746: Queued from from@from to [to@localhost] - tRTwcX-EF2A -2026-10-01 05:06:50.747291 tRTwcX-EF2A from=from@from queued ip=127.0.0.1:41746 to=[to@localhost] -_ queue.go:308 Queue.SendLoop tRTwcX-EF2A: from from@from -_ queue.go:367 Queue.SendLoop tRTwcX-EF2A: testuser@localhost sent -2026-10-01 05:06:50.747439 tRTwcX-EF2A from=from@from to=testuser@localhost sent -_ queue.go:342 Queue.SendLoop tRTwcX-EF2A: all done -2026-10-01 05:06:50.747843 tRTwcX-EF2A from=from@from all done ---- PASS: TestManyEmails (0.01s) +_ queue.go:342 Queue.SendLoop oQcZmCeHFnw: all done +2025-08-28 22:46:04.900841 oQcZmCeHFnw from=from@from all done +_ conn.go:722 SMTP.Conn 127.0.0.1:45820: Queued from from@from to [to@localhost] - QHbyo9sKrIQ +2025-08-28 22:46:04.903008 QHbyo9sKrIQ from=from@from queued ip=127.0.0.1:45820 to=[to@localhost] +_ queue.go:308 Queue.SendLoop QHbyo9sKrIQ: from from@from +_ queue.go:367 Queue.SendLoop QHbyo9sKrIQ: testuser@localhost sent +2025-08-28 22:46:04.903148 QHbyo9sKrIQ from=from@from to=testuser@localhost sent +_ queue.go:342 Queue.SendLoop QHbyo9sKrIQ: all done +2025-08-28 22:46:04.903400 QHbyo9sKrIQ from=from@from all done +_ conn.go:722 SMTP.Conn 127.0.0.1:45820: Queued from from@from to [to@localhost] - Q7dWu8jJWwI +2025-08-28 22:46:04.903852 Q7dWu8jJWwI from=from@from queued ip=127.0.0.1:45820 to=[to@localhost] +_ queue.go:308 Queue.SendLoop Q7dWu8jJWwI: from from@from +_ queue.go:367 Queue.SendLoop Q7dWu8jJWwI: testuser@localhost sent +2025-08-28 22:46:04.903990 Q7dWu8jJWwI from=from@from to=testuser@localhost sent +_ queue.go:342 Queue.SendLoop Q7dWu8jJWwI: all done +2025-08-28 22:46:04.904242 Q7dWu8jJWwI from=from@from all done +_ conn.go:722 SMTP.Conn 127.0.0.1:45820: Queued from from@from to [to@localhost] - OxYu__oxnno +2025-08-28 22:46:04.904846 OxYu__oxnno from=from@from queued ip=127.0.0.1:45820 to=[to@localhost] +_ queue.go:308 Queue.SendLoop OxYu__oxnno: from from@from +_ queue.go:367 Queue.SendLoop OxYu__oxnno: testuser@localhost sent +2025-08-28 22:46:04.904948 OxYu__oxnno from=from@from to=testuser@localhost sent +--- PASS: TestManyEmails (0.00s) +_ queue.go:342 Queue.SendLoop OxYu__oxnno: all done +2025-08-28 22:46:04.905118 OxYu__oxnno from=from@from all done === RUN TestAuth -2026-10-01 05:06:50.924977 127.0.0.1:39712 auth succeeded for testuser@localhost -_ queue.go:308 Queue.SendLoop UjUW4uIhq5k: from testuser@localhost -_ queue.go:367 Queue.SendLoop UjUW4uIhq5k: testuser@localhost sent -2026-10-01 05:06:50.965138 UjUW4uIhq5k from=testuser@localhost to=testuser@localhost sent -_ queue.go:342 Queue.SendLoop UjUW4uIhq5k: all done -2026-10-01 05:06:50.965599 UjUW4uIhq5k from=testuser@localhost all done -_ conn.go:722 SMTP.Conn 127.0.0.1:39712: Queued from testuser@localhost to [to@localhost] - UjUW4uIhq5k -2026-10-01 05:06:50.969759 UjUW4uIhq5k from=testuser@localhost queued ip=127.0.0.1:39712 to=[to@localhost] ---- PASS: TestAuth (0.22s) +2025-08-28 22:46:05.008689 127.0.0.1:45180 auth succeeded for testuser@localhost +_ conn.go:722 SMTP.Conn 127.0.0.1:45180: Queued from testuser@localhost to [to@localhost] - VvdZk0t8iBA +2025-08-28 22:46:05.009491 VvdZk0t8iBA from=testuser@localhost queued ip=127.0.0.1:45180 to=[to@localhost] +_ queue.go:308 Queue.SendLoop VvdZk0t8iBA: from testuser@localhost +_ queue.go:367 Queue.SendLoop VvdZk0t8iBA: testuser@localhost sent +2025-08-28 22:46:05.009701 VvdZk0t8iBA from=testuser@localhost to=testuser@localhost sent +--- PASS: TestAuth (0.10s) === RUN TestSubmissionWithoutAuth -_ conn.go:318 SMTP.Conn 127.0.0.1:39724: error: MAIL failed: 550 5.7.9 Mail to submission port must be authenticated +_ queue.go:342 Queue.SendLoop VvdZk0t8iBA: all done +2025-08-28 22:46:05.010090 VvdZk0t8iBA from=testuser@localhost all done +_ conn.go:318 SMTP.Conn 127.0.0.1:45186: error: MAIL failed: 550 5.7.9 Mail to submission port must be authenticated --- PASS: TestSubmissionWithoutAuth (0.00s) === RUN TestAuthOnTLS -2026-10-01 05:06:51.139296 127.0.0.1:37880 auth succeeded for testuser@localhost -_ conn.go:722 SMTP.Conn 127.0.0.1:37880: Queued from testuser@localhost to [to@localhost] - OvY3_j73P6s -_ queue.go:308 Queue.SendLoop OvY3_j73P6s: from testuser@localhost -2026-10-01 05:06:51.150089 OvY3_j73P6s from=testuser@localhost queued ip=127.0.0.1:37880 to=[to@localhost] -_ queue.go:367 Queue.SendLoop OvY3_j73P6s: testuser@localhost sent -2026-10-01 05:06:51.150463 OvY3_j73P6s from=testuser@localhost to=testuser@localhost sent -_ queue.go:342 Queue.SendLoop OvY3_j73P6s: all done -2026-10-01 05:06:51.150907 OvY3_j73P6s from=testuser@localhost all done ---- PASS: TestAuthOnTLS (0.18s) +2025-08-28 22:46:05.118591 127.0.0.1:45882 auth succeeded for testuser@localhost +_ conn.go:722 SMTP.Conn 127.0.0.1:45882: Queued from testuser@localhost to [to@localhost] - 6lL34XRQNa8 +2025-08-28 22:46:05.119290 6lL34XRQNa8 from=testuser@localhost queued ip=127.0.0.1:45882 to=[to@localhost] +_ queue.go:308 Queue.SendLoop 6lL34XRQNa8: from testuser@localhost +_ queue.go:367 Queue.SendLoop 6lL34XRQNa8: testuser@localhost sent +2025-08-28 22:46:05.119428 6lL34XRQNa8 from=testuser@localhost to=testuser@localhost sent +--- PASS: TestAuthOnTLS (0.11s) === RUN TestAuthOnSMTP -2026-10-01 05:06:51.319854 127.0.0.1:41752 auth succeeded for testuser@localhost -_ queue.go:308 Queue.SendLoop LhJvKCOT22I: from testuser@localhost -_ queue.go:367 Queue.SendLoop LhJvKCOT22I: testuser@localhost sent -2026-10-01 05:06:51.458109 LhJvKCOT22I from=testuser@localhost to=testuser@localhost sent -_ queue.go:342 Queue.SendLoop LhJvKCOT22I: all done -2026-10-01 05:06:51.458560 LhJvKCOT22I from=testuser@localhost all done -_ conn.go:722 SMTP.Conn 127.0.0.1:41752: Queued from testuser@localhost to [to@localhost] - LhJvKCOT22I -2026-10-01 05:06:51.458647 LhJvKCOT22I from=testuser@localhost queued ip=127.0.0.1:41752 to=[to@localhost] ---- PASS: TestAuthOnSMTP (0.31s) +_ queue.go:342 Queue.SendLoop 6lL34XRQNa8: all done +2025-08-28 22:46:05.119656 6lL34XRQNa8 from=testuser@localhost all done +2025-08-28 22:46:05.229151 127.0.0.1:45826 auth succeeded for testuser@localhost +_ conn.go:722 SMTP.Conn 127.0.0.1:45826: Queued from testuser@localhost to [to@localhost] - Me1jPfdoiXA +2025-08-28 22:46:05.230113 Me1jPfdoiXA from=testuser@localhost queued ip=127.0.0.1:45826 to=[to@localhost] +_ queue.go:308 Queue.SendLoop Me1jPfdoiXA: from testuser@localhost +_ queue.go:367 Queue.SendLoop Me1jPfdoiXA: testuser@localhost sent +2025-08-28 22:46:05.230253 Me1jPfdoiXA from=testuser@localhost to=testuser@localhost sent +--- PASS: TestAuthOnSMTP (0.11s) === RUN TestBrokenAuth -_ conn.go:1193 SMTP.Conn 127.0.0.1:39736: error: error authenticating \"user\"@\"broken\": failed to auth -2026-10-01 05:06:51.569792 127.0.0.1:39736 auth failed for user@broken -_ conn.go:318 SMTP.Conn 127.0.0.1:39736: error: AUTH failed: 454 4.7.0 Temporary authentication failure -_ conn.go:318 SMTP.Conn 127.0.0.1:39736: error: unknown<\"*\"> failed: 500 5.5.1 Unknown command ---- PASS: TestBrokenAuth (0.11s) +_ queue.go:342 Queue.SendLoop Me1jPfdoiXA: all done +2025-08-28 22:46:05.230558 Me1jPfdoiXA from=testuser@localhost all done +_ conn.go:1193 SMTP.Conn 127.0.0.1:45192: error: error authenticating \"user\"@\"broken\": failed to auth +2025-08-28 22:46:05.333166 127.0.0.1:45192 auth failed for user@broken +_ conn.go:318 SMTP.Conn 127.0.0.1:45192: error: AUTH failed: 454 4.7.0 Temporary authentication failure +_ conn.go:318 SMTP.Conn 127.0.0.1:45192: error: unknown<\"*\"> failed: 500 5.5.1 Unknown command +--- PASS: TestBrokenAuth (0.10s) === RUN TestWrongMailParsing -_ conn.go:318 SMTP.Conn 127.0.0.1:41760: error: MAIL failed: 501 5.1.7 Sender address malformed -_ conn.go:318 SMTP.Conn 127.0.0.1:41760: error: RCPT failed: 501 5.1.3 Malformed destination address -_ conn.go:318 SMTP.Conn 127.0.0.1:41760: error: RCPT failed: 501 5.1.3 Malformed destination address -_ conn.go:325 SMTP.Conn 127.0.0.1:41760: error: too many errors, breaking connection -_ conn.go:318 SMTP.Conn 127.0.0.1:41766: error: MAIL failed: 501 5.1.7 Sender address malformed -_ conn.go:318 SMTP.Conn 127.0.0.1:41766: error: RCPT failed: 501 5.1.3 Malformed destination address -_ conn.go:318 SMTP.Conn 127.0.0.1:41766: error: RCPT failed: 501 5.1.3 Malformed destination address -_ conn.go:325 SMTP.Conn 127.0.0.1:41766: error: too many errors, breaking connection -_ conn.go:318 SMTP.Conn 127.0.0.1:41782: error: MAIL failed: 501 5.1.7 Sender address malformed -_ conn.go:318 SMTP.Conn 127.0.0.1:41782: error: RCPT failed: 501 5.1.3 Malformed destination address -_ conn.go:318 SMTP.Conn 127.0.0.1:41782: error: RCPT failed: 501 5.1.3 Malformed destination address -_ conn.go:325 SMTP.Conn 127.0.0.1:41782: error: too many errors, breaking connection -_ conn.go:318 SMTP.Conn 127.0.0.1:41794: error: MAIL failed: 501 5.1.7 Sender address malformed -_ conn.go:318 SMTP.Conn 127.0.0.1:41794: error: RCPT failed: 501 5.1.3 Malformed destination address -_ conn.go:318 SMTP.Conn 127.0.0.1:41794: error: RCPT failed: 501 5.1.3 Malformed destination address -_ conn.go:325 SMTP.Conn 127.0.0.1:41794: error: too many errors, breaking connection -_ conn.go:318 SMTP.Conn 127.0.0.1:41796: error: MAIL failed: 501 5.1.7 Sender address malformed -_ conn.go:318 SMTP.Conn 127.0.0.1:41796: error: RCPT failed: 501 5.1.3 Malformed destination address -_ conn.go:318 SMTP.Conn 127.0.0.1:41796: error: RCPT failed: 501 5.1.3 Malformed destination address -_ conn.go:325 SMTP.Conn 127.0.0.1:41796: error: too many errors, breaking connection -_ conn.go:318 SMTP.Conn 127.0.0.1:41806: error: MAIL failed: 501 5.1.7 Sender address malformed -_ conn.go:318 SMTP.Conn 127.0.0.1:41806: error: RCPT failed: 501 5.1.3 Malformed destination address -_ conn.go:318 SMTP.Conn 127.0.0.1:41806: error: RCPT failed: 501 5.1.3 Malformed destination address -_ conn.go:325 SMTP.Conn 127.0.0.1:41806: error: too many errors, breaking connection ---- PASS: TestWrongMailParsing (0.01s) +_ conn.go:318 SMTP.Conn 127.0.0.1:45832: error: MAIL failed: 501 5.1.7 Sender address malformed +_ conn.go:318 SMTP.Conn 127.0.0.1:45832: error: RCPT failed: 501 5.1.3 Malformed destination address +_ conn.go:318 SMTP.Conn 127.0.0.1:45832: error: RCPT failed: 501 5.1.3 Malformed destination address +_ conn.go:325 SMTP.Conn 127.0.0.1:45832: error: too many errors, breaking connection +_ conn.go:318 SMTP.Conn 127.0.0.1:45834: error: MAIL failed: 501 5.1.7 Sender address malformed +_ conn.go:318 SMTP.Conn 127.0.0.1:45834: error: RCPT failed: 501 5.1.3 Malformed destination address +_ conn.go:318 SMTP.Conn 127.0.0.1:45834: error: RCPT failed: 501 5.1.3 Malformed destination address +_ conn.go:325 SMTP.Conn 127.0.0.1:45834: error: too many errors, breaking connection +_ conn.go:318 SMTP.Conn 127.0.0.1:45846: error: MAIL failed: 501 5.1.7 Sender address malformed +_ conn.go:318 SMTP.Conn 127.0.0.1:45846: error: RCPT failed: 501 5.1.3 Malformed destination address +_ conn.go:318 SMTP.Conn 127.0.0.1:45846: error: RCPT failed: 501 5.1.3 Malformed destination address +_ conn.go:325 SMTP.Conn 127.0.0.1:45846: error: too many errors, breaking connection +_ conn.go:318 SMTP.Conn 127.0.0.1:45852: error: MAIL failed: 501 5.1.7 Sender address malformed +_ conn.go:318 SMTP.Conn 127.0.0.1:45852: error: RCPT failed: 501 5.1.3 Malformed destination address +_ conn.go:318 SMTP.Conn 127.0.0.1:45852: error: RCPT failed: 501 5.1.3 Malformed destination address +_ conn.go:325 SMTP.Conn 127.0.0.1:45852: error: too many errors, breaking connection +_ conn.go:318 SMTP.Conn 127.0.0.1:45854: error: MAIL failed: 501 5.1.7 Sender address malformed +_ conn.go:318 SMTP.Conn 127.0.0.1:45854: error: RCPT failed: 501 5.1.3 Malformed destination address +_ conn.go:318 SMTP.Conn 127.0.0.1:45854: error: RCPT failed: 501 5.1.3 Malformed destination address +_ conn.go:325 SMTP.Conn 127.0.0.1:45854: error: too many errors, breaking connection +_ conn.go:318 SMTP.Conn 127.0.0.1:45856: error: MAIL failed: 501 5.1.7 Sender address malformed +_ conn.go:318 SMTP.Conn 127.0.0.1:45856: error: RCPT failed: 501 5.1.3 Malformed destination address +_ conn.go:318 SMTP.Conn 127.0.0.1:45856: error: RCPT failed: 501 5.1.3 Malformed destination address +_ conn.go:325 SMTP.Conn 127.0.0.1:45856: error: too many errors, breaking connection +--- PASS: TestWrongMailParsing (0.00s) === RUN TestNullMailFrom --- PASS: TestNullMailFrom (0.00s) === RUN TestRcptBeforeMail -_ conn.go:318 SMTP.Conn 127.0.0.1:41818: error: RCPT failed: 503 5.5.1 Sender not yet given +_ conn.go:318 SMTP.Conn 127.0.0.1:45866: error: RCPT failed: 503 5.5.1 Sender not yet given --- PASS: TestRcptBeforeMail (0.00s) === RUN TestRcptOption --- PASS: TestRcptOption (0.00s) === RUN TestRelayForbidden -2026-10-01 05:06:51.593960 127.0.0.1:41840 rejected from=from@somewhere to=[to@somewhere] - relay not allowed -_ conn.go:318 SMTP.Conn 127.0.0.1:41840: error: RCPT failed: 503 5.7.1 Relay not allowed +2025-08-28 22:46:05.340251 127.0.0.1:45878 rejected from=from@somewhere to=[to@somewhere] - relay not allowed +_ conn.go:318 SMTP.Conn 127.0.0.1:45878: error: RCPT failed: 503 5.7.1 Relay not allowed --- PASS: TestRelayForbidden (0.00s) === RUN TestTooManyRecipients -2026-10-01 05:06:51.728311 127.0.0.1:39738 auth succeeded for testuser@localhost -_ conn.go:318 SMTP.Conn 127.0.0.1:39738: error: RCPT failed: 452 4.5.3 Too many recipients ---- PASS: TestTooManyRecipients (0.14s) +2025-08-28 22:46:05.445344 127.0.0.1:45206 auth succeeded for testuser@localhost +_ conn.go:318 SMTP.Conn 127.0.0.1:45206: error: RCPT failed: 452 4.5.3 Too many recipients +--- PASS: TestTooManyRecipients (0.11s) === RUN TestRcptBrokenExists -_ conn.go:622 SMTP.Conn 127.0.0.1:41854: error: error checking if user \"to@broken\" exists: failed to check if user exists -2026-10-01 05:06:51.740528 127.0.0.1:41854 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:41854: error: RCPT failed: 451 4.4.3 Temporary error checking address +_ conn.go:622 SMTP.Conn 127.0.0.1:45888: error: error checking if user \"to@broken\" exists: failed to check if user exists +2025-08-28 22:46:05.452166 127.0.0.1:45888 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:45888: error: RCPT failed: 451 4.4.3 Temporary error checking address --- PASS: TestRcptBrokenExists (0.00s) === RUN TestRcptUserDoesNotExist -2026-10-01 05:06:51.743849 127.0.0.1:41856 rejected from=from@localhost to=[doesnotexist@localhost] - local user does not exist -_ conn.go:318 SMTP.Conn 127.0.0.1:41856: error: RCPT failed: 550 5.1.1 Destination address is unknown (user does not exist) +2025-08-28 22:46:05.454102 127.0.0.1:45900 rejected from=from@localhost to=[doesnotexist@localhost] - local user does not exist +_ conn.go:318 SMTP.Conn 127.0.0.1:45900: error: RCPT failed: 550 5.1.1 Destination address is unknown (user does not exist) --- PASS: TestRcptUserDoesNotExist (0.00s) === RUN TestTooMuchData -_ queue.go:308 Queue.SendLoop czWsaAd4bBk: from from@from -_ queue.go:367 Queue.SendLoop czWsaAd4bBk: testuser@localhost sent -2026-10-01 05:06:51.969125 czWsaAd4bBk from=from@from to=testuser@localhost sent -_ conn.go:722 SMTP.Conn 127.0.0.1:41862: Queued from from@from to [to@localhost] - czWsaAd4bBk -2026-10-01 05:06:51.973743 czWsaAd4bBk from=from@from queued ip=127.0.0.1:41862 to=[to@localhost] -_ queue.go:342 Queue.SendLoop czWsaAd4bBk: all done -2026-10-01 05:06:52.040630 czWsaAd4bBk from=from@from all done -_ conn.go:722 SMTP.Conn 127.0.0.1:41862: Queued from from@from to [to@localhost] - jNGVDzrCl1M -2026-10-01 05:06:52.182151 jNGVDzrCl1M from=from@from queued ip=127.0.0.1:41862 to=[to@localhost] -_ queue.go:308 Queue.SendLoop jNGVDzrCl1M: from from@from -_ queue.go:367 Queue.SendLoop jNGVDzrCl1M: testuser@localhost sent -2026-10-01 05:06:52.182339 jNGVDzrCl1M from=from@from to=testuser@localhost sent -_ queue.go:342 Queue.SendLoop jNGVDzrCl1M: all done -2026-10-01 05:06:52.269041 jNGVDzrCl1M from=from@from all done -_ conn.go:318 SMTP.Conn 127.0.0.1:41862: error: DATA failed: 552 5.3.4 Message too big -_ queue.go:308 Queue.SendLoop Il36kqxE7yc: from from@from -_ queue.go:367 Queue.SendLoop Il36kqxE7yc: testuser@localhost sent -2026-10-01 05:06:52.758039 Il36kqxE7yc from=from@from to=testuser@localhost sent -_ conn.go:722 SMTP.Conn 127.0.0.1:41862: Queued from from@from to [to@localhost] - Il36kqxE7yc -2026-10-01 05:06:52.758172 Il36kqxE7yc from=from@from queued ip=127.0.0.1:41862 to=[to@localhost] ---- PASS: TestTooMuchData (1.01s) +_ conn.go:722 SMTP.Conn 127.0.0.1:45914: Queued from from@from to [to@localhost] - WPNY2ekGBy0 +2025-08-28 22:46:05.545952 WPNY2ekGBy0 from=from@from queued ip=127.0.0.1:45914 to=[to@localhost] +_ queue.go:308 Queue.SendLoop WPNY2ekGBy0: from from@from +_ queue.go:367 Queue.SendLoop WPNY2ekGBy0: testuser@localhost sent +2025-08-28 22:46:05.546081 WPNY2ekGBy0 from=from@from to=testuser@localhost sent +_ queue.go:342 Queue.SendLoop WPNY2ekGBy0: all done +2025-08-28 22:46:05.563763 WPNY2ekGBy0 from=from@from all done +_ conn.go:722 SMTP.Conn 127.0.0.1:45914: Queued from from@from to [to@localhost] - Qa7Cw_YdEVU +2025-08-28 22:46:05.636885 Qa7Cw_YdEVU from=from@from queued ip=127.0.0.1:45914 to=[to@localhost] +_ queue.go:308 Queue.SendLoop Qa7Cw_YdEVU: from from@from +_ queue.go:367 Queue.SendLoop Qa7Cw_YdEVU: testuser@localhost sent +2025-08-28 22:46:05.637110 Qa7Cw_YdEVU from=from@from to=testuser@localhost sent +_ queue.go:342 Queue.SendLoop Qa7Cw_YdEVU: all done +2025-08-28 22:46:05.658772 Qa7Cw_YdEVU from=from@from all done +_ conn.go:318 SMTP.Conn 127.0.0.1:45914: error: DATA failed: 552 5.3.4 Message too big +_ conn.go:722 SMTP.Conn 127.0.0.1:45914: Queued from from@from to [to@localhost] - IRnEJjman9g +2025-08-28 22:46:05.831823 IRnEJjman9g from=from@from queued ip=127.0.0.1:45914 to=[to@localhost] +_ queue.go:308 Queue.SendLoop IRnEJjman9g: from from@from +_ queue.go:367 Queue.SendLoop IRnEJjman9g: testuser@localhost sent +2025-08-28 22:46:05.831915 IRnEJjman9g from=from@from to=testuser@localhost sent +--- PASS: TestTooMuchData (0.38s) === RUN TestSimpleCommands -_ conn.go:318 SMTP.Conn 127.0.0.1:41878: 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:41878: error: EXPN failed: 502 5.5.1 You feel disoriented for a moment. +_ conn.go:318 SMTP.Conn 127.0.0.1:45922: 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:45922: 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:41888: error: unknown<\"\"> failed: 500 5.5.1 Unknown command -_ conn.go:348 SMTP.Conn 127.0.0.1:41888: error: exiting with error: line too long +_ conn.go:318 SMTP.Conn 127.0.0.1:45924: error: unknown<\"\"> failed: 500 5.5.1 Unknown command +_ conn.go:348 SMTP.Conn 127.0.0.1:45924: error: exiting with error: line too long --- PASS: TestLongLines (0.00s) === RUN TestReset --- PASS: TestReset (0.00s) === RUN TestRepeatedStartTLS -_ conn.go:318 SMTP.Conn 127.0.0.1:41900: error: STARTTLS failed: 503 5.5.1 You are already wearing that! +_ conn.go:318 SMTP.Conn 127.0.0.1:45942: error: STARTTLS failed: 503 5.5.1 You are already wearing that! --- PASS: TestRepeatedStartTLS (0.00s) === RUN TestStartTLSOnTLS -_ conn.go:318 SMTP.Conn 127.0.0.1:37882: error: STARTTLS failed: 503 5.5.1 You are already wearing that! +_ conn.go:318 SMTP.Conn 127.0.0.1:45884: error: STARTTLS failed: 503 5.5.1 You are already wearing that! --- PASS: TestStartTLSOnTLS (0.00s) === RUN TestAddDKIMSigner - testlib.go:32: test directory: "/tmp/testlib_2471733253" + testlib.go:32: test directory: "/tmp/testlib_1836609232" --- PASS: TestAddDKIMSigner (0.00s) === RUN FuzzConnection --- PASS: FuzzConnection (0.00s) PASS -ok blitiri.com.ar/go/chasquid/internal/smtpsrv 2.540s +_ queue.go:375 Queue.SendLoop IRnEJjman9g: error: failed to write: rename /tmp/chasquid_test:128046691/queue/.m:IRnEJjman9g2369693095 /tmp/chasquid_test:128046691/queue/m:IRnEJjman9g: no such file or directory +_ queue.go:342 Queue.SendLoop IRnEJjman9g: all done +2025-08-28 22:46:05.844138 IRnEJjman9g from=from@from all done +E queue.go:230 failed to remove queue file "/tmp/chasquid_test:128046691/queue/m:IRnEJjman9g": remove /tmp/chasquid_test:128046691/queue/m:IRnEJjman9g: no such file or directory +ok blitiri.com.ar/go/chasquid/internal/smtpsrv 1.169s === RUN TestParsePolicy sts_test.go:90: pol1: &{Version:STSv1 Mode:enforce MXs:[*.mail.example.com] MaxAge:34h17m36s} --- PASS: TestParsePolicy (0.00s) @@ -2358,34 +2395,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.03s) +--- PASS: TestPolicyTooBig (0.01s) === RUN TestCacheBasics - testlib.go:32: test directory: "/tmp/testlib_2281703298" + testlib.go:32: test directory: "/tmp/testlib_3044248165" 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.02s) +--- PASS: TestCacheBasics (0.00s) === RUN TestCacheBadData - testlib.go:32: test directory: "/tmp/testlib_1369933278" + testlib.go:32: test directory: "/tmp/testlib_2816931050" 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.11s) +--- PASS: TestCacheBadData (0.00s) === RUN TestCacheRefresh - testlib.go:32: test directory: "/tmp/testlib_1864047029" + testlib.go:32: test directory: "/tmp/testlib_1495088883" 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.08s) +--- PASS: TestCacheRefresh (0.01s) === RUN TestCacheSlashSafe - testlib.go:32: test directory: "/tmp/testlib_654077005" + testlib.go:32: test directory: "/tmp/testlib_1535994743" sts_test.go:464: recovered: domain contains slash --- PASS: TestCacheSlashSafe (0.00s) === RUN TestURLForDomain @@ -2393,11 +2430,11 @@ === RUN TestHasSTSRecord --- PASS: TestHasSTSRecord (0.00s) === RUN TestHTTPGet ---- PASS: TestHTTPGet (0.01s) +--- PASS: TestHTTPGet (0.00s) PASS -ok blitiri.com.ar/go/chasquid/internal/sts 0.288s +ok blitiri.com.ar/go/chasquid/internal/sts 0.032s === RUN TestBasic - testlib.go:32: test directory: "/tmp/testlib_1020266908" + testlib.go:32: test directory: "/tmp/testlib_4118579788" --- PASS: TestBasic (0.00s) === RUN TestRemoveCheck testlib_test.go:33: recovered: invalid/dangerous directory @@ -2408,55 +2445,55 @@ testlib_test.go:60: recovered: invalid/dangerous path --- PASS: TestRewriteSafeguard (0.00s) === RUN TestRewrite - testlib.go:32: test directory: "/tmp/testlib_2044500551" + testlib.go:32: test directory: "/tmp/testlib_3398594744" --- PASS: TestRewrite (0.00s) === RUN TestGetFreePort --- PASS: TestGetFreePort (0.00s) === RUN TestWaitFor --- PASS: TestWaitFor (0.02s) === RUN TestGenerateCert - testlib.go:32: test directory: "/tmp/testlib_1918233344" ---- PASS: TestGenerateCert (0.13s) + testlib.go:32: test directory: "/tmp/testlib_879103461" +--- PASS: TestGenerateCert (0.03s) === RUN TestGenerateCertBadDir ---- PASS: TestGenerateCertBadDir (0.09s) +--- PASS: TestGenerateCertBadDir (0.05s) PASS -ok blitiri.com.ar/go/chasquid/internal/testlib 0.276s +ok blitiri.com.ar/go/chasquid/internal/testlib 0.106s === RUN TestVersionName --- PASS: TestVersionName (0.00s) === RUN TestCipherSuiteName --- PASS: TestCipherSuiteName (0.00s) PASS -ok blitiri.com.ar/go/chasquid/internal/tlsconst 0.019s +ok blitiri.com.ar/go/chasquid/internal/tlsconst 0.003s ? blitiri.com.ar/go/chasquid/internal/trace [no test files] === RUN TestEmptyLoad - userdb_test.go:37: file: "/tmp/userdb_test2949332295" - userdb_test.go:37: file: "/tmp/userdb_test2954770355" + userdb_test.go:37: file: "/tmp/userdb_test2177525476" + userdb_test.go:37: file: "/tmp/userdb_test827252908" --- PASS: TestEmptyLoad (0.00s) === RUN TestWrite - userdb_test.go:37: file: "/tmp/userdb_test4230132075" ---- PASS: TestWrite (1.21s) + userdb_test.go:37: file: "/tmp/userdb_test2386300102" +--- PASS: TestWrite (0.37s) === RUN TestNew ---- PASS: TestNew (0.16s) +--- PASS: TestNew (0.05s) === RUN TestInvalidUsername - userdb_test.go:37: file: "/tmp/userdb_test3832462048" + userdb_test.go:37: file: "/tmp/userdb_test464076187" --- PASS: TestInvalidUsername (0.00s) === RUN TestPlainScheme - userdb_test.go:37: file: "/tmp/userdb_test1514883490" + userdb_test.go:37: file: "/tmp/userdb_test1706234086" --- PASS: TestPlainScheme (0.00s) === RUN TestDeniedScheme - userdb_test.go:37: file: "/tmp/userdb_test971001839" + userdb_test.go:37: file: "/tmp/userdb_test3175062950" --- PASS: TestDeniedScheme (0.00s) === RUN TestReload - userdb_test.go:37: file: "/tmp/userdb_test263897790" + userdb_test.go:37: file: "/tmp/userdb_test1274378823" --- PASS: TestReload (0.00s) === RUN TestRemoveUser - userdb_test.go:37: file: "/tmp/userdb_test2548453101" ---- PASS: TestRemoveUser (0.17s) + userdb_test.go:37: file: "/tmp/userdb_test372952694" +--- PASS: TestRemoveUser (0.05s) === RUN TestExists - userdb_test.go:37: file: "/tmp/userdb_test2765478167" ---- PASS: TestExists (0.16s) + userdb_test.go:37: file: "/tmp/userdb_test4134245648" +--- PASS: TestExists (0.05s) PASS -ok blitiri.com.ar/go/chasquid/internal/userdb 1.719s +ok blitiri.com.ar/go/chasquid/internal/userdb 0.537s create-stamp debian/debhelper-build-stamp dh_testroot -O--buildsystem=golang dh_prep -O--buildsystem=golang @@ -2519,12 +2556,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/591128/tmp/hooks/B01_cleanup starting +I: user script /srv/workspace/pbuilder/591128/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/1180880 and its subdirectories -I: Current time: Wed Sep 30 17:08:08 -12 2026 -I: pbuilder-time-stamp: 1790831288 +I: removing directory /srv/workspace/pbuilder/591128 and its subdirectories +I: Current time: Fri Aug 29 12:46:22 +14 2025 +I: pbuilder-time-stamp: 1756421182