Diff of the two buildlogs: -- --- b1/build.log 2025-03-04 12:35:27.628898414 +0000 +++ b2/build.log 2025-03-04 12:39:56.328787804 +0000 @@ -1,6 +1,6 @@ I: pbuilder: network access will be disabled during build -I: Current time: Mon Apr 6 06:55:10 -12 2026 -I: pbuilder-time-stamp: 1775501710 +I: Current time: Wed Mar 5 02:35:30 +14 2025 +I: pbuilder-time-stamp: 1741091730 I: Building the build Environment I: extracting base tarball [/var/cache/pbuilder/trixie-reproducible-base.tgz] I: copying local configuration @@ -22,52 +22,84 @@ dpkg-source: info: unpacking mender-connect_2.3.0+ds1-1.debian.tar.xz I: Not using root during the build. I: Installing the build-deps -I: user script /srv/workspace/pbuilder/3102743/tmp/hooks/D02_print_environment starting +I: user script /srv/workspace/pbuilder/2394609/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 Mar 4 12:35 /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/2394609/tmp/hooks/D01_modify_environment finished +I: user script /srv/workspace/pbuilder/2394609/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='trixie' - 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=20 ' + DIRSTACK=() + DISTRIBUTION=trixie + EUID=0 + FUNCNAME=([0]="Echo" [1]="main") + GROUPS=() + HOME=/root + HOSTNAME=i-capture-the-hostname + HOSTTYPE=x86_64 + HOST_ARCH=amd64 IFS=' ' - INVOCATION_ID='d1a0774e9c914843b147f1698574d037' - 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='3102743' - PS1='# ' - PS2='> ' + INVOCATION_ID=626a73e374104726aafca6eb40eaa286 + 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=2394609 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.18JhPifW/pbuilderrc_Nzmv --distribution trixie --hookdir /etc/pbuilder/first-build-hooks --debbuildopts -b --basetgz /var/cache/pbuilder/trixie-reproducible-base.tgz --buildresult /srv/reproducible-results/rbuild-debian/r-b-build.18JhPifW/b1 --logfile b1/build.log mender-connect_2.3.0+ds1-1.dsc' - SUDO_GID='110' - 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.18JhPifW/pbuilderrc_wNbJ --distribution trixie --hookdir /etc/pbuilder/rebuild-hooks --debbuildopts -b --basetgz /var/cache/pbuilder/trixie-reproducible-base.tgz --buildresult /srv/reproducible-results/rbuild-debian/r-b-build.18JhPifW/b2 --logfile b2/build.log mender-connect_2.3.0+ds1-1.dsc' + SUDO_GID=111 + 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.12+bpo-amd64 #1 SMP PREEMPT_DYNAMIC Debian 6.12.12-1~bpo12+1 (2025-02-23) x86_64 GNU/Linux + Linux i-capture-the-hostname 6.1.0-31-amd64 #1 SMP PREEMPT_DYNAMIC Debian 6.1.128-1 (2025-02-07) x86_64 GNU/Linux I: ls -l /bin - lrwxrwxrwx 1 root root 7 Nov 22 2024 /bin -> usr/bin -I: user script /srv/workspace/pbuilder/3102743/tmp/hooks/D02_print_environment finished + lrwxrwxrwx 1 root root 7 Nov 22 14:40 /bin -> usr/bin +I: user script /srv/workspace/pbuilder/2394609/tmp/hooks/D02_print_environment finished -> Attempting to satisfy build-dependencies -> Creating pbuilder-satisfydepends-dummy package Package: pbuilder-satisfydepends-dummy @@ -788,8 +820,8 @@ Setting up tzdata (2025a-2) ... Current default time zone: 'Etc/UTC' -Local time is now: Mon Apr 6 18:56:06 UTC 2026. -Universal Time is now: Mon Apr 6 18:56:06 UTC 2026. +Local time is now: Tue Mar 4 12:36:58 UTC 2025. +Universal Time is now: Tue Mar 4 12:36:58 UTC 2025. Run 'dpkg-reconfigure tzdata' if you wish to change it. Setting up libsysprof-capture-4-dev:amd64 (48~beta-2) ... @@ -919,7 +951,11 @@ Building tag database... -> Finished parsing the build-deps I: Building the package -I: Running cd /build/reproducible-path/mender-connect-2.3.0+ds1/ && 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 > ../mender-connect_2.3.0+ds1-1_source.changes +I: user script /srv/workspace/pbuilder/2394609/tmp/hooks/A99_set_merged_usr starting +Not re-configuring usrmerge for trixie +I: user script /srv/workspace/pbuilder/2394609/tmp/hooks/A99_set_merged_usr finished +hostname: Name or service not known +I: Running cd /build/reproducible-path/mender-connect-2.3.0+ds1/ && 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 > ../mender-connect_2.3.0+ds1-1_source.changes dpkg-buildpackage: info: source package mender-connect dpkg-buildpackage: info: source version 2.3.0+ds1-1 dpkg-buildpackage: info: source distribution unstable @@ -940,63 +976,63 @@ make[1]: Entering directory '/build/reproducible-path/mender-connect-2.3.0+ds1' dh_auto_build -O--buildsystem=golang -- \ -ldflags "-X github.com/mendersoftware/mender-connect/config.Version=" - cd _build && go install -trimpath -v -p 42 -ldflags "-X github.com/mendersoftware/mender-connect/config.Version=" github.com/mendersoftware/mender-connect github.com/mendersoftware/mender-connect/app github.com/mendersoftware/mender-connect/cli github.com/mendersoftware/mender-connect/client/dbus github.com/mendersoftware/mender-connect/client/dbus/mocks github.com/mendersoftware/mender-connect/client/dbus/test github.com/mendersoftware/mender-connect/client/mender github.com/mendersoftware/mender-connect/client/mender/mocks github.com/mendersoftware/mender-connect/config github.com/mendersoftware/mender-connect/connection github.com/mendersoftware/mender-connect/connectionmanager github.com/mendersoftware/mender-connect/limits/filetransfer github.com/mendersoftware/mender-connect/procps github.com/mendersoftware/mender-connect/session github.com/mendersoftware/mender-connect/session/mocks github.com/mendersoftware/mender-connect/session/model github.com/mendersoftware/mender-connect/shell github.com/mendersoftware/mender-connect/utils -github.com/vmihailenco/tagparser/v2/internal + cd _build && go install -trimpath -v -p 20 -ldflags "-X github.com/mendersoftware/mender-connect/config.Version=" github.com/mendersoftware/mender-connect github.com/mendersoftware/mender-connect/app github.com/mendersoftware/mender-connect/cli github.com/mendersoftware/mender-connect/client/dbus github.com/mendersoftware/mender-connect/client/dbus/mocks github.com/mendersoftware/mender-connect/client/dbus/test github.com/mendersoftware/mender-connect/client/mender github.com/mendersoftware/mender-connect/client/mender/mocks github.com/mendersoftware/mender-connect/config github.com/mendersoftware/mender-connect/connection github.com/mendersoftware/mender-connect/connectionmanager github.com/mendersoftware/mender-connect/limits/filetransfer github.com/mendersoftware/mender-connect/procps github.com/mendersoftware/mender-connect/session github.com/mendersoftware/mender-connect/session/mocks github.com/mendersoftware/mender-connect/session/model github.com/mendersoftware/mender-connect/shell github.com/mendersoftware/mender-connect/utils +cmp internal/godebugs -internal/byteorder -internal/asan -crypto/internal/fips140/alias -internal/profilerecord +internal/goos +encoding internal/msan math/bits -internal/unsafeheader -internal/goos -unicode/utf8 -github.com/mendersoftware/go-lib-micro/ws/menderclient +internal/asan +internal/coverage/rtcov +internal/profilerecord internal/goarch -log/internal -internal/cpu +internal/goexperiment github.com/mendersoftware/go-lib-micro/ws/shell -github.com/mendersoftware/go-lib-micro/ws/portforward -sync/atomic -internal/nettrace -container/list +unicode unicode/utf16 +sync/atomic +internal/cpu +unicode/utf8 internal/itoa -github.com/vmihailenco/msgpack/v5/msgpcode +internal/runtime/syscall +internal/unsafeheader internal/runtime/atomic -vendor/golang.org/x/crypto/internal/alias -encoding -unicode +github.com/mendersoftware/go-lib-micro/ws +log/internal +internal/byteorder +crypto/internal/fips140/alias crypto/internal/boring/sig -cmp -vendor/golang.org/x/crypto/cryptobyte/asn1 -internal/coverage/rtcov -internal/runtime/syscall -internal/goexperiment -crypto/internal/fips140/subtle +internal/abi internal/runtime/math internal/runtime/sys -internal/abi -github.com/mendersoftware/go-lib-micro/ws -internal/chacha8rand +container/list +vendor/golang.org/x/crypto/cryptobyte/asn1 +vendor/golang.org/x/crypto/internal/alias +internal/nettrace +github.com/vmihailenco/msgpack/v5/msgpcode +github.com/vmihailenco/tagparser/v2/internal +github.com/mendersoftware/go-lib-micro/ws/menderclient +github.com/mendersoftware/go-lib-micro/ws/portforward +crypto/internal/fips140/subtle crypto/internal/fips140deps/byteorder +internal/chacha8rand crypto/internal/fips140deps/cpu internal/bytealg -math internal/runtime/exithook +math internal/stringslite internal/race internal/sync internal/runtime/maps runtime +internal/reflectlite iter -crypto/subtle weak -internal/reflectlite +crypto/subtle sync -maps slices +maps errors sort internal/testlog @@ -1004,147 +1040,147 @@ unique internal/bisect internal/oserror -io -vendor/golang.org/x/net/dns/dnsmessage path +vendor/golang.org/x/net/dns/dnsmessage math/rand/v2 +io strconv runtime/cgo syscall internal/godebug crypto/internal/randutil -hash bytes +hash strings -hash/crc32 crypto -net/netip reflect +net/netip +hash/crc32 crypto/internal/fips140deps/godebug math/rand vendor/golang.org/x/text/transform github.com/vmihailenco/tagparser/v2/internal/parser -crypto/internal/fips140 +bufio +net/http/internal/ascii github.com/vmihailenco/tagparser/v2 crypto/internal/impl -net/http/internal/testcert -html -net/http/internal/ascii -bufio regexp/syntax -crypto/tls/internal/fips140tls +crypto/internal/fips140 +html +net/http/internal/testcert crypto/internal/fips140/sha256 -crypto/internal/fips140/sha512 crypto/internal/fips140/sha3 -internal/syscall/execenv +crypto/tls/internal/fips140tls +crypto/internal/fips140/sha512 time internal/syscall/unix -crypto/sha3 +internal/syscall/execenv crypto/internal/fips140/hmac +crypto/sha3 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/bigmod +crypto/internal/fips140/tls12 +crypto/internal/fips140/hkdf crypto/internal/fips140/nistec/fiat regexp crypto/internal/fips140/tls13 crypto/internal/fips140/edwards25519 context -github.com/mendersoftware/go-lib-micro/ws/filetransfer io/fs +github.com/mendersoftware/go-lib-micro/ws/filetransfer internal/poll -crypto/internal/fips140/nistec internal/filepathlite +crypto/internal/fips140/nistec +os internal/fmtsort encoding/binary -os github.com/mendersoftware/mender-connect/client/dbus/test encoding/base64 vendor/golang.org/x/crypto/internal/poly1305 golang.org/x/sys/unix encoding/pem -io/ioutil -crypto/internal/sysrand path/filepath fmt +io/ioutil +crypto/internal/sysrand vendor/golang.org/x/sys/cpu -os/signal net +os/signal crypto/internal/entropy crypto/internal/fips140/drbg +crypto/internal/fips140/mlkem crypto/internal/fips140only +crypto/internal/fips140/aes/gcm +crypto/internal/fips140/ecdsa crypto/internal/fips140/ecdh crypto/internal/fips140/ed25519 -crypto/internal/fips140/ecdsa -crypto/internal/fips140/aes/gcm -crypto/internal/fips140/mlkem crypto/internal/fips140/rsa os/exec -crypto/rc4 crypto/md5 +crypto/rc4 crypto/cipher -github.com/mendersoftware/mender-connect/procps -github.com/creack/pty -crypto/internal/boring -vendor/golang.org/x/crypto/chacha20 -crypto/des -crypto/aes -crypto/ecdh -crypto/sha1 -crypto/sha512 -crypto/hmac -crypto/sha256 -vendor/golang.org/x/crypto/chacha20poly1305 github.com/pkg/errors log flag text/tabwriter +github.com/xrash/smetrics +github.com/russross/blackfriday/v2 net/url -encoding/hex +encoding/json text/template/parse os/user -github.com/xrash/smetrics -encoding/json -github.com/pmezard/go-difflib/difflib -mime/quotedprintable -vendor/golang.org/x/net/http2/hpack -runtime/debug -net/http/internal -database/sql/driver +compress/flate +math/big +encoding/hex vendor/golang.org/x/text/unicode/norm +vendor/golang.org/x/net/http2/hpack mime -math/big -compress/flate -gopkg.in/yaml.v3 -github.com/russross/blackfriday/v2 github.com/mendersoftware/mender-connect/client/dbus -github.com/davecgh/go-spew/spew +mime/quotedprintable +net/http/internal +crypto/internal/boring +crypto/des +vendor/golang.org/x/crypto/chacha20 vendor/golang.org/x/text/unicode/bidi +crypto/sha1 +crypto/aes +crypto/ecdh +crypto/sha512 +crypto/hmac +crypto/sha256 github.com/vmihailenco/msgpack/v5 +vendor/golang.org/x/crypto/chacha20poly1305 +database/sql/driver +github.com/mendersoftware/mender-connect/procps +github.com/creack/pty +github.com/davecgh/go-spew/spew +github.com/pmezard/go-difflib/difflib compress/gzip +gopkg.in/yaml.v3 +runtime/debug vendor/golang.org/x/text/secure/bidirule -text/template -github.com/cpuguy83/go-md2man/v2/md2man vendor/golang.org/x/net/idna -github.com/sirupsen/logrus +text/template github.com/stretchr/objx +github.com/cpuguy83/go-md2man/v2/md2man crypto/internal/boring/bbig crypto/elliptic encoding/asn1 crypto/dsa crypto/rand -crypto/ed25519 +github.com/sirupsen/logrus crypto/internal/hpke crypto/rsa +crypto/ed25519 +vendor/golang.org/x/crypto/cryptobyte +crypto/x509/pkix github.com/go-ozzo/ozzo-validation/v4 github.com/urfave/cli/v2 -github.com/mendersoftware/mender-connect/utils -crypto/x509/pkix -vendor/golang.org/x/crypto/cryptobyte crypto/ecdsa +github.com/mendersoftware/mender-connect/utils github.com/mendersoftware/mender-connect/session/model github.com/mendersoftware/mender-connect/config github.com/mendersoftware/mender-connect/limits/filetransfer @@ -1156,7 +1192,6 @@ crypto/tls net/http/httptrace net/http -github.com/mendersoftware/mender-connect/client/mender net/http/httptest github.com/gorilla/websocket github.com/stretchr/testify/assert @@ -1165,6 +1200,7 @@ github.com/mendersoftware/mender-connect/shell github.com/mendersoftware/mender-connect/session github.com/stretchr/testify/mock +github.com/mendersoftware/mender-connect/client/mender github.com/mendersoftware/mender-connect/client/dbus/mocks github.com/mendersoftware/mender-connect/client/mender/mocks github.com/mendersoftware/mender-connect/session/mocks @@ -1178,99 +1214,99 @@ --bus-type=system \ --max-wait=600 \ -t dh_auto_test -DBus daemon: unix:path=/tmp/dbus-4t5bduXU84,guid=760272855f730b0da2e9d04569d401da -task-0: Started with PID: 3120094 -task-0: cd _build && go test -vet=off -v -p 42 github.com/mendersoftware/mender-connect github.com/mendersoftware/mender-connect/app github.com/mendersoftware/mender-connect/cli github.com/mendersoftware/mender-connect/client/dbus github.com/mendersoftware/mender-connect/client/dbus/mocks github.com/mendersoftware/mender-connect/client/dbus/test github.com/mendersoftware/mender-connect/client/mender github.com/mendersoftware/mender-connect/client/mender/mocks github.com/mendersoftware/mender-connect/config github.com/mendersoftware/mender-connect/connection github.com/mendersoftware/mender-connect/connectionmanager github.com/mendersoftware/mender-connect/limits/filetransfer github.com/mendersoftware/mender-connect/procps github.com/mendersoftware/mender-connect/session github.com/mendersoftware/mender-connect/session/mocks github.com/mendersoftware/mender-connect/session/model github.com/mendersoftware/mender-connect/shell github.com/mendersoftware/mender-connect/utils +DBus daemon: unix:path=/tmp/dbus-VennRbhEP8,guid=cca1403cc2f3156b202278b467c6f415 +task-0: Started with PID: 2438354 +task-0: cd _build && go test -vet=off -v -p 20 github.com/mendersoftware/mender-connect github.com/mendersoftware/mender-connect/app github.com/mendersoftware/mender-connect/cli github.com/mendersoftware/mender-connect/client/dbus github.com/mendersoftware/mender-connect/client/dbus/mocks github.com/mendersoftware/mender-connect/client/dbus/test github.com/mendersoftware/mender-connect/client/mender github.com/mendersoftware/mender-connect/client/mender/mocks github.com/mendersoftware/mender-connect/config github.com/mendersoftware/mender-connect/connection github.com/mendersoftware/mender-connect/connectionmanager github.com/mendersoftware/mender-connect/limits/filetransfer github.com/mendersoftware/mender-connect/procps github.com/mendersoftware/mender-connect/session github.com/mendersoftware/mender-connect/session/mocks github.com/mendersoftware/mender-connect/session/model github.com/mendersoftware/mender-connect/shell github.com/mendersoftware/mender-connect/utils task-0: === RUN TestMainExitCodes task-0: unknown runtime: go1.24.0 task-0: --- PASS: TestMainExitCodes (0.00s) task-0: === RUN TestMainRequiresConfig -task-0: time="2026-04-06T06:56:40-12:00" level=info msg="No configuration files present. Using defaults" -task-0: time="2026-04-06T06:56:40-12:00" level=warning msg="ShellCommand is empty, defaulting to /bin/sh" -task-0: time="2026-04-06T06:56:40-12:00" level=warning msg="ShellArguments is empty, defaulting to [--login]" -task-0: time="2026-04-06T06:56:40-12:00" level=error msg="please provide a user to run the shell as" +task-0: time="2025-03-05T02:38:08+14:00" level=info msg="No configuration files present. Using defaults" +task-0: time="2025-03-05T02:38:08+14:00" level=warning msg="ShellCommand is empty, defaulting to /bin/sh" +task-0: time="2025-03-05T02:38:08+14:00" level=warning msg="ShellArguments is empty, defaulting to [--login]" +task-0: time="2025-03-05T02:38:08+14:00" level=error msg="please provide a user to run the shell as" task-0: --- PASS: TestMainRequiresConfig (0.00s) task-0: PASS -task-0: ok github.com/mendersoftware/mender-connect 0.129s +task-0: ok github.com/mendersoftware/mender-connect 0.014s task-0: === RUN TestMenderShellSessionStart task-0: daemon_test.go:143: starting mock httpd with websockets task-0: newShellTransaction sendMessage(SpwanShell)= task-0: daemon_test.go:166: read message: type, session_id, data new, c4993deb-26b4-4c58-aaee-fd0c9e694328, -task-0: time="2026-04-06T06:56:40-12:00" level=info msg="mender-connect starting shell command passing process, pid: 3124614" +task-0: time="2025-03-05T02:38:09+14:00" level=info msg="mender-connect starting shell command passing process, pid: 2446272" task-0: newShellTransaction (0) sendMessage=&{Header:{Proto:1 MsgType:new SessionID:c4993deb-26b4-4c58-aaee-fd0c9e694328 Properties:map[status:1]} Body:[83 104 101 108 108 32 115 116 97 114 116 101 100]}, task-0: newShellTransaction (1) sendMessage= task-0: newShellTransaction (2) sendMessage= task-0: newShellTransaction (3) sendMessage= -task-0: daemon_test.go:175: read message: type, session_id, data shell, c4993deb-26b4-4c58-aaee-fd0c9e694328, echo newShellTransaction.6440054 > /tmp/TestMenderShellExec1065146810 task-0: newShellTransaction (4) sendMessage= -task-0: daemon_test.go:182: read message: type, session_id, data shell, undefined-session-id, rm -f /tmp/TestMenderShellExec1065146810 -task-0: time="2026-04-06T06:56:40-12:00" level=error msg="session not found" +task-0: daemon_test.go:175: read message: type, session_id, data shell, c4993deb-26b4-4c58-aaee-fd0c9e694328, echo newShellTransaction.4751602 > /tmp/TestMenderShellExec758161957 +task-0: daemon_test.go:182: read message: type, session_id, data shell, undefined-session-id, rm -f /tmp/TestMenderShellExec758161957 +task-0: time="2025-03-05T02:38:09+14:00" level=error msg="session not found" task-0: daemon_test.go:185: route message error: session not found task-0: daemon_test.go:189: read message: type, session_id, data shell, c4993deb-26b4-4c58-aaee-fd0c9e694328, thiscommand probably does not exist task-0: daemon_test.go:196: read message: type, session_id, data stop, undefined-session-id, -task-0: time="2026-04-06T06:56:40-12:00" level=error msg="routeMessage: StopShellMessage: session not found for id undefined-session-id" +task-0: time="2025-03-05T02:38:09+14:00" level=error msg="routeMessage: StopShellMessage: session not found for id undefined-session-id" task-0: daemon_test.go:199: route message error: routeMessage: StopShellMessage: session not found for id undefined-session-id task-0: daemon_test.go:203: read message: type, session_id, data stop, c4993deb-26b4-4c58-aaee-fd0c9e694328, -task-0: time="2026-04-06T06:56:44-12:00" level=info msg="session c4993deb-26b4-4c58-aaee-fd0c9e694328 status:0 stopping shell" +task-0: time="2025-03-05T02:38:13+14:00" level=info msg="session c4993deb-26b4-4c58-aaee-fd0c9e694328 status:0 stopping shell" task-0: daemon_test.go:209: checking command execution results -task-0: daemon_test.go:212: checking if /tmp/TestMenderShellExec1065146810 contains newShellTransaction.6440054 -task-0: daemon_test.go:215: got: 'newShellTransaction.6440054' -task-0: --- PASS: TestMenderShellSessionStart (8.02s) +task-0: daemon_test.go:212: checking if /tmp/TestMenderShellExec758161957 contains newShellTransaction.4751602 +task-0: daemon_test.go:215: got: 'newShellTransaction.4751602' +task-0: --- PASS: TestMenderShellSessionStart (8.08s) task-0: === RUN TestMenderShellStopByUserId task-0: daemon_test.go:253: starting mock httpd with websockets task-0: newShellStopByUserId starting task-0: (0) newShellStopByUserId sendMessage: task-0: daemon_test.go:278: read message: type, session_id, data new, c4993deb-26b4-4c58-aaee-fd0c9e694328, -task-0: time="2026-04-06T06:56:50-12:00" level=info msg="mender-connect starting shell command passing process, pid: 3126326" +task-0: time="2025-03-05T02:38:19+14:00" level=info msg="mender-connect starting shell command passing process, pid: 2447083" task-0: (1) newShellStopByUserId sendMessage: task-0: (2) newShellStopByUserId sendMessage: -task-0: daemon_test.go:292: read message: type, session_id, data stop, c4993deb-26b4-4c58-aaee-fd0c9e694328, task-0: (3) newShellStopByUserId sendMessage: -task-0: time="2026-04-06T06:56:50-12:00" level=info msg="session c4993deb-26b4-4c58-aaee-fd0c9e694328 status:0 stopping shell" -task-0: time="2026-04-06T06:56:50-12:00" level=error msg="error reading stdout: read /dev/ptmx: input/output error" -task-0: time="2026-04-06T06:56:54-12:00" level=error msg="session c4993deb-26b4-4c58-aaee-fd0c9e694328, shell pid 3126326, termination error: error waiting for the process: signal: interrupt" -task-0: time="2026-04-06T06:56:54-12:00" level=error msg="process error on exit: error waiting for the process: signal: interrupt" +task-0: daemon_test.go:292: read message: type, session_id, data stop, c4993deb-26b4-4c58-aaee-fd0c9e694328, +task-0: time="2025-03-05T02:38:19+14:00" level=info msg="session c4993deb-26b4-4c58-aaee-fd0c9e694328 status:0 stopping shell" +task-0: time="2025-03-05T02:38:19+14:00" level=error msg="error reading stdout: read /dev/ptmx: input/output error" +task-0: time="2025-03-05T02:38:23+14:00" level=error msg="session c4993deb-26b4-4c58-aaee-fd0c9e694328, shell pid 2447083, termination error: error waiting for the process: signal: interrupt" +task-0: time="2025-03-05T02:38:23+14:00" level=error msg="process error on exit: error waiting for the process: signal: interrupt" task-0: daemon_test.go:299: read message: type, session_id, data stop, c4993deb-26b4-4c58-aaee-fd0c9e694328, -task-0: time="2026-04-06T06:56:54-12:00" level=error msg="routeMessage: StopShellMessage: session not found for id c4993deb-26b4-4c58-aaee-fd0c9e694328" +task-0: time="2025-03-05T02:38:23+14:00" level=error msg="routeMessage: StopShellMessage: session not found for id c4993deb-26b4-4c58-aaee-fd0c9e694328" task-0: daemon_test.go:302: route message error: routeMessage: StopShellMessage: session not found for id c4993deb-26b4-4c58-aaee-fd0c9e694328 -task-0: --- PASS: TestMenderShellStopByUserId (7.02s) +task-0: --- PASS: TestMenderShellStopByUserId (7.01s) task-0: === RUN TestMenderShellUnknownMessage task-0: daemon_test.go:332: starting mock httpd with websockets task-0: newShellUnknownMessage starting task-0: (0) newShellStopByUserId sendMessage: task-0: daemon_test.go:357: read message: proto, type, session_id, data 1, does-not-exist, c4993deb-26b4-4c58-aaee-fd0c9e694328, -task-0: --- PASS: TestMenderShellUnknownMessage (2.01s) +task-0: --- PASS: TestMenderShellUnknownMessage (2.00s) task-0: === RUN TestMenderShellSessionLimitPerUser task-0: daemon_test.go:391: starting mock httpd with websockets task-0: newShellMulti: starting task-0: -task-0: daemon_test.go:424: read message: type, session_id, data new, 693a9827-0bb5-47a9-b697-ef1422550aa3, -task-0: time="2026-04-06T06:56:57-12:00" level=info msg="mender-connect starting shell command passing process, pid: 3128645" -task-0: daemon_test.go:424: read message: type, session_id, data new, 78c56609-25a2-4c28-b2a7-a2ba3e6d0159, -task-0: time="2026-04-06T06:56:57-12:00" level=info msg="mender-connect starting shell command passing process, pid: 3128646" -task-0: daemon_test.go:433: read message: type, session_id, data new, d7b49546-3dbc-4f6a-989a-3813fec10b67, -task-0: time="2026-04-06T06:56:57-12:00" level=error msg="user has too many open sessions" +task-0: daemon_test.go:424: read message: type, session_id, data new, baf435cb-a48a-42c8-8b21-7d11c0688ed0, +task-0: time="2025-03-05T02:38:26+14:00" level=info msg="mender-connect starting shell command passing process, pid: 2448053" +task-0: daemon_test.go:424: read message: type, session_id, data new, 116a74b1-59cf-4e6f-bd43-1990d5a46dd9, +task-0: time="2025-03-05T02:38:26+14:00" level=info msg="mender-connect starting shell command passing process, pid: 2448054" +task-0: daemon_test.go:433: read message: type, session_id, data new, fc777574-9dfc-4669-8a65-df31da4d4cdc, +task-0: time="2025-03-05T02:38:26+14:00" level=error msg="user has too many open sessions" task-0: daemon_test.go:436: route message error: user has too many open sessions task-0: --- PASS: TestMenderShellSessionLimitPerUser (0.00s) task-0: === RUN TestMenderShellStopDaemon task-0: --- PASS: TestMenderShellStopDaemon (0.00s) task-0: === RUN TestMenderShellReadMessage task-0: daemon_test.go:502: starting mock httpd with websockets -task-0: --- PASS: TestMenderShellReadMessage (10.01s) +task-0: --- PASS: TestMenderShellReadMessage (10.00s) task-0: === RUN TestMenderShellMaxShellsLimit task-0: daemon_test.go:546: starting mock httpd with websockets task-0: newShellMulti: starting task-0: task-0: newShellMulti: starting task-0: -task-0: daemon_test.go:578: read message: type, session_id, data new, c0a3fb7f-a799-49c2-a522-5dc82f36640f, -task-0: time="2026-04-06T06:57:08-12:00" level=info msg="mender-connect starting shell command passing process, pid: 3130215" -task-0: daemon_test.go:578: read message: type, session_id, data new, 0f2690a3-986e-45c9-a49f-e8a027826956, -task-0: time="2026-04-06T06:57:09-12:00" level=info msg="mender-connect starting shell command passing process, pid: 3130217" -task-0: daemon_test.go:587: read message: type, session_id, data new, 4d3a3163-5b6f-4ab2-9244-b501a57017c5, -task-0: time="2026-04-06T06:57:09-12:00" level=error msg="too many shells spawned" +task-0: daemon_test.go:578: read message: type, session_id, data new, 54aef82a-fb72-46d1-b727-ea6cd8281b1c, +task-0: time="2025-03-05T02:38:37+14:00" level=info msg="mender-connect starting shell command passing process, pid: 2448864" +task-0: daemon_test.go:578: read message: type, session_id, data new, 47f6d042-bdaf-444b-a8ab-f8befd24493d, +task-0: time="2025-03-05T02:38:38+14:00" level=info msg="mender-connect starting shell command passing process, pid: 2448904" +task-0: daemon_test.go:587: read message: type, session_id, data new, b3023ced-c4ee-4b68-b1d5-9435c4e46f22, +task-0: time="2025-03-05T02:38:38+14:00" level=error msg="too many shells spawned" task-0: daemon_test.go:590: route message error: too many shells spawned -task-0: --- PASS: TestMenderShellMaxShellsLimit (2.00s) +task-0: --- PASS: TestMenderShellMaxShellsLimit (2.01s) task-0: === RUN TestMenderShellNeedsReconnect task-0: --- PASS: TestMenderShellNeedsReconnect (1.00s) task-0: === RUN TestMenderShellPostEvent @@ -1278,25 +1314,25 @@ task-0: === RUN TestMenderShellReadEvent task-0: --- PASS: TestMenderShellReadEvent (0.00s) task-0: === RUN TestOutputStatus -task-0: time="2026-04-06T06:57:10-12:00" level=info msg="mender-connect daemon vunknown" -task-0: time="2026-04-06T06:57:10-12:00" level=info msg=" status: " -task-0: time="2026-04-06T06:57:10-12:00" level=info msg=" shells: 0/2" -task-0: time="2026-04-06T06:57:10-12:00" level=info msg=" sessions: 4" -task-0: time="2026-04-06T06:57:10-12:00" level=info msg=" id:693a9827-0bb5-47a9-b697-ef1422550aa3 status:0 started:Mon Apr 6 18:56:57 +0000 UTC 2026" -task-0: time="2026-04-06T06:57:10-12:00" level=info msg=" expires:Mon Apr 6 18:59:05 +0000 UTC 2026 active:Mon Apr 6 18:56:57 +0000 UTC 2026" -task-0: time="2026-04-06T06:57:10-12:00" level=info msg=" shell:/bin/sh" -task-0: time="2026-04-06T06:57:10-12:00" level=info msg=" id:78c56609-25a2-4c28-b2a7-a2ba3e6d0159 status:0 started:Mon Apr 6 18:56:57 +0000 UTC 2026" -task-0: time="2026-04-06T06:57:10-12:00" level=info msg=" expires:Mon Apr 6 18:59:05 +0000 UTC 2026 active:Mon Apr 6 18:56:57 +0000 UTC 2026" -task-0: time="2026-04-06T06:57:10-12:00" level=info msg=" shell:/bin/sh" -task-0: time="2026-04-06T06:57:10-12:00" level=info msg=" id:c0a3fb7f-a799-49c2-a522-5dc82f36640f status:0 started:Mon Apr 6 18:57:08 +0000 UTC 2026" -task-0: time="2026-04-06T06:57:10-12:00" level=info msg=" expires:Mon Apr 6 19:14:12 +0000 UTC 2026 active:Mon Apr 6 18:57:08 +0000 UTC 2026" -task-0: time="2026-04-06T06:57:10-12:00" level=info msg=" shell:/bin/sh" -task-0: time="2026-04-06T06:57:10-12:00" level=info msg=" id:0f2690a3-986e-45c9-a49f-e8a027826956 status:0 started:Mon Apr 6 18:57:09 +0000 UTC 2026" -task-0: time="2026-04-06T06:57:10-12:00" level=info msg=" expires:Mon Apr 6 19:14:13 +0000 UTC 2026 active:Mon Apr 6 18:57:09 +0000 UTC 2026" -task-0: time="2026-04-06T06:57:10-12:00" level=info msg=" shell:/bin/sh" -task-0: time="2026-04-06T06:57:10-12:00" level=info msg=" file-transfer:" -task-0: time="2026-04-06T06:57:10-12:00" level=info msg=" total: tx/rx 0/0" -task-0: time="2026-04-06T06:57:10-12:00" level=info msg=" 1m: tx rx 0.00 0.00 (w)" +task-0: time="2025-03-05T02:38:39+14:00" level=info msg="mender-connect daemon vunknown" +task-0: time="2025-03-05T02:38:39+14:00" level=info msg=" status: " +task-0: time="2025-03-05T02:38:39+14:00" level=info msg=" shells: 0/2" +task-0: time="2025-03-05T02:38:39+14:00" level=info msg=" sessions: 4" +task-0: time="2025-03-05T02:38:39+14:00" level=info msg=" id:47f6d042-bdaf-444b-a8ab-f8befd24493d status:0 started:Tue Mar 4 12:38:38 +0000 UTC 2025" +task-0: time="2025-03-05T02:38:39+14:00" level=info msg=" expires:Tue Mar 4 12:55:42 +0000 UTC 2025 active:Tue Mar 4 12:38:38 +0000 UTC 2025" +task-0: time="2025-03-05T02:38:39+14:00" level=info msg=" shell:/bin/sh" +task-0: time="2025-03-05T02:38:39+14:00" level=info msg=" id:baf435cb-a48a-42c8-8b21-7d11c0688ed0 status:0 started:Tue Mar 4 12:38:26 +0000 UTC 2025" +task-0: time="2025-03-05T02:38:39+14:00" level=info msg=" expires:Tue Mar 4 12:40:34 +0000 UTC 2025 active:Tue Mar 4 12:38:26 +0000 UTC 2025" +task-0: time="2025-03-05T02:38:39+14:00" level=info msg=" shell:/bin/sh" +task-0: time="2025-03-05T02:38:39+14:00" level=info msg=" id:116a74b1-59cf-4e6f-bd43-1990d5a46dd9 status:0 started:Tue Mar 4 12:38:26 +0000 UTC 2025" +task-0: time="2025-03-05T02:38:39+14:00" level=info msg=" expires:Tue Mar 4 12:40:34 +0000 UTC 2025 active:Tue Mar 4 12:38:26 +0000 UTC 2025" +task-0: time="2025-03-05T02:38:39+14:00" level=info msg=" shell:/bin/sh" +task-0: time="2025-03-05T02:38:39+14:00" level=info msg=" id:54aef82a-fb72-46d1-b727-ea6cd8281b1c status:0 started:Tue Mar 4 12:38:37 +0000 UTC 2025" +task-0: time="2025-03-05T02:38:39+14:00" level=info msg=" expires:Tue Mar 4 12:55:41 +0000 UTC 2025 active:Tue Mar 4 12:38:37 +0000 UTC 2025" +task-0: time="2025-03-05T02:38:39+14:00" level=info msg=" shell:/bin/sh" +task-0: time="2025-03-05T02:38:39+14:00" level=info msg=" file-transfer:" +task-0: time="2025-03-05T02:38:39+14:00" level=info msg=" total: tx/rx 0/0" +task-0: time="2025-03-05T02:38:39+14:00" level=info msg=" 1m: tx rx 0.00 0.00 (w)" task-0: --- PASS: TestOutputStatus (0.00s) task-0: === RUN TestTimeToSweepSessions task-0: --- PASS: TestTimeToSweepSessions (4.00s) @@ -1305,33 +1341,32 @@ task-0: === RUN TestDBusEventLoop/token_not_returned_wait_forever task-0: === NAME TestDBusEventLoop task-0: daemon_test.go:797: ok: expected to run forever -task-0: --- PASS: TestDBusEventLoop (17.01s) -task-0: --- PASS: TestDBusEventLoop/stopped-gracefully (2.01s) +task-0: --- PASS: TestDBusEventLoop (16.01s) +task-0: --- PASS: TestDBusEventLoop/stopped-gracefully (1.00s) task-0: === RUN TestEventLoop task-0: === RUN TestEventLoop/stopped-gracefully task-0: === RUN TestEventLoop/run_forever task-0: === NAME TestEventLoop task-0: daemon_test.go:878: ok: expected to run forever -task-0: --- PASS: TestEventLoop (16.00s) +task-0: --- PASS: TestEventLoop (16.01s) task-0: --- PASS: TestEventLoop/stopped-gracefully (1.00s) task-0: === RUN TestMessageMainLoop task-0: daemon_test.go:924: starting mock httpd with websockets task-0: === RUN TestMessageMainLoop/normal-exit task-0: === RUN TestMessageMainLoop/route-a-message -task-0: time="2026-04-06T06:58:02-12:00" level=error msg="session 693a9827-0bb5-47a9-b697-ef1422550aa3, health check failed, connection with the client lost" -task-0: time="2026-04-06T06:58:02-12:00" level=info msg="session 693a9827-0bb5-47a9-b697-ef1422550aa3 status:0 stopping shell" -task-0: time="2026-04-06T06:58:02-12:00" level=error msg="session 78c56609-25a2-4c28-b2a7-a2ba3e6d0159, health check failed, connection with the client lost" -task-0: time="2026-04-06T06:58:02-12:00" level=info msg="session 78c56609-25a2-4c28-b2a7-a2ba3e6d0159 status:0 stopping shell" task-0: === NAME TestMessageMainLoop task-0: daemon_test.go:993: ok: expected to run forever task-0: === RUN TestMessageMainLoop/ws-nil-error -task-0: time="2026-04-06T06:58:06-12:00" level=info msg="session 693a9827-0bb5-47a9-b697-ef1422550aa3 successfully stopped" -task-0: time="2026-04-06T06:58:06-12:00" level=info msg="session 78c56609-25a2-4c28-b2a7-a2ba3e6d0159 successfully stopped" -task-0: time="2026-04-06T06:58:13-12:00" level=error msg="session c0a3fb7f-a799-49c2-a522-5dc82f36640f, health check failed, connection with the client lost" -task-0: time="2026-04-06T06:58:13-12:00" level=info msg="session c0a3fb7f-a799-49c2-a522-5dc82f36640f status:0 stopping shell" -task-0: time="2026-04-06T06:58:14-12:00" level=error msg="session 0f2690a3-986e-45c9-a49f-e8a027826956, health check failed, connection with the client lost" -task-0: time="2026-04-06T06:58:14-12:00" level=info msg="session 0f2690a3-986e-45c9-a49f-e8a027826956 status:0 stopping shell" -task-0: time="2026-04-06T06:58:17-12:00" level=info msg="session c0a3fb7f-a799-49c2-a522-5dc82f36640f successfully stopped" +task-0: time="2025-03-05T02:39:31+14:00" level=error msg="session baf435cb-a48a-42c8-8b21-7d11c0688ed0, health check failed, connection with the client lost" +task-0: time="2025-03-05T02:39:31+14:00" level=error msg="session 116a74b1-59cf-4e6f-bd43-1990d5a46dd9, health check failed, connection with the client lost" +task-0: time="2025-03-05T02:39:31+14:00" level=info msg="session 116a74b1-59cf-4e6f-bd43-1990d5a46dd9 status:0 stopping shell" +task-0: time="2025-03-05T02:39:31+14:00" level=info msg="session baf435cb-a48a-42c8-8b21-7d11c0688ed0 status:0 stopping shell" +task-0: time="2025-03-05T02:39:35+14:00" level=info msg="session baf435cb-a48a-42c8-8b21-7d11c0688ed0 successfully stopped" +task-0: time="2025-03-05T02:39:35+14:00" level=info msg="session 116a74b1-59cf-4e6f-bd43-1990d5a46dd9 successfully stopped" +task-0: time="2025-03-05T02:39:42+14:00" level=error msg="session 54aef82a-fb72-46d1-b727-ea6cd8281b1c, health check failed, connection with the client lost" +task-0: time="2025-03-05T02:39:42+14:00" level=info msg="session 54aef82a-fb72-46d1-b727-ea6cd8281b1c status:0 stopping shell" +task-0: time="2025-03-05T02:39:43+14:00" level=error msg="session 47f6d042-bdaf-444b-a8ab-f8befd24493d, health check failed, connection with the client lost" +task-0: time="2025-03-05T02:39:43+14:00" level=info msg="session 47f6d042-bdaf-444b-a8ab-f8befd24493d status:0 stopping shell" task-0: === NAME TestMessageMainLoop task-0: daemon_test.go:993: ok: expected to run forever task-0: --- PASS: TestMessageMainLoop (30.00s) @@ -1344,65 +1379,65 @@ task-0: === PAUSE TestDecreaseSpawnedShellsCount task-0: === CONT TestRouteMessage task-0: === CONT TestDecreaseSpawnedShellsCount -task-0: === RUN TestDecreaseSpawnedShellsCount/decrease_by_1_with_1 task-0: === RUN TestRouteMessage/ok,_session_router task-0: === PAUSE TestRouteMessage/ok,_session_router -task-0: === PAUSE TestDecreaseSpawnedShellsCount/decrease_by_1_with_1 -task-0: === RUN TestDecreaseSpawnedShellsCount/decrease_by_1_with_many +task-0: === RUN TestDecreaseSpawnedShellsCount/decrease_by_1_with_1 task-0: === RUN TestRouteMessage/error,_session_router -task-0: === PAUSE TestDecreaseSpawnedShellsCount/decrease_by_1_with_many task-0: === PAUSE TestRouteMessage/error,_session_router task-0: === CONT TestRouteMessage/ok,_session_router +task-0: === PAUSE TestDecreaseSpawnedShellsCount/decrease_by_1_with_1 +task-0: === CONT TestRouteMessage/error,_session_router +task-0: === RUN TestDecreaseSpawnedShellsCount/decrease_by_1_with_many +task-0: === PAUSE TestDecreaseSpawnedShellsCount/decrease_by_1_with_many task-0: === RUN TestDecreaseSpawnedShellsCount/decrease_by_many_with_many task-0: === PAUSE TestDecreaseSpawnedShellsCount/decrease_by_many_with_many task-0: === RUN TestDecreaseSpawnedShellsCount/decrease_by_many_with_some task-0: === PAUSE TestDecreaseSpawnedShellsCount/decrease_by_many_with_some task-0: === RUN TestDecreaseSpawnedShellsCount/decrease_by_some_with_many -task-0: === CONT TestRouteMessage/error,_session_router task-0: === PAUSE TestDecreaseSpawnedShellsCount/decrease_by_some_with_many task-0: === RUN TestDecreaseSpawnedShellsCount/decrease_by_many_with_0 task-0: === PAUSE TestDecreaseSpawnedShellsCount/decrease_by_many_with_0 task-0: === RUN TestDecreaseSpawnedShellsCount/decrease_by_0_with_0 task-0: === PAUSE TestDecreaseSpawnedShellsCount/decrease_by_0_with_0 -task-0: === CONT TestDecreaseSpawnedShellsCount/decrease_by_1_with_1 -task-0: === CONT TestDecreaseSpawnedShellsCount/decrease_by_some_with_many -task-0: === CONT TestDecreaseSpawnedShellsCount/decrease_by_many_with_many -task-0: === CONT TestDecreaseSpawnedShellsCount/decrease_by_1_with_many task-0: --- PASS: TestRouteMessage (0.00s) task-0: --- PASS: TestRouteMessage/ok,_session_router (0.00s) task-0: --- PASS: TestRouteMessage/error,_session_router (0.00s) +task-0: === CONT TestDecreaseSpawnedShellsCount/decrease_by_1_with_1 task-0: === CONT TestDecreaseSpawnedShellsCount/decrease_by_0_with_0 +task-0: === CONT TestDecreaseSpawnedShellsCount/decrease_by_some_with_many +task-0: time="2025-03-05T02:39:45+14:00" level=warning msg="can't decrement shellsSpawned count: it is 0." task-0: === CONT TestDecreaseSpawnedShellsCount/decrease_by_many_with_some -task-0: time="2026-04-06T06:58:18-12:00" level=warning msg="can't decrement shellsSpawned count: it is 0." +task-0: === CONT TestDecreaseSpawnedShellsCount/decrease_by_many_with_many task-0: === CONT TestDecreaseSpawnedShellsCount/decrease_by_many_with_0 -task-0: time="2026-04-06T06:58:18-12:00" level=warning msg="can't decrement shellsSpawned count: it is 0." +task-0: === CONT TestDecreaseSpawnedShellsCount/decrease_by_1_with_many +task-0: time="2025-03-05T02:39:45+14:00" level=warning msg="can't decrement shellsSpawned count: it is 0." task-0: --- PASS: TestDecreaseSpawnedShellsCount (0.00s) task-0: --- PASS: TestDecreaseSpawnedShellsCount/decrease_by_1_with_1 (0.00s) -task-0: --- PASS: TestDecreaseSpawnedShellsCount/decrease_by_some_with_many (0.00s) -task-0: --- PASS: TestDecreaseSpawnedShellsCount/decrease_by_many_with_many (0.00s) -task-0: --- PASS: TestDecreaseSpawnedShellsCount/decrease_by_1_with_many (0.00s) task-0: --- PASS: TestDecreaseSpawnedShellsCount/decrease_by_0_with_0 (0.00s) +task-0: --- PASS: TestDecreaseSpawnedShellsCount/decrease_by_many_with_many (0.00s) task-0: --- PASS: TestDecreaseSpawnedShellsCount/decrease_by_many_with_some (0.00s) task-0: --- PASS: TestDecreaseSpawnedShellsCount/decrease_by_many_with_0 (0.00s) +task-0: --- PASS: TestDecreaseSpawnedShellsCount/decrease_by_1_with_many (0.00s) +task-0: --- PASS: TestDecreaseSpawnedShellsCount/decrease_by_some_with_many (0.00s) task-0: PASS -task-0: ok github.com/mendersoftware/mender-connect/app 97.209s +task-0: ok github.com/mendersoftware/mender-connect/app 96.150s task-0: ? github.com/mendersoftware/mender-connect/cli [no test files] task-0: === RUN TestBusGet -task-0: --- PASS: TestBusGet (0.00s) +task-0: --- PASS: TestBusGet (0.01s) task-0: === RUN TestBusProxyNew task-0: === RUN TestBusProxyNew/ok task-0: === RUN TestBusProxyNew/ko,_wrong_path task-0: -task-0: (process:3124985): GLib-GIO-CRITICAL **: 06:56:43.753: g_dbus_proxy_new_sync: assertion 'g_variant_is_object_path (object_path)' failed +task-0: (process:2447190): GLib-GIO-CRITICAL **: 02:38:20.526: g_dbus_proxy_new_sync: assertion 'g_variant_is_object_path (object_path)' failed task-0: --- PASS: TestBusProxyNew (0.00s) task-0: --- PASS: TestBusProxyNew/ok (0.00s) task-0: --- PASS: TestBusProxyNew/ko,_wrong_path (0.00s) task-0: === RUN TestBusProxyCall -task-0: === RUN TestBusProxyCall/ok task-0: === RUN TestBusProxyCall/ko,_already_handled_Hello_message +task-0: === RUN TestBusProxyCall/ok task-0: --- PASS: TestBusProxyCall (0.00s) -task-0: --- PASS: TestBusProxyCall/ok (0.00s) task-0: --- PASS: TestBusProxyCall/ko,_already_handled_Hello_message (0.00s) +task-0: --- PASS: TestBusProxyCall/ok (0.00s) task-0: === RUN TestMainLoop task-0: --- PASS: TestMainLoop (0.10s) task-0: === RUN TestWaitForSignal @@ -1415,7 +1450,7 @@ task-0: === RUN TestError task-0: --- PASS: TestError (0.00s) task-0: PASS -task-0: ok github.com/mendersoftware/mender-connect/client/dbus 0.214s +task-0: ok github.com/mendersoftware/mender-connect/client/dbus 0.407s task-0: ? github.com/mendersoftware/mender-connect/client/dbus/mocks [no test files] task-0: ? github.com/mendersoftware/mender-connect/client/dbus/test [no test files] task-0: === RUN TestNewAuthClientDefaultDBusAPI @@ -1437,11 +1472,11 @@ task-0: --- PASS: TestAuthClientGetJWTToken/ok (0.00s) task-0: --- PASS: TestAuthClientGetJWTToken/error (0.00s) task-0: === RUN TestAuthClientFetchJWTToken -task-0: === RUN TestAuthClientFetchJWTToken/ok task-0: === RUN TestAuthClientFetchJWTToken/error +task-0: === RUN TestAuthClientFetchJWTToken/ok task-0: --- PASS: TestAuthClientFetchJWTToken (0.00s) -task-0: --- PASS: TestAuthClientFetchJWTToken/ok (0.00s) task-0: --- PASS: TestAuthClientFetchJWTToken/error (0.00s) +task-0: --- PASS: TestAuthClientFetchJWTToken/ok (0.00s) task-0: === RUN TestAuthClientWaitForJwtTokenStateChange task-0: === RUN TestAuthClientWaitForJwtTokenStateChange/ok-no-params task-0: === RUN TestAuthClientWaitForJwtTokenStateChange/ok-with-params @@ -1451,54 +1486,54 @@ task-0: --- PASS: TestAuthClientWaitForJwtTokenStateChange/ok-with-params (0.00s) task-0: --- PASS: TestAuthClientWaitForJwtTokenStateChange/error (0.00s) task-0: PASS -task-0: ok github.com/mendersoftware/mender-connect/client/mender 0.009s +task-0: ok github.com/mendersoftware/mender-connect/client/mender 0.202s task-0: ? github.com/mendersoftware/mender-connect/client/mender/mocks [no test files] task-0: === RUN Test_readConfigFile_noFile_returnsError task-0: --- PASS: Test_readConfigFile_noFile_returnsError (0.00s) task-0: === RUN Test_readConfigFile_brokenContent_returnsError -task-0: time="2026-04-06T06:56:43-12:00" level=error msg="Error loading configuration from file: /tmp/mendertest3448373602/mender-connect.conf (Error parsing mender configuration file: invalid character '\"' after object key:value pair)" -task-0: time="2026-04-06T06:56:43-12:00" level=error msg="Error loading configuration from file: /tmp/mendertest3448373602/mender-connect.conf (Error parsing mender configuration file: invalid character '\"' after object key:value pair)" +task-0: time="2025-03-05T02:38:20+14:00" level=error msg="Error loading configuration from file: /tmp/mendertest2427039223/mender-connect.conf (Error parsing mender configuration file: invalid character '\"' after object key:value pair)" +task-0: time="2025-03-05T02:38:20+14:00" level=error msg="Error loading configuration from file: /tmp/mendertest2427039223/mender-connect.conf (Error parsing mender configuration file: invalid character '\"' after object key:value pair)" task-0: --- PASS: Test_readConfigFile_brokenContent_returnsError (0.00s) task-0: === RUN Test_LoadConfig_correctConfFile_returnsConfiguration -task-0: time="2026-04-06T06:56:43-12:00" level=info msg="Loaded configuration file: /tmp/mendertest2321725092/mender-connect.conf" -task-0: time="2026-04-06T06:56:43-12:00" level=warning msg="ShellCommand is empty, defaulting to /bin/sh" -task-0: time="2026-04-06T06:56:43-12:00" level=warning msg="ShellArguments is empty, defaulting to [--login]" -task-0: time="2026-04-06T06:56:43-12:00" level=warning msg="both ExpireAfter and ExpireAfterIdle specified." -task-0: time="2026-04-06T06:56:43-12:00" level=info msg="Loaded configuration file: /tmp/mendertest2321725092/mender-connect.conf" -task-0: time="2026-04-06T06:56:43-12:00" level=warning msg="ShellCommand is empty, defaulting to /bin/sh" -task-0: time="2026-04-06T06:56:43-12:00" level=warning msg="ShellArguments is empty, defaulting to [--login]" -task-0: time="2026-04-06T06:56:43-12:00" level=warning msg="both ExpireAfter and ExpireAfterIdle specified." +task-0: time="2025-03-05T02:38:20+14:00" level=info msg="Loaded configuration file: /tmp/mendertest3584242311/mender-connect.conf" +task-0: time="2025-03-05T02:38:20+14:00" level=warning msg="ShellCommand is empty, defaulting to /bin/sh" +task-0: time="2025-03-05T02:38:20+14:00" level=warning msg="ShellArguments is empty, defaulting to [--login]" +task-0: time="2025-03-05T02:38:20+14:00" level=warning msg="both ExpireAfter and ExpireAfterIdle specified." +task-0: time="2025-03-05T02:38:20+14:00" level=info msg="Loaded configuration file: /tmp/mendertest3584242311/mender-connect.conf" +task-0: time="2025-03-05T02:38:20+14:00" level=warning msg="ShellCommand is empty, defaulting to /bin/sh" +task-0: time="2025-03-05T02:38:20+14:00" level=warning msg="ShellArguments is empty, defaulting to [--login]" +task-0: time="2025-03-05T02:38:20+14:00" level=warning msg="both ExpireAfter and ExpireAfterIdle specified." task-0: --- PASS: Test_LoadConfig_correctConfFile_returnsConfiguration (0.00s) task-0: === RUN TestConfigurationMergeSettings -task-0: time="2026-04-06T06:56:43-12:00" level=info msg="Loaded configuration file: fallback.config" -task-0: time="2026-04-06T06:56:43-12:00" level=info msg="Loaded configuration file: main.config" +task-0: time="2025-03-05T02:38:20+14:00" level=info msg="Loaded configuration file: fallback.config" +task-0: time="2025-03-05T02:38:20+14:00" level=info msg="Loaded configuration file: main.config" task-0: --- PASS: TestConfigurationMergeSettings (0.00s) task-0: === RUN Test_LoadConfig_various_errors -task-0: time="2026-04-06T06:56:43-12:00" level=info msg="Loaded configuration file: /tmp/mendertest800855653/mender-connect.conf" -task-0: time="2026-04-06T06:56:43-12:00" level=warning msg="ShellArguments is empty, defaulting to [--login]" -task-0: time="2026-04-06T06:56:43-12:00" level=info msg="Loaded configuration file: /tmp/mendertest800855653/mender-connect.conf" -task-0: time="2026-04-06T06:56:43-12:00" level=warning msg="ShellArguments is empty, defaulting to [--login]" -task-0: time="2026-04-06T06:56:43-12:00" level=info msg="Loaded configuration file: /tmp/mendertest800855653/mender-connect.conf" -task-0: time="2026-04-06T06:56:43-12:00" level=warning msg="ShellArguments is empty, defaulting to [--login]" -task-0: time="2026-04-06T06:56:43-12:00" level=info msg="Loaded configuration file: /tmp/mendertest800855653/mender-connect.conf" -task-0: time="2026-04-06T06:56:43-12:00" level=warning msg="ShellArguments is empty, defaulting to [--login]" -task-0: time="2026-04-06T06:56:43-12:00" level=info msg="Loaded configuration file: /tmp/mendertest800855653/mender-connect.conf" -task-0: time="2026-04-06T06:56:43-12:00" level=warning msg="ShellArguments is empty, defaulting to [--login]" -task-0: time="2026-04-06T06:56:43-12:00" level=error msg="ShellCommand /bin/ls is not present in /etc/shells" -task-0: time="2026-04-06T06:56:43-12:00" level=error msg="Error loading configuration from file: /tmp/mendertest800855653/mender-connect.conf (Error parsing mender configuration file: invalid character '\"' after object key:value pair)" -task-0: time="2026-04-06T06:56:43-12:00" level=error msg="Error loading configuration from file: /tmp/mendertest800855653/mender-connect.conf (Error parsing config file: json: cannot unmarshal number into Go struct field MenderShellConfigFromFile.ShellCommand of type string)" -task-0: --- PASS: Test_LoadConfig_various_errors (0.01s) +task-0: time="2025-03-05T02:38:20+14:00" level=info msg="Loaded configuration file: /tmp/mendertest322231840/mender-connect.conf" +task-0: time="2025-03-05T02:38:20+14:00" level=warning msg="ShellArguments is empty, defaulting to [--login]" +task-0: time="2025-03-05T02:38:20+14:00" level=info msg="Loaded configuration file: /tmp/mendertest322231840/mender-connect.conf" +task-0: time="2025-03-05T02:38:20+14:00" level=warning msg="ShellArguments is empty, defaulting to [--login]" +task-0: time="2025-03-05T02:38:21+14:00" level=info msg="Loaded configuration file: /tmp/mendertest322231840/mender-connect.conf" +task-0: time="2025-03-05T02:38:21+14:00" level=warning msg="ShellArguments is empty, defaulting to [--login]" +task-0: time="2025-03-05T02:38:21+14:00" level=info msg="Loaded configuration file: /tmp/mendertest322231840/mender-connect.conf" +task-0: time="2025-03-05T02:38:21+14:00" level=warning msg="ShellArguments is empty, defaulting to [--login]" +task-0: time="2025-03-05T02:38:21+14:00" level=info msg="Loaded configuration file: /tmp/mendertest322231840/mender-connect.conf" +task-0: time="2025-03-05T02:38:21+14:00" level=warning msg="ShellArguments is empty, defaulting to [--login]" +task-0: time="2025-03-05T02:38:21+14:00" level=error msg="ShellCommand /bin/ls is not present in /etc/shells" +task-0: time="2025-03-05T02:38:21+14:00" level=error msg="Error loading configuration from file: /tmp/mendertest322231840/mender-connect.conf (Error parsing mender configuration file: invalid character '\"' after object key:value pair)" +task-0: time="2025-03-05T02:38:21+14:00" level=error msg="Error loading configuration from file: /tmp/mendertest322231840/mender-connect.conf (Error parsing config file: json: cannot unmarshal number into Go struct field MenderShellConfigFromFile.ShellCommand of type string)" +task-0: --- PASS: Test_LoadConfig_various_errors (1.01s) task-0: === RUN TestConfigurationNeitherFileExistsIsNotError -task-0: time="2026-04-06T06:56:43-12:00" level=info msg="No configuration files present. Using defaults" +task-0: time="2025-03-05T02:38:21+14:00" level=info msg="No configuration files present. Using defaults" task-0: --- PASS: TestConfigurationNeitherFileExistsIsNotError (0.00s) task-0: === RUN TestShellArgumentsEmptyDefaults -task-0: time="2026-04-06T06:56:43-12:00" level=info msg="Loaded configuration file: main.config" -task-0: time="2026-04-06T06:56:43-12:00" level=warning msg="ShellArguments is empty, defaulting to [--login]" -task-0: time="2026-04-06T06:56:43-12:00" level=info msg="Loaded configuration file: main.config" -task-0: time="2026-04-06T06:56:43-12:00" level=info msg="Loaded configuration file: main.config" -task-0: --- PASS: TestShellArgumentsEmptyDefaults (0.00s) +task-0: time="2025-03-05T02:38:21+14:00" level=info msg="Loaded configuration file: main.config" +task-0: time="2025-03-05T02:38:21+14:00" level=warning msg="ShellArguments is empty, defaulting to [--login]" +task-0: time="2025-03-05T02:38:21+14:00" level=info msg="Loaded configuration file: main.config" +task-0: time="2025-03-05T02:38:21+14:00" level=info msg="Loaded configuration file: main.config" +task-0: --- PASS: TestShellArgumentsEmptyDefaults (0.16s) task-0: === RUN TestServerArgumentsDeprecated -task-0: --- PASS: TestServerArgumentsDeprecated (0.01s) +task-0: --- PASS: TestServerArgumentsDeprecated (0.66s) task-0: === RUN TestGetStateDirPath task-0: --- PASS: TestGetStateDirPath (0.00s) task-0: === RUN TestGetConfDirPath @@ -1513,14 +1548,14 @@ task-0: === RUN TestMenderShowVersion task-0: --- PASS: TestMenderShowVersion (0.00s) task-0: PASS -task-0: ok github.com/mendersoftware/mender-connect/config 0.020s +task-0: ok github.com/mendersoftware/mender-connect/config 2.159s task-0: === RUN TestNewConnection task-0: connection_test.go:97: starting mock httpd with websockets task-0: --- PASS: TestNewConnection (0.00s) task-0: === RUN TestConnection_ReadMessage task-0: connection_test.go:126: starting mock httpd with websockets task-0: connection_test.go:143: read: 'hello' -task-0: --- PASS: TestConnection_ReadMessage (1.00s) +task-0: --- PASS: TestConnection_ReadMessage (1.01s) task-0: === RUN TestConnection_WriteMessage task-0: connection_test.go:149: starting mock httpd with websockets task-0: --- PASS: TestConnection_WriteMessage (1.00s) @@ -1528,54 +1563,36 @@ task-0: connection_test.go:174: starting mock httpd with websockets task-0: --- PASS: TestConnection_Close (1.00s) task-0: PASS -task-0: ok github.com/mendersoftware/mender-connect/connection 3.023s +task-0: ok github.com/mendersoftware/mender-connect/connection 3.195s task-0: === RUN TestGetWriteTimeout task-0: --- PASS: TestGetWriteTimeout (0.00s) task-0: === RUN TestGetWsScheme task-0: --- PASS: TestGetWsScheme (0.00s) task-0: === RUN TestConnect +task-0: 2025/03/05 02:38:22 [130 163 104 100 114 129 165 112 114 111 116 111 205 0 1 164 98 111 100 121 196 5 100 117 109 109 121] task-0: --- PASS: TestConnect (2.01s) -task-0: 2026/04/06 06:56:45 [130 163 104 100 114 129 165 112 114 111 116 111 205 0 1 164 98 111 100 121 196 5 100 117 109 109 121] task-0: === RUN TestReconnect -task-0: 2026/04/06 06:56:45 http: panic serving 127.0.0.1:41212: websocket: close 1006 (abnormal closure): unexpected EOF -task-0: goroutine 18 [running]: +task-0: 2025/03/05 02:38:22 http: panic serving 127.0.0.1:57948: websocket: close 1006 (abnormal closure): unexpected EOF +task-0: goroutine 19 [running]: task-0: net/http.(*conn).serve.func1() task-0: /usr/lib/go-1.24/src/net/http/server.go:1947 +0xbe task-0: panic({0x760620?, 0xa631c0?}) task-0: /usr/lib/go-1.24/src/runtime/panic.go:787 +0x132 -task-0: github.com/mendersoftware/mender-connect/connectionmanager.newWebsocketServer.func2({0x853988?, 0xc00026e000?}, 0xc000259b38?) +task-0: github.com/mendersoftware/mender-connect/connectionmanager.newWebsocketServer.func2({0x853988?, 0xc000150000?}, 0xc00013bb38?) task-0: /build/reproducible-path/mender-connect-2.3.0+ds1/_build/src/github.com/mendersoftware/mender-connect/connectionmanager/connectionmanager_test.go:63 +0x1c5 -task-0: net/http.HandlerFunc.ServeHTTP(0xc0000fe140?, {0x853988?, 0xc00026e000?}, 0x673056?) +task-0: net/http.HandlerFunc.ServeHTTP(0xc0001c4140?, {0x853988?, 0xc000150000?}, 0x673056?) task-0: /usr/lib/go-1.24/src/net/http/server.go:2294 +0x29 -task-0: net/http.(*ServeMux).ServeHTTP(0x473d59?, {0x853988, 0xc00026e000}, 0xc000250000) +task-0: net/http.(*ServeMux).ServeHTTP(0x473d59?, {0x853988, 0xc000150000}, 0xc000132000) task-0: /usr/lib/go-1.24/src/net/http/server.go:2822 +0x1c4 -task-0: net/http.serverHandler.ServeHTTP({0xc0002340c0?}, {0x853988?, 0xc00026e000?}, 0x1?) +task-0: net/http.serverHandler.ServeHTTP({0xc00011a0c0?}, {0x853988?, 0xc000150000?}, 0x1?) task-0: /usr/lib/go-1.24/src/net/http/server.go:3301 +0x8e -task-0: net/http.(*conn).serve(0xc000238000, {0x853ce8, 0xc0001d2930}) +task-0: net/http.(*conn).serve(0xc00011e000, {0x853ce8, 0xc000224930}) task-0: /usr/lib/go-1.24/src/net/http/server.go:2102 +0x625 -task-0: created by net/http.(*Server).Serve in goroutine 10 +task-0: created by net/http.(*Server).Serve in goroutine 39 task-0: /usr/lib/go-1.24/src/net/http/server.go:3454 +0x485 task-0: --- PASS: TestReconnect (2.01s) task-0: === RUN TestConnectFailed task-0: --- PASS: TestConnectFailed (0.00s) -task-0: 2026/04/06 06:56:47 http: panic serving 127.0.0.1:41220: read tcp 127.0.0.1:8999->127.0.0.1:41220: read: connection reset by peer -task-0: goroutine 50 [running]: -task-0: net/http.(*conn).serve.func1() -task-0: /usr/lib/go-1.24/src/net/http/server.go:1947 +0xbe -task-0: panic({0x782260?, 0xc00030e050?}) -task-0: /usr/lib/go-1.24/src/runtime/panic.go:787 +0x132 -task-0: github.com/mendersoftware/mender-connect/connectionmanager.newWebsocketServer.func2({0x853988?, 0xc0000002a0?}, 0xc0000c0b38?) -task-0: /build/reproducible-path/mender-connect-2.3.0+ds1/_build/src/github.com/mendersoftware/mender-connect/connectionmanager/connectionmanager_test.go:63 +0x1c5 -task-0: net/http.HandlerFunc.ServeHTTP(0xc000144080?, {0x853988?, 0xc0000002a0?}, 0x673056?) -task-0: /usr/lib/go-1.24/src/net/http/server.go:2294 +0x29 -task-0: net/http.(*ServeMux).ServeHTTP(0x473d59?, {0x853988, 0xc0000002a0}, 0xc00019e8c0) -task-0: /usr/lib/go-1.24/src/net/http/server.go:2822 +0x1c4 -task-0: net/http.serverHandler.ServeHTTP({0xc0001d2c90?}, {0x853988?, 0xc0000002a0?}, 0x1?) -task-0: /usr/lib/go-1.24/src/net/http/server.go:3301 +0x8e -task-0: net/http.(*conn).serve(0xc000308000, {0x853ce8, 0xc000120360}) -task-0: /usr/lib/go-1.24/src/net/http/server.go:2102 +0x625 -task-0: created by net/http.(*Server).Serve in goroutine 36 -task-0: /usr/lib/go-1.24/src/net/http/server.go:3454 +0x485 task-0: === RUN TestCloseFailed task-0: --- PASS: TestCloseFailed (0.00s) task-0: === RUN TestWriteFailed @@ -1585,16 +1602,34 @@ task-0: === RUN TestResetBackoff task-0: --- PASS: TestResetBackoff (0.00s) task-0: === RUN TestMaxBackoff +task-0: 2025/03/05 02:38:24 http: panic serving 127.0.0.1:57960: read tcp 127.0.0.1:8999->127.0.0.1:57960: read: connection reset by peer +task-0: goroutine 11 [running]: +task-0: net/http.(*conn).serve.func1() +task-0: /usr/lib/go-1.24/src/net/http/server.go:1947 +0xbe +task-0: panic({0x782260?, 0xc000292000?}) +task-0: /usr/lib/go-1.24/src/runtime/panic.go:787 +0x132 +task-0: github.com/mendersoftware/mender-connect/connectionmanager.newWebsocketServer.func2({0x853988?, 0xc0000000e0?}, 0xc000096b38?) +task-0: /build/reproducible-path/mender-connect-2.3.0+ds1/_build/src/github.com/mendersoftware/mender-connect/connectionmanager/connectionmanager_test.go:63 +0x1c5 +task-0: net/http.HandlerFunc.ServeHTTP(0xc0000c6140?, {0x853988?, 0xc0000000e0?}, 0x673056?) +task-0: /usr/lib/go-1.24/src/net/http/server.go:2294 +0x29 +task-0: net/http.(*ServeMux).ServeHTTP(0x473d59?, {0x853988, 0xc0000000e0}, 0xc0000be280) +task-0: /usr/lib/go-1.24/src/net/http/server.go:2822 +0x1c4 +task-0: net/http.serverHandler.ServeHTTP({0xc0000b8750?}, {0x853988?, 0xc0000000e0?}, 0x1?) +task-0: /usr/lib/go-1.24/src/net/http/server.go:3301 +0x8e +task-0: net/http.(*conn).serve(0xc0000b4480, {0x853ce8, 0xc0000b8660}) +task-0: /usr/lib/go-1.24/src/net/http/server.go:2102 +0x625 +task-0: created by net/http.(*Server).Serve in goroutine 9 +task-0: /usr/lib/go-1.24/src/net/http/server.go:3454 +0x485 task-0: --- PASS: TestMaxBackoff (0.00s) task-0: PASS -task-0: ok github.com/mendersoftware/mender-connect/connectionmanager 4.027s +task-0: ok github.com/mendersoftware/mender-connect/connectionmanager 4.196s task-0: === RUN TestGetCounters -task-0: --- PASS: TestGetCounters (8.04s) +task-0: --- PASS: TestGetCounters (8.00s) task-0: === RUN TestUpdateCounters -task-0: limits_test.go:160: after 18s; +{24576 24576 1663.3268261488847 1663.3268261488847 {14009887400317047325 8042176281 0x872d80} {14009887400317047423 8042176383 0x872d80}} 1663.00 vs 1663.33=0.33 1663.00 vs 1663.33=0.33 -task-0: --- PASS: TestUpdateCounters (20.02s) +task-0: limits_test.go:160: after 18s; +{24576 24576 1663.3268261488847 1663.3268261488847 {13972940048035704482 8165643228 0x872d80} {13972940048035705353 8165643881 0x872d80}} 1663.00 vs 1663.33=0.33 1663.00 vs 1663.33=0.33 +task-0: --- PASS: TestUpdateCounters (20.00s) task-0: === RUN TestPermit_PreserveOwnerGroup -task-0: --- PASS: TestPermit_PreserveOwnerGroup (0.00s) +task-0: --- PASS: TestPermit_PreserveOwnerGroup (0.02s) task-0: === RUN TestPermit_PreserveModes task-0: === RUN TestPermit_PreserveModes/owner-group-other_mode task-0: === RUN TestPermit_PreserveModes/owner-group-other_mode_+s @@ -1654,11 +1689,11 @@ task-0: --- PASS: TestPermit_UploadFile/suid_bit_not_allowed_in_modes (0.00s) task-0: --- PASS: TestPermit_UploadFile/suid_bit_allowed_in_modes (0.00s) task-0: PASS -task-0: ok github.com/mendersoftware/mender-connect/limits/filetransfer 28.066s +task-0: ok github.com/mendersoftware/mender-connect/limits/filetransfer 28.194s task-0: === RUN TestMenderShellProcPs task-0: --- PASS: TestMenderShellProcPs (4.02s) task-0: PASS -task-0: ok github.com/mendersoftware/mender-connect/procps 4.022s +task-0: ok github.com/mendersoftware/mender-connect/procps 4.195s task-0: === RUN TestFileTransferUpload task-0: === PAUSE TestFileTransferUpload task-0: === RUN TestFileTransferDownload @@ -1672,19 +1707,19 @@ task-0: === RUN TestRunCommand task-0: --- PASS: TestRunCommand (0.00s) task-0: === RUN TestPortForwardHandler -task-0: time="2026-04-06T06:56:43-12:00" level=error msg="portForwardHandler(unknown message type\ngithub.com/mendersoftware/mender-connect/session.init\n\t:1\nruntime.doInit1\n\t/usr/lib/go-1.24/src/runtime/proc.go:7350\nruntime.doInit\n\t/usr/lib/go-1.24/src/runtime/proc.go:7317\nruntime.main\n\t/usr/lib/go-1.24/src/runtime/proc.go:254\nruntime.goexit\n\t/usr/lib/go-1.24/src/runtime/asm_amd64.s:1700)" -task-0: time="2026-04-06T06:56:43-12:00" level=info msg="port-forward: new session/c1: tcp/localhost:41751" -task-0: time="2026-04-06T06:56:43-12:00" level=error msg="portForwardHandler(dial tcp 127.0.0.1:41751: connect: connection refused)" -task-0: time="2026-04-06T06:56:43-12:00" level=info msg="port-forward: new session/c1: dummy/localhost:33491" -task-0: time="2026-04-06T06:56:43-12:00" level=error msg="portForwardHandler(unknown protocol: dummy\ngithub.com/mendersoftware/mender-connect/session.(*MenderPortForwarder).Connect\n\t/build/reproducible-path/mender-connect-2.3.0+ds1/_build/src/github.com/mendersoftware/mender-connect/session/portforward.go:74\ngithub.com/mendersoftware/mender-connect/session.(*PortForwardHandler).portForwardHandlerNew\n\t/build/reproducible-path/mender-connect-2.3.0+ds1/_build/src/github.com/mendersoftware/mender-connect/session/portforward.go:276\ngithub.com/mendersoftware/mender-connect/session.(*PortForwardHandler).ServeProtoMsg\n\t/build/reproducible-path/mender-connect-2.3.0+ds1/_build/src/github.com/mendersoftware/mender-connect/session/portforward.go:205\ngithub.com/mendersoftware/mender-connect/session.TestPortForwardHandler\n\t/build/reproducible-path/mender-connect-2.3.0+ds1/_build/src/github.com/mendersoftware/mender-connect/session/portforward_test.go:120\ntesting.tRunner\n\t/usr/lib/go-1.24/src/testing/testing.go:1792\nruntime.goexit\n\t/usr/lib/go-1.24/src/runtime/asm_amd64.s:1700)" -task-0: time="2026-04-06T06:56:43-12:00" level=error msg="portForwardHandler(unknown connection\ngithub.com/mendersoftware/mender-connect/session.init\n\t:1\nruntime.doInit1\n\t/usr/lib/go-1.24/src/runtime/proc.go:7350\nruntime.doInit\n\t/usr/lib/go-1.24/src/runtime/proc.go:7317\nruntime.main\n\t/usr/lib/go-1.24/src/runtime/proc.go:254\nruntime.goexit\n\t/usr/lib/go-1.24/src/runtime/asm_amd64.s:1700)" -task-0: time="2026-04-06T06:56:43-12:00" level=error msg="portForwardHandler(unknown connection\ngithub.com/mendersoftware/mender-connect/session.init\n\t:1\nruntime.doInit1\n\t/usr/lib/go-1.24/src/runtime/proc.go:7350\nruntime.doInit\n\t/usr/lib/go-1.24/src/runtime/proc.go:7317\nruntime.main\n\t/usr/lib/go-1.24/src/runtime/proc.go:254\nruntime.goexit\n\t/usr/lib/go-1.24/src/runtime/asm_amd64.s:1700)" +task-0: time="2025-03-05T02:38:20+14:00" level=error msg="portForwardHandler(unknown message type\ngithub.com/mendersoftware/mender-connect/session.init\n\t:1\nruntime.doInit1\n\t/usr/lib/go-1.24/src/runtime/proc.go:7350\nruntime.doInit\n\t/usr/lib/go-1.24/src/runtime/proc.go:7317\nruntime.main\n\t/usr/lib/go-1.24/src/runtime/proc.go:254\nruntime.goexit\n\t/usr/lib/go-1.24/src/runtime/asm_amd64.s:1700)" +task-0: time="2025-03-05T02:38:20+14:00" level=info msg="port-forward: new session/c1: tcp/localhost:43205" +task-0: time="2025-03-05T02:38:20+14:00" level=error msg="portForwardHandler(dial tcp 127.0.0.1:43205: connect: connection refused)" +task-0: time="2025-03-05T02:38:20+14:00" level=info msg="port-forward: new session/c1: dummy/localhost:33297" +task-0: time="2025-03-05T02:38:20+14:00" level=error msg="portForwardHandler(unknown protocol: dummy\ngithub.com/mendersoftware/mender-connect/session.(*MenderPortForwarder).Connect\n\t/build/reproducible-path/mender-connect-2.3.0+ds1/_build/src/github.com/mendersoftware/mender-connect/session/portforward.go:74\ngithub.com/mendersoftware/mender-connect/session.(*PortForwardHandler).portForwardHandlerNew\n\t/build/reproducible-path/mender-connect-2.3.0+ds1/_build/src/github.com/mendersoftware/mender-connect/session/portforward.go:276\ngithub.com/mendersoftware/mender-connect/session.(*PortForwardHandler).ServeProtoMsg\n\t/build/reproducible-path/mender-connect-2.3.0+ds1/_build/src/github.com/mendersoftware/mender-connect/session/portforward.go:205\ngithub.com/mendersoftware/mender-connect/session.TestPortForwardHandler\n\t/build/reproducible-path/mender-connect-2.3.0+ds1/_build/src/github.com/mendersoftware/mender-connect/session/portforward_test.go:120\ntesting.tRunner\n\t/usr/lib/go-1.24/src/testing/testing.go:1792\nruntime.goexit\n\t/usr/lib/go-1.24/src/runtime/asm_amd64.s:1700)" +task-0: time="2025-03-05T02:38:20+14:00" level=error msg="portForwardHandler(unknown connection\ngithub.com/mendersoftware/mender-connect/session.init\n\t:1\nruntime.doInit1\n\t/usr/lib/go-1.24/src/runtime/proc.go:7350\nruntime.doInit\n\t/usr/lib/go-1.24/src/runtime/proc.go:7317\nruntime.main\n\t/usr/lib/go-1.24/src/runtime/proc.go:254\nruntime.goexit\n\t/usr/lib/go-1.24/src/runtime/asm_amd64.s:1700)" +task-0: time="2025-03-05T02:38:20+14:00" level=error msg="portForwardHandler(unknown connection\ngithub.com/mendersoftware/mender-connect/session.init\n\t:1\nruntime.doInit1\n\t/usr/lib/go-1.24/src/runtime/proc.go:7350\nruntime.doInit\n\t/usr/lib/go-1.24/src/runtime/proc.go:7317\nruntime.main\n\t/usr/lib/go-1.24/src/runtime/proc.go:254\nruntime.goexit\n\t/usr/lib/go-1.24/src/runtime/asm_amd64.s:1700)" task-0: --- PASS: TestPortForwardHandler (0.00s) task-0: === RUN TestPortForwardHandlerSuccessfulConnection -task-0: time="2026-04-06T06:56:45-12:00" level=info msg="port-forward: new session/c1: tcp/localhost:44119" -task-0: time="2026-04-06T06:56:46-12:00" level=info msg="port-forward: new session/c2: tcp/localhost:44119" -task-0: time="2026-04-06T06:56:46-12:00" level=info msg="port-forward: stop session/c1" -task-0: time="2026-04-06T06:56:46-12:00" level=error msg="portForwardHandler(unknown connection\ngithub.com/mendersoftware/mender-connect/session.init\n\t:1\nruntime.doInit1\n\t/usr/lib/go-1.24/src/runtime/proc.go:7350\nruntime.doInit\n\t/usr/lib/go-1.24/src/runtime/proc.go:7317\nruntime.main\n\t/usr/lib/go-1.24/src/runtime/proc.go:254\nruntime.goexit\n\t/usr/lib/go-1.24/src/runtime/asm_amd64.s:1700)" +task-0: time="2025-03-05T02:38:22+14:00" level=info msg="port-forward: new session/c1: tcp/localhost:34273" +task-0: time="2025-03-05T02:38:22+14:00" level=info msg="port-forward: new session/c2: tcp/localhost:34273" +task-0: time="2025-03-05T02:38:23+14:00" level=info msg="port-forward: stop session/c1" +task-0: time="2025-03-05T02:38:23+14:00" level=error msg="portForwardHandler(unknown connection\ngithub.com/mendersoftware/mender-connect/session.init\n\t:1\nruntime.doInit1\n\t/usr/lib/go-1.24/src/runtime/proc.go:7350\nruntime.doInit\n\t/usr/lib/go-1.24/src/runtime/proc.go:7317\nruntime.main\n\t/usr/lib/go-1.24/src/runtime/proc.go:254\nruntime.goexit\n\t/usr/lib/go-1.24/src/runtime/asm_amd64.s:1700)" task-0: --- PASS: TestPortForwardHandlerSuccessfulConnection (3.21s) task-0: === RUN TestRouter task-0: === PAUSE TestRouter @@ -1694,33 +1729,35 @@ task-0: === PAUSE TestSessionListen task-0: === RUN TestMenderShellStartStopShell task-0: session_test.go:587: starting mock httpd with websockets -task-0: time="2026-04-06T06:56:46-12:00" level=info msg="mender-connect starting shell command passing process, pid: 3125851" +task-0: time="2025-03-05T02:38:23+14:00" level=info msg="mender-connect starting shell command passing process, pid: 2447554" task-0: session_test.go:631: created session: task-0: id:c4993deb-26b4-4c58-aaee-fd0c9e694328, -task-0: createdAt:Mon Apr 6 18:56:46 +0000 UTC 2026, -task-0: expiresAt:Mon Apr 6 19:13:50 +0000 UTC 2026 -task-0: now:Mon Apr 6 06:56:46 -1200 -12 2026 -task-0: time="2026-04-06T06:56:46-12:00" level=info msg="mender-connect starting shell command passing process, pid: 3125855" -task-0: time="2026-04-06T06:56:46-12:00" level=info msg="session c4993deb-26b4-4c58-aaee-fd0c9e694328 status:0 stopping shell" -task-0: time="2026-04-06T06:56:50-12:00" level=info msg="session c4993deb-26b4-4c58-aaee-fd0c9e694328 status:4 stopping shell" -task-0: time="2026-04-06T06:56:50-12:00" level=info msg="session c4993deb-26b4-4c58-aaee-fd0c9e694328 status:0 stopping shell" -task-0: --- PASS: TestMenderShellStartStopShell (8.02s) +task-0: createdAt:Tue Mar 4 12:38:23 +0000 UTC 2025, +task-0: expiresAt:Tue Mar 4 12:55:27 +0000 UTC 2025 +task-0: now:Wed Mar 5 02:38:23 +1400 +14 2025 +task-0: time="2025-03-05T02:38:23+14:00" level=info msg="mender-connect starting shell command passing process, pid: 2447556" +task-0: time="2025-03-05T02:38:23+14:00" level=info msg="session c4993deb-26b4-4c58-aaee-fd0c9e694328 status:0 stopping shell" +task-0: time="2025-03-05T02:38:23+14:00" level=error msg="error reading stdout: read /dev/ptmx: input/output error" +task-0: time="2025-03-05T02:38:27+14:00" level=error msg="session c4993deb-26b4-4c58-aaee-fd0c9e694328, shell pid 2447554, termination error: error waiting for the process: signal: interrupt" +task-0: time="2025-03-05T02:38:27+14:00" level=info msg="session c4993deb-26b4-4c58-aaee-fd0c9e694328 status:4 stopping shell" +task-0: time="2025-03-05T02:38:27+14:00" level=info msg="session c4993deb-26b4-4c58-aaee-fd0c9e694328 status:0 stopping shell" +task-0: --- PASS: TestMenderShellStartStopShell (8.03s) task-0: === RUN TestMenderShellCommand task-0: session_test.go:680: starting mock httpd with websockets -task-0: time="2026-04-06T06:56:54-12:00" level=info msg="mender-connect starting shell command passing process, pid: 3126848" -task-0: time="2026-04-06T06:56:54-12:00" level=error msg="error reading stdout: read /dev/ptmx: file already closed" +task-0: time="2025-03-05T02:38:31+14:00" level=info msg="mender-connect starting shell command passing process, pid: 2448565" task-0: --- PASS: TestMenderShellCommand (0.00s) task-0: === RUN TestMenderShellShellAlreadyStartedFailedToStart +task-0: time="2025-03-05T02:38:31+14:00" level=error msg="error reading stdout: read /dev/ptmx: file already closed" task-0: session_test.go:757: starting mock httpd with websockets -task-0: time="2026-04-06T06:56:54-12:00" level=info msg="mender-connect starting shell command passing process, pid: 3126852" -task-0: time="2026-04-06T06:56:54-12:00" level=error msg="failed to start shell: shell is already running" -task-0: time="2026-04-06T06:56:54-12:00" level=error msg="failed to start shell: fork/exec thatissomethingelse/bin/sh: no such file or directory" +task-0: time="2025-03-05T02:38:31+14:00" level=info msg="mender-connect starting shell command passing process, pid: 2448566" +task-0: time="2025-03-05T02:38:31+14:00" level=error msg="failed to start shell: shell is already running" +task-0: time="2025-03-05T02:38:31+14:00" level=error msg="failed to start shell: fork/exec thatissomethingelse/bin/sh: no such file or directory" task-0: --- PASS: TestMenderShellShellAlreadyStartedFailedToStart (0.00s) task-0: === RUN TestMenderShellSessionExpire -task-0: time="2026-04-06T06:56:54-12:00" level=info msg="mender-connect starting shell command passing process, pid: 3126855" +task-0: time="2025-03-05T02:38:31+14:00" level=info msg="mender-connect starting shell command passing process, pid: 2448568" task-0: --- PASS: TestMenderShellSessionExpire (4.00s) task-0: === RUN TestMenderShellSessionUpdateWS -task-0: time="2026-04-06T06:56:58-12:00" level=info msg="mender-connect starting shell command passing process, pid: 3128694" +task-0: time="2025-03-05T02:38:35+14:00" level=info msg="mender-connect starting shell command passing process, pid: 2448837" task-0: --- PASS: TestMenderShellSessionUpdateWS (0.00s) task-0: === RUN TestMenderShellSessionGetByUserId task-0: --- PASS: TestMenderShellSessionGetByUserId (0.00s) @@ -1733,286 +1770,292 @@ task-0: === RUN TestMenderSessionTerminateExpired task-0: session_test.go:1142: created session: task-0: id:c4993deb-26b4-4c58-aaee-fd0c9e694328, -task-0: createdAt:Mon Apr 6 18:56:58 +0000 UTC 2026, -task-0: expiresAt:Mon Apr 6 18:57:06 +0000 UTC 2026 -task-0: now:Mon Apr 6 06:56:58 -1200 -12 2026 -task-0: time="2026-04-06T06:56:58-12:00" level=info msg="mender-connect starting shell command passing process, pid: 3128695" -task-0: time="2026-04-06T06:57:14-12:00" level=info msg="session c4993deb-26b4-4c58-aaee-fd0c9e694328 status:0 stopping shell" +task-0: createdAt:Tue Mar 4 12:38:35 +0000 UTC 2025, +task-0: expiresAt:Tue Mar 4 12:38:43 +0000 UTC 2025 +task-0: now:Wed Mar 5 02:38:35 +1400 +14 2025 +task-0: time="2025-03-05T02:38:35+14:00" level=info msg="mender-connect starting shell command passing process, pid: 2448839" +task-0: time="2025-03-05T02:38:51+14:00" level=info msg="session c4993deb-26b4-4c58-aaee-fd0c9e694328 status:0 stopping shell" task-0: --- PASS: TestMenderSessionTerminateExpired (20.01s) task-0: === RUN TestMenderSessionTerminateAll task-0: session_test.go:1194: created session: -task-0: id:bcf75af9-c2d0-4191-a1d3-b5edc4ea5d7f, -task-0: createdAt:Mon Apr 6 18:57:19 +0000 UTC 2026, -task-0: expiresAt:Mon Apr 6 18:57:27 +0000 UTC 2026 -task-0: now:Mon Apr 6 06:57:19 -1200 -12 2026 -task-0: time="2026-04-06T06:57:19-12:00" level=info msg="mender-connect starting shell command passing process, pid: 3130448" +task-0: id:81bd0c73-7502-47a8-b3e6-f8713c7d8665, +task-0: createdAt:Tue Mar 4 12:38:55 +0000 UTC 2025, +task-0: expiresAt:Tue Mar 4 12:39:03 +0000 UTC 2025 +task-0: now:Wed Mar 5 02:38:55 +1400 +14 2025 +task-0: time="2025-03-05T02:38:55+14:00" level=info msg="mender-connect starting shell command passing process, pid: 2450165" task-0: session_test.go:1210: created session: -task-0: id:9e6e65c6-2ea3-42a1-8be5-c1fd1541b814, -task-0: createdAt:Mon Apr 6 18:57:19 +0000 UTC 2026, -task-0: expiresAt:Mon Apr 6 18:57:27 +0000 UTC 2026 -task-0: now:Mon Apr 6 06:57:19 -1200 -12 2026 -task-0: time="2026-04-06T06:57:19-12:00" level=info msg="mender-connect starting shell command passing process, pid: 3130449" -task-0: time="2026-04-06T06:57:19-12:00" level=info msg="session bcf75af9-c2d0-4191-a1d3-b5edc4ea5d7f status:0 stopping shell" -task-0: time="2026-04-06T06:57:23-12:00" level=info msg="session 9e6e65c6-2ea3-42a1-8be5-c1fd1541b814 status:0 stopping shell" -task-0: --- PASS: TestMenderSessionTerminateAll (8.02s) +task-0: id:d5b9b878-2e33-4916-bb39-d6db69ac5cb3, +task-0: createdAt:Tue Mar 4 12:38:55 +0000 UTC 2025, +task-0: expiresAt:Tue Mar 4 12:39:03 +0000 UTC 2025 +task-0: now:Wed Mar 5 02:38:55 +1400 +14 2025 +task-0: time="2025-03-05T02:38:55+14:00" level=info msg="mender-connect starting shell command passing process, pid: 2450166" +task-0: time="2025-03-05T02:38:55+14:00" level=info msg="session 81bd0c73-7502-47a8-b3e6-f8713c7d8665 status:0 stopping shell" +task-0: time="2025-03-05T02:38:55+14:00" level=error msg="error reading stdout: read /dev/ptmx: input/output error" +task-0: time="2025-03-05T02:38:59+14:00" level=error msg="session 81bd0c73-7502-47a8-b3e6-f8713c7d8665, shell pid 2450165, termination error: error waiting for the process: signal: interrupt" +task-0: time="2025-03-05T02:38:59+14:00" level=info msg="session d5b9b878-2e33-4916-bb39-d6db69ac5cb3 status:0 stopping shell" +task-0: --- PASS: TestMenderSessionTerminateAll (8.01s) task-0: === RUN TestMenderSessionTerminateIdle task-0: session_test.go:1251: created session: task-0: id:c4993deb-26b4-4c58-aaee-fd0c9e694328, -task-0: createdAt:Mon Apr 6 18:57:27 +0000 UTC 2026, -task-0: expiresAt:Mon Apr 6 19:01:42 +0000 UTC 2026 -task-0: now:Mon Apr 6 06:57:27 -1200 -12 2026 -task-0: time="2026-04-06T06:57:27-12:00" level=info msg="mender-connect starting shell command passing process, pid: 3131868" -task-0: time="2026-04-06T06:57:35-12:00" level=info msg="session c4993deb-26b4-4c58-aaee-fd0c9e694328 status:0 stopping shell" +task-0: createdAt:Tue Mar 4 12:39:03 +0000 UTC 2025, +task-0: expiresAt:Tue Mar 4 12:43:18 +0000 UTC 2025 +task-0: now:Wed Mar 5 02:39:03 +1400 +14 2025 +task-0: time="2025-03-05T02:39:03+14:00" level=info msg="mender-connect starting shell command passing process, pid: 2451862" +task-0: time="2025-03-05T02:39:11+14:00" level=info msg="session c4993deb-26b4-4c58-aaee-fd0c9e694328 status:0 stopping shell" task-0: --- PASS: TestMenderSessionTerminateIdle (12.01s) task-0: === RUN TestMenderSessionTimeNow task-0: --- PASS: TestMenderSessionTimeNow (0.00s) task-0: === CONT TestFileTransferUpload -task-0: === CONT TestSessionListen -task-0: === CONT TestFileTransferServeErrors -task-0: === CONT TestRouterRace -task-0: === RUN TestFileTransferUpload/ok task-0: === CONT TestRouter task-0: === RUN TestRouter/ok -task-0: === PAUSE TestFileTransferUpload/ok -task-0: === CONT TestFileTransferStat task-0: === PAUSE TestRouter/ok +task-0: === CONT TestFileTransferServeErrors +task-0: === CONT TestFileTransferDownload task-0: === CONT TestRouter/ok task-0: --- PASS: TestRouter (0.00s) task-0: --- PASS: TestRouter/ok (0.00s) -task-0: === RUN TestFileTransferUpload/ok,_relative_path -task-0: === PAUSE TestFileTransferUpload/ok,_relative_path -task-0: === RUN TestFileTransferUpload/error,_file_too_big_upload_denied -task-0: === PAUSE TestFileTransferUpload/error,_file_too_big_upload_denied -task-0: === RUN TestFileTransferStat/ok -task-0: === RUN TestFileTransferUpload/error,_path_is_a_directory -task-0: === PAUSE TestFileTransferStat/ok -task-0: === RUN TestFileTransferServeErrors/malformed_upload_request -task-0: === RUN TestFileTransferStat/error,_malformed_schema -task-0: === PAUSE TestFileTransferServeErrors/malformed_upload_request -task-0: === RUN TestFileTransferServeErrors/invalid_upload_request_parameters -task-0: === PAUSE TestFileTransferServeErrors/invalid_upload_request_parameters -task-0: === PAUSE TestFileTransferUpload/error,_path_is_a_directory -task-0: === RUN TestFileTransferUpload/error,_fake_error_from_client -task-0: === PAUSE TestFileTransferStat/error,_malformed_schema -task-0: === PAUSE TestFileTransferUpload/error,_fake_error_from_client -task-0: === RUN TestFileTransferUpload/error,_unexpected_ACK_message_from_client -task-0: === PAUSE TestFileTransferUpload/error,_unexpected_ACK_message_from_client -task-0: === RUN TestFileTransferStat/error,_invalid_parameters -task-0: === RUN TestFileTransferUpload/error,_chunk_missing_offset +task-0: === CONT TestSessionListen task-0: === RUN TestSessionListen/ok -task-0: === PAUSE TestFileTransferUpload/error,_chunk_missing_offset task-0: === PAUSE TestSessionListen/ok task-0: === RUN TestSessionListen/ok,_ping/pong_->_close -task-0: === PAUSE TestFileTransferStat/error,_invalid_parameters task-0: === PAUSE TestSessionListen/ok,_ping/pong_->_close -task-0: === CONT TestFileTransferDownload -task-0: === RUN TestFileTransferStat/error,_invalid_parameters#01 -task-0: === RUN TestFileTransferServeErrors/upload_already_in_progress -task-0: === PAUSE TestFileTransferServeErrors/upload_already_in_progress -task-0: === RUN TestFileTransferServeErrors/malformed_download_request -task-0: === PAUSE TestFileTransferServeErrors/malformed_download_request -task-0: === RUN TestFileTransferServeErrors/invalid_download_request_parameters -task-0: === RUN TestFileTransferDownload/ok -task-0: === PAUSE TestFileTransferServeErrors/invalid_download_request_parameters -task-0: === RUN TestFileTransferServeErrors/download_already_in_progress -task-0: === PAUSE TestFileTransferServeErrors/download_already_in_progress -task-0: === RUN TestFileTransferServeErrors/got_chunk_but_no_file_transfer_in_progress -task-0: === PAUSE TestFileTransferServeErrors/got_chunk_but_no_file_transfer_in_progress task-0: === RUN TestSessionListen/ok,_handshake -task-0: === RUN TestFileTransferServeErrors/generic_error_from_client task-0: === PAUSE TestSessionListen/ok,_handshake -task-0: === PAUSE TestFileTransferServeErrors/generic_error_from_client -task-0: === PAUSE TestFileTransferDownload/ok -task-0: === RUN TestFileTransferServeErrors/malformed_error_from_client -task-0: === RUN TestFileTransferDownload/ok,_file_larger_than_window -task-0: === PAUSE TestFileTransferServeErrors/malformed_error_from_client -task-0: === RUN TestFileTransferServeErrors/message_type_not_implemented -task-0: === PAUSE TestFileTransferServeErrors/message_type_not_implemented -task-0: === CONT TestFileTransferServeErrors/malformed_upload_request -task-0: === CONT TestFileTransferServeErrors/download_already_in_progress -task-0: === CONT TestFileTransferServeErrors/message_type_not_implemented -task-0: === CONT TestFileTransferServeErrors/got_chunk_but_no_file_transfer_in_progress -task-0: === CONT TestFileTransferServeErrors/malformed_download_request -task-0: === CONT TestFileTransferServeErrors/malformed_error_from_client -task-0: === CONT TestFileTransferServeErrors/upload_already_in_progress -task-0: === CONT TestFileTransferServeErrors/generic_error_from_client -task-0: === PAUSE TestFileTransferDownload/ok,_file_larger_than_window -task-0: === CONT TestFileTransferServeErrors/invalid_upload_request_parameters -task-0: === RUN TestFileTransferDownload/error,_bad_ack_data_type -task-0: === PAUSE TestFileTransferDownload/error,_bad_ack_data_type task-0: === RUN TestSessionListen/error,_protocol_version_not_supported task-0: === PAUSE TestSessionListen/error,_protocol_version_not_supported task-0: === RUN TestSessionListen/error,_bad_handshake_schema task-0: === PAUSE TestSessionListen/error,_bad_handshake_schema task-0: === RUN TestSessionListen/ok,_accepted -task-0: === PAUSE TestFileTransferStat/error,_invalid_parameters#01 -task-0: === CONT TestFileTransferStat/ok -task-0: === CONT TestFileTransferStat/error,_invalid_parameters#01 -task-0: === CONT TestFileTransferStat/error,_malformed_schema -task-0: time="2026-04-06T06:57:39-12:00" level=error msg="another file transfer is in progress" task-0: === PAUSE TestSessionListen/ok,_accepted task-0: === RUN TestSessionListen/error,_malformed_handshake_response task-0: === PAUSE TestSessionListen/error,_malformed_handshake_response +task-0: === CONT TestRouterRace +task-0: === CONT TestFileTransferStat task-0: === RUN TestSessionListen/error,_invalid_handshake_version task-0: === PAUSE TestSessionListen/error,_invalid_handshake_version -task-0: time="2026-04-06T06:57:39-12:00" level=error msg="Error decoding error message from client: msgpack: unexpected code=73 decoding map length" task-0: === RUN TestSessionListen/error,_control_message_not_understood task-0: === PAUSE TestSessionListen/error,_control_message_not_understood -task-0: time="2026-04-06T06:57:39-12:00" level=error msg="Received error from client: generic error" task-0: === RUN TestSessionListen/error,_bad_protocol_->_close_error task-0: === PAUSE TestSessionListen/error,_bad_protocol_->_close_error -task-0: === CONT TestFileTransferServeErrors/invalid_download_request_parameters -task-0: === RUN TestFileTransferDownload/error,_no_offset_in_ack -task-0: time="2026-04-06T06:57:39-12:00" level=error msg="malformed request parameters: msgpack: unexpected code=2f decoding map length" +task-0: === RUN TestSessionListen/error,_session_timeout +task-0: === PAUSE TestSessionListen/error,_session_timeout +task-0: === RUN TestSessionListen/error,_ping_write_error +task-0: === PAUSE TestSessionListen/error,_ping_write_error +task-0: === RUN TestSessionListen/error,_write_error +task-0: === PAUSE TestSessionListen/error,_write_error +task-0: === CONT TestSessionListen/ok +task-0: === CONT TestSessionListen/error,_malformed_handshake_response +task-0: === CONT TestSessionListen/error,_invalid_handshake_version +task-0: === CONT TestSessionListen/ok,_accepted +task-0: === CONT TestSessionListen/error,_write_error +task-0: === CONT TestSessionListen/error,_bad_handshake_schema +task-0: time="2025-03-05T02:39:15+14:00" level=error msg="failed to write response to client: this is bad!" +task-0: === CONT TestSessionListen/error,_protocol_version_not_supported +task-0: === CONT TestSessionListen/error,_bad_protocol_->_close_error +task-0: === CONT TestSessionListen/ok,_handshake +task-0: === CONT TestSessionListen/error,_session_timeout +task-0: time="2025-03-05T02:39:15+14:00" level=error msg="session: received error from client: dunno what to do next..." +task-0: === CONT TestSessionListen/ok,_ping/pong_->_close +task-0: === CONT TestSessionListen/error,_control_message_not_understood +task-0: === CONT TestSessionListen/error,_ping_write_error +task-0: time="2025-03-05T02:39:15+14:00" level=info msg="session: closed 1234" +task-0: time="2025-03-05T02:39:15+14:00" level=info msg="session: accepting new session with ID: 1234" +task-0: === RUN TestFileTransferUpload/ok +task-0: === PAUSE TestFileTransferUpload/ok +task-0: === RUN TestFileTransferUpload/ok,_relative_path +task-0: === PAUSE TestFileTransferUpload/ok,_relative_path +task-0: === RUN TestFileTransferUpload/error,_file_too_big_upload_denied +task-0: === PAUSE TestFileTransferUpload/error,_file_too_big_upload_denied +task-0: === RUN TestFileTransferUpload/error,_path_is_a_directory +task-0: === PAUSE TestFileTransferUpload/error,_path_is_a_directory +task-0: === RUN TestFileTransferUpload/error,_fake_error_from_client +task-0: === PAUSE TestFileTransferUpload/error,_fake_error_from_client +task-0: === RUN TestFileTransferUpload/error,_unexpected_ACK_message_from_client +task-0: === PAUSE TestFileTransferUpload/error,_unexpected_ACK_message_from_client +task-0: === RUN TestFileTransferUpload/error,_chunk_missing_offset +task-0: === PAUSE TestFileTransferUpload/error,_chunk_missing_offset task-0: === RUN TestFileTransferUpload/error,_offset_jumps_beyond_EOF -task-0: === CONT TestFileTransferStat/error,_invalid_parameters task-0: === PAUSE TestFileTransferUpload/error,_offset_jumps_beyond_EOF task-0: === RUN TestFileTransferUpload/error,_broken_response_writer -task-0: time="2026-04-06T06:57:39-12:00" level=error msg="invalid request parameters: path: cannot be blank." +task-0: === PAUSE TestFileTransferUpload/error,_broken_response_writer +task-0: === RUN TestFileTransferUpload/error,_parent_directory_does_not_exist +task-0: === PAUSE TestFileTransferUpload/error,_parent_directory_does_not_exist +task-0: === CONT TestFileTransferUpload/ok +task-0: === CONT TestFileTransferUpload/error,_unexpected_ACK_message_from_client +task-0: === CONT TestFileTransferUpload/error,_path_is_a_directory +task-0: === CONT TestFileTransferUpload/error,_file_too_big_upload_denied +task-0: === RUN TestFileTransferDownload/ok +task-0: === PAUSE TestFileTransferDownload/ok +task-0: === RUN TestFileTransferDownload/ok,_file_larger_than_window +task-0: === PAUSE TestFileTransferDownload/ok,_file_larger_than_window +task-0: === RUN TestFileTransferDownload/error,_bad_ack_data_type +task-0: === PAUSE TestFileTransferDownload/error,_bad_ack_data_type +task-0: === RUN TestFileTransferDownload/error,_no_offset_in_ack task-0: === PAUSE TestFileTransferDownload/error,_no_offset_in_ack +task-0: time="2025-03-05T02:39:15+14:00" level=error msg="received unexpected message type 'ack' during file upload" +task-0: === CONT TestFileTransferUpload/ok,_relative_path +task-0: === CONT TestFileTransferUpload/error,_broken_response_writer +task-0: === CONT TestFileTransferUpload/error,_parent_directory_does_not_exist +task-0: === CONT TestFileTransferUpload/error,_chunk_missing_offset +task-0: === CONT TestFileTransferUpload/error,_offset_jumps_beyond_EOF +task-0: time="2025-03-05T02:39:15+14:00" level=error msg="received unexpected chunk offset" +task-0: === CONT TestFileTransferUpload/error,_fake_error_from_client task-0: === RUN TestFileTransferDownload/error,_unexpected_ack_message -task-0: === RUN TestSessionListen/error,_session_timeout task-0: === PAUSE TestFileTransferDownload/error,_unexpected_ack_message -task-0: === PAUSE TestFileTransferUpload/error,_broken_response_writer -task-0: === PAUSE TestSessionListen/error,_session_timeout -task-0: === RUN TestSessionListen/error,_ping_write_error -task-0: === PAUSE TestSessionListen/error,_ping_write_error task-0: === RUN TestFileTransferDownload/error,_client_malformed_error_message task-0: === PAUSE TestFileTransferDownload/error,_client_malformed_error_message -task-0: === RUN TestFileTransferUpload/error,_parent_directory_does_not_exist -task-0: === RUN TestSessionListen/error,_write_error -task-0: === PAUSE TestSessionListen/error,_write_error task-0: === RUN TestFileTransferDownload/error,_client_error_message -task-0: === PAUSE TestFileTransferUpload/error,_parent_directory_does_not_exist -task-0: === CONT TestFileTransferUpload/ok +task-0: === RUN TestFileTransferStat/ok +task-0: === PAUSE TestFileTransferStat/ok task-0: === PAUSE TestFileTransferDownload/error,_client_error_message +task-0: === RUN TestFileTransferStat/error,_malformed_schema task-0: === RUN TestFileTransferDownload/error,_file_does_not_exist +task-0: time="2025-03-05T02:39:15+14:00" level=error msg="failed to create file: open /tmp/filetransfer-testing1175865773/parent/dir/does/not/exist/for/this/file.0000000400: no such file or directory" +task-0: time="2025-03-05T02:39:15+14:00" level=error msg="failed to respond to client: io: read/write on closed pipe" +task-0: time="2025-03-05T02:39:15+14:00" level=error msg="handler aborted" +task-0: time="2025-03-05T02:39:15+14:00" level=error msg="invalid file chunk message: missing offset property" +task-0: === RUN TestFileTransferServeErrors/malformed_upload_request +task-0: === PAUSE TestFileTransferServeErrors/malformed_upload_request +task-0: === RUN TestFileTransferServeErrors/invalid_upload_request_parameters +task-0: === PAUSE TestFileTransferServeErrors/invalid_upload_request_parameters +task-0: === RUN TestFileTransferServeErrors/upload_already_in_progress +task-0: === PAUSE TestFileTransferStat/error,_malformed_schema +task-0: === PAUSE TestFileTransferServeErrors/upload_already_in_progress +task-0: === RUN TestFileTransferServeErrors/malformed_download_request +task-0: === RUN TestFileTransferStat/error,_invalid_parameters +task-0: === PAUSE TestFileTransferServeErrors/malformed_download_request +task-0: === PAUSE TestFileTransferStat/error,_invalid_parameters +task-0: === RUN TestFileTransferStat/error,_invalid_parameters#01 +task-0: === PAUSE TestFileTransferStat/error,_invalid_parameters#01 +task-0: === CONT TestFileTransferStat/ok +task-0: === RUN TestFileTransferServeErrors/invalid_download_request_parameters +task-0: === PAUSE TestFileTransferServeErrors/invalid_download_request_parameters +task-0: === RUN TestFileTransferServeErrors/download_already_in_progress +task-0: === PAUSE TestFileTransferServeErrors/download_already_in_progress +task-0: === RUN TestFileTransferServeErrors/got_chunk_but_no_file_transfer_in_progress +task-0: === PAUSE TestFileTransferServeErrors/got_chunk_but_no_file_transfer_in_progress +task-0: === RUN TestFileTransferServeErrors/generic_error_from_client +task-0: time="2025-03-05T02:39:15+14:00" level=error msg="Received error during upload: something unexpected happened" +task-0: === PAUSE TestFileTransferServeErrors/generic_error_from_client +task-0: === RUN TestFileTransferServeErrors/malformed_error_from_client +task-0: time="2025-03-05T02:39:15+14:00" level=error msg="handler aborted" +task-0: === PAUSE TestFileTransferServeErrors/malformed_error_from_client +task-0: === RUN TestFileTransferServeErrors/message_type_not_implemented +task-0: === PAUSE TestFileTransferServeErrors/message_type_not_implemented +task-0: === CONT TestFileTransferStat/error,_invalid_parameters +task-0: === CONT TestFileTransferServeErrors/malformed_upload_request +task-0: === CONT TestFileTransferStat/error,_malformed_schema task-0: === PAUSE TestFileTransferDownload/error,_file_does_not_exist task-0: === RUN TestFileTransferDownload/error,_forbidden_to_follow_links -task-0: --- PASS: TestFileTransferStat (0.00s) +task-0: === PAUSE TestFileTransferDownload/error,_forbidden_to_follow_links +task-0: === CONT TestFileTransferDownload/ok +task-0: === CONT TestFileTransferStat/error,_invalid_parameters#01 +task-0: --- PASS: TestFileTransferUpload (0.09s) +task-0: --- PASS: TestFileTransferUpload/error,_path_is_a_directory (0.00s) +task-0: --- PASS: TestFileTransferUpload/error,_unexpected_ACK_message_from_client (0.00s) +task-0: --- PASS: TestFileTransferUpload/error,_offset_jumps_beyond_EOF (0.00s) +task-0: --- PASS: TestFileTransferUpload/ok,_relative_path (0.00s) +task-0: --- PASS: TestFileTransferUpload/error,_parent_directory_does_not_exist (0.01s) +task-0: --- PASS: TestFileTransferUpload/error,_broken_response_writer (0.01s) +task-0: --- PASS: TestFileTransferUpload/error,_chunk_missing_offset (0.02s) +task-0: --- PASS: TestFileTransferUpload/error,_file_too_big_upload_denied (0.02s) +task-0: --- PASS: TestFileTransferUpload/error,_fake_error_from_client (0.02s) +task-0: --- PASS: TestFileTransferUpload/ok (0.02s) +task-0: --- PASS: TestFileTransferStat (0.11s) task-0: --- PASS: TestFileTransferStat/ok (0.00s) task-0: --- PASS: TestFileTransferStat/error,_malformed_schema (0.00s) task-0: --- PASS: TestFileTransferStat/error,_invalid_parameters (0.00s) task-0: --- PASS: TestFileTransferStat/error,_invalid_parameters#01 (0.00s) -task-0: === CONT TestSessionListen/ok,_handshake -task-0: --- PASS: TestFileTransferServeErrors (0.00s) +task-0: === CONT TestFileTransferServeErrors/invalid_upload_request_parameters +task-0: === CONT TestFileTransferDownload/error,_client_malformed_error_message +task-0: === CONT TestFileTransferServeErrors/message_type_not_implemented +task-0: === CONT TestFileTransferServeErrors/malformed_error_from_client +task-0: === CONT TestFileTransferDownload/error,_no_offset_in_ack +task-0: time="2025-03-05T02:39:15+14:00" level=error msg="Error decoding error message from client: msgpack: unexpected code=73 decoding map length" +task-0: === CONT TestFileTransferServeErrors/generic_error_from_client +task-0: time="2025-03-05T02:39:15+14:00" level=error msg="Received error from client: generic error" +task-0: === CONT TestFileTransferServeErrors/got_chunk_but_no_file_transfer_in_progress +task-0: === CONT TestFileTransferServeErrors/download_already_in_progress +task-0: time="2025-03-05T02:39:15+14:00" level=error msg="received malformed error message from client: aborting" +task-0: === CONT TestFileTransferDownload/error,_forbidden_to_follow_links +task-0: time="2025-03-05T02:39:15+14:00" level=error msg="ack message: offset property cannot be blank" +task-0: === CONT TestFileTransferDownload/error,_bad_ack_data_type +task-0: time="2025-03-05T02:39:15+14:00" level=error msg="another file transfer is in progress" +task-0: === CONT TestFileTransferServeErrors/invalid_download_request_parameters +task-0: time="2025-03-05T02:39:15+14:00" level=error msg="invalid request parameters: path: cannot be blank." +task-0: === CONT TestFileTransferServeErrors/malformed_download_request +task-0: === CONT TestFileTransferServeErrors/upload_already_in_progress +task-0: time="2025-03-05T02:39:15+14:00" level=warning msg="file download access denied: forbidden to follow the link" +task-0: time="2025-03-05T02:39:15+14:00" level=error msg="access denied: forbidden to follow the link" +task-0: === CONT TestFileTransferDownload/ok,_file_larger_than_window +task-0: === CONT TestFileTransferDownload/error,_unexpected_ack_message +task-0: time="2025-03-05T02:39:15+14:00" level=error msg="malformed request parameters: msgpack: unexpected code=2f decoding map length" +task-0: --- PASS: TestFileTransferServeErrors (0.11s) task-0: --- PASS: TestFileTransferServeErrors/malformed_upload_request (0.00s) task-0: --- PASS: TestFileTransferServeErrors/invalid_upload_request_parameters (0.00s) -task-0: --- PASS: TestFileTransferServeErrors/download_already_in_progress (0.00s) task-0: --- PASS: TestFileTransferServeErrors/message_type_not_implemented (0.00s) -task-0: --- PASS: TestFileTransferServeErrors/got_chunk_but_no_file_transfer_in_progress (0.00s) task-0: --- PASS: TestFileTransferServeErrors/malformed_error_from_client (0.00s) -task-0: --- PASS: TestFileTransferServeErrors/upload_already_in_progress (0.00s) task-0: --- PASS: TestFileTransferServeErrors/generic_error_from_client (0.00s) -task-0: --- PASS: TestFileTransferServeErrors/malformed_download_request (0.00s) +task-0: --- PASS: TestFileTransferServeErrors/got_chunk_but_no_file_transfer_in_progress (0.00s) +task-0: --- PASS: TestFileTransferServeErrors/download_already_in_progress (0.00s) task-0: --- PASS: TestFileTransferServeErrors/invalid_download_request_parameters (0.00s) -task-0: === CONT TestSessionListen/error,_invalid_handshake_version -task-0: === CONT TestFileTransferUpload/error,_path_is_a_directory -task-0: === CONT TestSessionListen/error,_write_error -task-0: === CONT TestSessionListen/ok,_accepted -task-0: time="2026-04-06T06:57:39-12:00" level=info msg="session: accepting new session with ID: 1234" -task-0: === CONT TestSessionListen/error,_bad_handshake_schema -task-0: === CONT TestFileTransferUpload/error,_file_too_big_upload_denied -task-0: === CONT TestSessionListen/error,_protocol_version_not_supported -task-0: === CONT TestFileTransferUpload/error,_broken_response_writer -task-0: === CONT TestSessionListen/error,_malformed_handshake_response -task-0: time="2026-04-06T06:57:39-12:00" level=error msg="failed to write response to client: this is bad!" -task-0: === CONT TestFileTransferUpload/error,_unexpected_ACK_message_from_client -task-0: === CONT TestSessionListen/ok -task-0: === CONT TestFileTransferUpload/error,_offset_jumps_beyond_EOF -task-0: === CONT TestSessionListen/error,_session_timeout -task-0: === CONT TestFileTransferUpload/ok,_relative_path -task-0: === CONT TestFileTransferUpload/error,_fake_error_from_client -task-0: === PAUSE TestFileTransferDownload/error,_forbidden_to_follow_links -task-0: === CONT TestFileTransferDownload/ok -task-0: time="2026-04-06T06:57:39-12:00" level=error msg="failed to respond to client: io: read/write on closed pipe" -task-0: === CONT TestSessionListen/error,_control_message_not_understood +task-0: --- PASS: TestFileTransferServeErrors/upload_already_in_progress (0.00s) +task-0: --- PASS: TestFileTransferServeErrors/malformed_download_request (0.00s) task-0: === CONT TestFileTransferDownload/error,_file_does_not_exist +task-0: time="2025-03-05T02:39:15+14:00" level=error msg="received unexpected message type 'file_chunk'; expected 'ack'" task-0: === CONT TestFileTransferDownload/error,_client_error_message -task-0: === CONT TestFileTransferDownload/error,_unexpected_ack_message -task-0: === CONT TestSessionListen/ok,_ping/pong_->_close -task-0: time="2026-04-06T06:57:39-12:00" level=error msg="handler aborted" -task-0: time="2026-04-06T06:57:39-12:00" level=info msg="session: closed 1234" -task-0: === CONT TestSessionListen/error,_bad_protocol_->_close_error -task-0: === CONT TestFileTransferUpload/error,_parent_directory_does_not_exist -task-0: === CONT TestFileTransferDownload/error,_client_malformed_error_message -task-0: === CONT TestFileTransferUpload/error,_chunk_missing_offset -task-0: === CONT TestFileTransferDownload/error,_forbidden_to_follow_links -task-0: === CONT TestFileTransferDownload/error,_bad_ack_data_type -task-0: time="2026-04-06T06:57:39-12:00" level=error msg="session: received error from client: dunno what to do next..." -task-0: === CONT TestFileTransferDownload/ok,_file_larger_than_window -task-0: === CONT TestSessionListen/error,_ping_write_error -task-0: === CONT TestFileTransferDownload/error,_no_offset_in_ack -task-0: time="2026-04-06T06:57:39-12:00" level=error msg="received unexpected chunk offset" -task-0: time="2026-04-06T06:57:39-12:00" level=error msg="Received error during upload: something unexpected happened" -task-0: time="2026-04-06T06:57:39-12:00" level=error msg="invalid offset data type: require int64" -task-0: time="2026-04-06T06:57:39-12:00" level=error msg="handler aborted" -task-0: time="2026-04-06T06:57:39-12:00" level=error msg="failed to create file: open /tmp/filetransfer-testing3421438519/parent/dir/does/not/exist/for/this/file.0000000700: no such file or directory" -task-0: time="2026-04-06T06:57:39-12:00" level=error msg="received error message from client: ENOSPC" -task-0: time="2026-04-06T06:57:39-12:00" level=error msg="failed to open file for reading: open lets say it does not exist: no such file or directory" -task-0: time="2026-04-06T06:57:39-12:00" level=error msg="received unexpected message type 'file_chunk'; expected 'ack'" -task-0: time="2026-04-06T06:57:39-12:00" level=error msg="received malformed error message from client: aborting" -task-0: time="2026-04-06T06:57:39-12:00" level=error msg="ack message: offset property cannot be blank" -task-0: time="2026-04-06T06:57:39-12:00" level=error msg="invalid file chunk message: missing offset property" -task-0: time="2026-04-06T06:57:39-12:00" level=warning msg="file download access denied: forbidden to follow the link" -task-0: time="2026-04-06T06:57:39-12:00" level=error msg="access denied: forbidden to follow the link" -task-0: time="2026-04-06T06:57:39-12:00" level=error msg="received unexpected message type 'ack' during file upload" -task-0: --- PASS: TestFileTransferUpload (0.00s) -task-0: --- PASS: TestFileTransferUpload/error,_path_is_a_directory (0.00s) -task-0: --- PASS: TestFileTransferUpload/error,_broken_response_writer (0.00s) -task-0: --- PASS: TestFileTransferUpload/error,_offset_jumps_beyond_EOF (0.00s) -task-0: --- PASS: TestFileTransferUpload/error,_file_too_big_upload_denied (0.00s) -task-0: --- PASS: TestFileTransferUpload/ok (0.00s) -task-0: --- PASS: TestFileTransferUpload/error,_fake_error_from_client (0.00s) -task-0: --- PASS: TestFileTransferUpload/ok,_relative_path (0.00s) -task-0: --- PASS: TestFileTransferUpload/error,_parent_directory_does_not_exist (0.00s) -task-0: --- PASS: TestFileTransferUpload/error,_chunk_missing_offset (0.00s) -task-0: --- PASS: TestFileTransferUpload/error,_unexpected_ACK_message_from_client (0.00s) -task-0: --- PASS: TestFileTransferDownload (0.00s) +task-0: time="2025-03-05T02:39:15+14:00" level=error msg="failed to open file for reading: open lets say it does not exist: no such file or directory" +task-0: time="2025-03-05T02:39:15+14:00" level=error msg="invalid offset data type: require int64" +task-0: time="2025-03-05T02:39:15+14:00" level=error msg="received error message from client: ENOSPC" +task-0: --- PASS: TestFileTransferDownload (0.11s) task-0: --- PASS: TestFileTransferDownload/ok (0.00s) -task-0: --- PASS: TestFileTransferDownload/error,_bad_ack_data_type (0.00s) -task-0: --- PASS: TestFileTransferDownload/error,_no_offset_in_ack (0.00s) -task-0: --- PASS: TestFileTransferDownload/error,_client_error_message (0.00s) -task-0: --- PASS: TestFileTransferDownload/error,_file_does_not_exist (0.00s) task-0: --- PASS: TestFileTransferDownload/error,_client_malformed_error_message (0.00s) -task-0: --- PASS: TestFileTransferDownload/error,_unexpected_ack_message (0.00s) +task-0: --- PASS: TestFileTransferDownload/error,_no_offset_in_ack (0.00s) +task-0: --- PASS: TestFileTransferDownload/error,_bad_ack_data_type (0.00s) task-0: --- PASS: TestFileTransferDownload/error,_forbidden_to_follow_links (0.00s) +task-0: --- PASS: TestFileTransferDownload/error,_unexpected_ack_message (0.00s) +task-0: --- PASS: TestFileTransferDownload/error,_file_does_not_exist (0.00s) +task-0: --- PASS: TestFileTransferDownload/error,_client_error_message (0.00s) task-0: --- PASS: TestFileTransferDownload/ok,_file_larger_than_window (0.00s) -task-0: time="2026-04-06T06:57:39-12:00" level=error msg="failed to ping client: this is bad!" +task-0: time="2025-03-05T02:39:16+14:00" level=error msg="failed to ping client: this is bad!" task-0: --- PASS: TestSessionListen (0.00s) +task-0: --- PASS: TestSessionListen/ok (0.00s) +task-0: --- PASS: TestSessionListen/error,_malformed_handshake_response (0.00s) task-0: --- PASS: TestSessionListen/error,_invalid_handshake_version (0.00s) -task-0: --- PASS: TestSessionListen/ok,_handshake (0.00s) task-0: --- PASS: TestSessionListen/ok,_accepted (0.00s) -task-0: --- PASS: TestSessionListen/error,_protocol_version_not_supported (0.00s) task-0: --- PASS: TestSessionListen/error,_bad_handshake_schema (0.00s) task-0: --- PASS: TestSessionListen/error,_write_error (0.00s) -task-0: --- PASS: TestSessionListen/error,_malformed_handshake_response (0.00s) -task-0: --- PASS: TestSessionListen/ok (0.00s) -task-0: --- PASS: TestSessionListen/error,_control_message_not_understood (0.00s) -task-0: --- PASS: TestSessionListen/ok,_ping/pong_->_close (0.00s) +task-0: --- PASS: TestSessionListen/error,_protocol_version_not_supported (0.00s) task-0: --- PASS: TestSessionListen/error,_bad_protocol_->_close_error (0.00s) +task-0: --- PASS: TestSessionListen/ok,_ping/pong_->_close (0.00s) +task-0: --- PASS: TestSessionListen/error,_control_message_not_understood (0.00s) +task-0: --- PASS: TestSessionListen/ok,_handshake (0.00s) task-0: --- PASS: TestSessionListen/error,_ping_write_error (0.20s) task-0: --- PASS: TestSessionListen/error,_session_timeout (0.25s) -task-0: time="2026-04-06T06:57:40-12:00" level=error msg="[panic] panicHandler" trace="\n:1.(*panicHandler).ServeProtoMsg\n/build/reproducible-path/mender-connect-2.3.0+ds1/_build/src/github.com/mendersoftware/mender-connect/session/session.go:369.(*Session).ListenAndServe\n/build/reproducible-path/mender-connect-2.3.0+ds1/_build/src/github.com/mendersoftware/mender-connect/session/router.go:56.(*router).startSession\n/usr/lib/go-1.24/src/runtime/asm_amd64.s:1701.goexit" +task-0: time="2025-03-05T02:39:16+14:00" level=error msg="[panic] panicHandler" trace="\n:1.(*panicHandler).ServeProtoMsg\n/build/reproducible-path/mender-connect-2.3.0+ds1/_build/src/github.com/mendersoftware/mender-connect/session/session.go:369.(*Session).ListenAndServe\n/build/reproducible-path/mender-connect-2.3.0+ds1/_build/src/github.com/mendersoftware/mender-connect/session/router.go:56.(*router).startSession\n/usr/lib/go-1.24/src/runtime/asm_amd64.s:1701.goexit" task-0: --- PASS: TestRouterRace (1.00s) task-0: PASS -task-0: ok github.com/mendersoftware/mender-connect/session 56.299s +task-0: ok github.com/mendersoftware/mender-connect/session 56.467s task-0: ? github.com/mendersoftware/mender-connect/session/mocks [no test files] task-0: ? github.com/mendersoftware/mender-connect/session/model [no test files] task-0: === RUN TestNewMenderShell task-0: --- PASS: TestNewMenderShell (0.00s) task-0: === RUN TestNewMenderShellReadStdIn -task-0: --- PASS: TestNewMenderShellReadStdIn (8.01s) +task-0: exec_test.go:142: +task-0: Error Trace: /build/reproducible-path/mender-connect-2.3.0+ds1/_build/src/github.com/mendersoftware/mender-connect/shell/exec_test.go:142 +task-0: Error: []string{"echo _ok_", "", "\x1b[?2004hsh-5.2$ ", "echo _ok_", "\x1b[?2004l\r_ok_", "", "\x1b[?2004hsh-5.2$ "} does not contain "_ok_" +task-0: Test: TestNewMenderShellReadStdIn +task-0: --- FAIL: TestNewMenderShellReadStdIn (8.01s) task-0: === RUN TestPipeStdout task-0: exec_test.go:156: starting mock httpd with websockets -task-0: time="2026-04-06T06:56:51-12:00" level=error msg="error reading stdout: EOF" +task-0: time="2025-03-05T02:38:28+14:00" level=error msg="error reading stdout: EOF" task-0: --- PASS: TestPipeStdout (8.00s) task-0: === RUN TestMenderShellExecShell -task-0: shell_test.go:82: started shell, pid: 3128759 -task-0: shell_test.go:85: FindProcess p: &{3128759 1 {{} {} 1} {{{} {0 0}} 0 0 {{} 0} {{} 0}} 13} err: -task-0: --- PASS: TestMenderShellExecShell (4.01s) -task-0: PASS -task-0: ok github.com/mendersoftware/mender-connect/shell 20.019s +task-0: shell_test.go:82: started shell, pid: 2448859 +task-0: shell_test.go:85: FindProcess p: &{2448859 1 {{} {} 1} {{{} {0 0}} 0 0 {{} 0} {{} 0}} 13} err: +task-0: --- PASS: TestMenderShellExecShell (4.00s) +task-0: FAIL +task-0: FAIL github.com/mendersoftware/mender-connect/shell 20.191s task-0: === RUN TestFileSize task-0: --- PASS: TestFileSize (0.00s) task-0: === RUN TestFileExists @@ -2028,83 +2071,52 @@ task-0: === RUN TestIsInChroot task-0: --- PASS: TestIsInChroot (0.00s) task-0: === RUN TestNum64 +task-0: === RUN TestNum64/uintptr task-0: === RUN TestNum64/int task-0: === RUN TestNum64/int16 -task-0: === RUN TestNum64/uint8 -task-0: === RUN TestNum64/uint32 -task-0: === RUN TestNum64/uintptr -task-0: === RUN TestNum64/int8 task-0: === RUN TestNum64/int32 -task-0: === RUN TestNum64/int64 task-0: === RUN TestNum64/uint task-0: === RUN TestNum64/uint16 +task-0: === RUN TestNum64/uint32 +task-0: === RUN TestNum64/int8 +task-0: === RUN TestNum64/int64 +task-0: === RUN TestNum64/uint8 task-0: === RUN TestNum64/uint64 task-0: --- PASS: TestNum64 (0.00s) +task-0: --- PASS: TestNum64/uintptr (0.00s) task-0: --- PASS: TestNum64/int (0.00s) task-0: --- PASS: TestNum64/int16 (0.00s) -task-0: --- PASS: TestNum64/uint8 (0.00s) -task-0: --- PASS: TestNum64/uint32 (0.00s) -task-0: --- PASS: TestNum64/uintptr (0.00s) -task-0: --- PASS: TestNum64/int8 (0.00s) task-0: --- PASS: TestNum64/int32 (0.00s) -task-0: --- PASS: TestNum64/int64 (0.00s) task-0: --- PASS: TestNum64/uint (0.00s) task-0: --- PASS: TestNum64/uint16 (0.00s) +task-0: --- PASS: TestNum64/uint32 (0.00s) +task-0: --- PASS: TestNum64/int8 (0.00s) +task-0: --- PASS: TestNum64/int64 (0.00s) +task-0: --- PASS: TestNum64/uint8 (0.00s) task-0: --- PASS: TestNum64/uint64 (0.00s) task-0: PASS -task-0: ok github.com/mendersoftware/mender-connect/utils 0.008s +task-0: ok github.com/mendersoftware/mender-connect/utils 0.182s +task-0: FAIL +dh_auto_test: error: cd _build && go test -vet=off -v -p 20 github.com/mendersoftware/mender-connect github.com/mendersoftware/mender-connect/app github.com/mendersoftware/mender-connect/cli github.com/mendersoftware/mender-connect/client/dbus github.com/mendersoftware/mender-connect/client/dbus/mocks github.com/mendersoftware/mender-connect/client/dbus/test github.com/mendersoftware/mender-connect/client/mender github.com/mendersoftware/mender-connect/client/mender/mocks github.com/mendersoftware/mender-connect/config github.com/mendersoftware/mender-connect/connection github.com/mendersoftware/mender-connect/connectionmanager github.com/mendersoftware/mender-connect/limits/filetransfer github.com/mendersoftware/mender-connect/procps github.com/mendersoftware/mender-connect/session github.com/mendersoftware/mender-connect/session/mocks github.com/mendersoftware/mender-connect/session/model github.com/mendersoftware/mender-connect/shell github.com/mendersoftware/mender-connect/utils returned exit code 1 +task-0: Exited with status 6400 task-0: Shutting down DBus daemon: Shutdown +make[1]: *** [debian/rules:18: override_dh_auto_test] Error 255 make[1]: Leaving directory '/build/reproducible-path/mender-connect-2.3.0+ds1' - create-stamp debian/debhelper-build-stamp - dh_testroot -O--builddirectory=_build -O--buildsystem=golang - dh_prep -O--builddirectory=_build -O--buildsystem=golang - debian/rules override_dh_auto_install -make[1]: Entering directory '/build/reproducible-path/mender-connect-2.3.0+ds1' -dh_auto_install -- --no-source - cd _build && mkdir -p /build/reproducible-path/mender-connect-2.3.0\+ds1/debian/mender-connect/usr - cd _build && cp -r bin /build/reproducible-path/mender-connect-2.3.0\+ds1/debian/mender-connect/usr -# Install example config provided by upstream -/usr/bin/make DESTDIR=debian/mender-connect install-conf -make[2]: Entering directory '/build/reproducible-path/mender-connect-2.3.0+ds1' -make[2]: Leaving directory '/build/reproducible-path/mender-connect-2.3.0+ds1' -make[1]: Leaving directory '/build/reproducible-path/mender-connect-2.3.0+ds1' - dh_installdocs -O--builddirectory=_build -O--buildsystem=golang - dh_installchangelogs -O--builddirectory=_build -O--buildsystem=golang - dh_installinit -O--builddirectory=_build -O--buildsystem=golang - dh_installsystemd -O--builddirectory=_build -O--buildsystem=golang - dh_installsystemduser -O--builddirectory=_build -O--buildsystem=golang - dh_perl -O--builddirectory=_build -O--buildsystem=golang - dh_link -O--builddirectory=_build -O--buildsystem=golang - dh_strip_nondeterminism -O--builddirectory=_build -O--buildsystem=golang - dh_compress -O--builddirectory=_build -O--buildsystem=golang - dh_fixperms -O--builddirectory=_build -O--buildsystem=golang - dh_missing -O--builddirectory=_build -O--buildsystem=golang - dh_strip -a -O--builddirectory=_build -O--buildsystem=golang - dh_makeshlibs -a -O--builddirectory=_build -O--buildsystem=golang - dh_shlibdeps -a -O--builddirectory=_build -O--buildsystem=golang - dh_installdeb -O--builddirectory=_build -O--buildsystem=golang - dh_golang -O--builddirectory=_build -O--buildsystem=golang - dh_gencontrol -O--builddirectory=_build -O--buildsystem=golang -dpkg-gencontrol: warning: package mender-connect: substitution variable ${misc:Static-Built-Using} unused, but is defined -dpkg-gencontrol: warning: package mender-connect: substitution variable ${misc:Static-Built-Using} unused, but is defined - dh_md5sums -O--builddirectory=_build -O--buildsystem=golang - dh_builddeb -O--builddirectory=_build -O--buildsystem=golang -dpkg-deb: building package 'mender-connect' in '../mender-connect_2.3.0+ds1-1_amd64.deb'. -dpkg-deb: building package 'mender-connect-dbgsym' in '../mender-connect-dbgsym_2.3.0+ds1-1_amd64.deb'. - dpkg-genbuildinfo --build=binary -O../mender-connect_2.3.0+ds1-1_amd64.buildinfo - dpkg-genchanges --build=binary -O../mender-connect_2.3.0+ds1-1_amd64.changes -dpkg-genchanges: info: binary-only upload (no source code included) - dpkg-source --after-build . -dpkg-buildpackage: info: binary-only upload (no source included) -dpkg-genchanges: info: including full source code in upload +make: *** [debian/rules:6: binary] Error 2 +dpkg-buildpackage: error: debian/rules binary subprocess returned exit status 2 I: copying local configuration +E: Failed autobuilding of package +I: user script /srv/workspace/pbuilder/2394609/tmp/hooks/C01_cleanup starting +debug output: disk usage on i-capture-the-hostname at Tue Mar 4 12:39:46 UTC 2025 +Filesystem Size Used Avail Use% Mounted on +tmpfs 40G 0 40G 0% /dev/shm + +I: user script /srv/workspace/pbuilder/2394609/tmp/hooks/C01_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/3102743 and its subdirectories -I: Current time: Mon Apr 6 06:58:26 -12 2026 -I: pbuilder-time-stamp: 1775501906 +I: removing directory /srv/workspace/pbuilder/2394609 and its subdirectories