Diff of the two buildlogs: -- --- b1/build.log 2025-03-03 15:44:56.489044459 +0000 +++ b2/build.log 2025-03-03 15:50:13.226731140 +0000 @@ -1,6 +1,7 @@ +W: cgroups are not available on the host, not using them. I: pbuilder: network access will be disabled during build -I: Current time: Sun Apr 5 10:01:59 -12 2026 -I: pbuilder-time-stamp: 1775426519 +I: Current time: Tue Mar 4 05:44:59 +14 2025 +I: pbuilder-time-stamp: 1741016699 I: Building the build Environment I: extracting base tarball [/var/cache/pbuilder/unstable-reproducible-base.tgz] I: copying local configuration @@ -29,52 +30,83 @@ dpkg-source: info: applying avoid_blocking_on_data I: using fakeroot in build. I: Installing the build-deps -I: user script /srv/workspace/pbuilder/18668/tmp/hooks/D02_print_environment starting +I: user script /srv/workspace/pbuilder/3747311/tmp/hooks/D01_modify_environment starting +debug: Running on codethink04-arm64. +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 3 15:45 /bin/sh -> /bin/bash +I: Setting pbuilder2's login shell to /bin/bash +I: Setting pbuilder2's GECOS to second user,second room,second work-phone,second home-phone,second other +I: user script /srv/workspace/pbuilder/3747311/tmp/hooks/D01_modify_environment finished +I: user script /srv/workspace/pbuilder/3747311/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='arm64' - DEBIAN_FRONTEND='noninteractive' + 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]="aarch64-unknown-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=arm64 + DEBIAN_FRONTEND=noninteractive DEB_BUILD_OPTIONS='buildinfo=+all reproducible=+all parallel=12 ' - DISTRIBUTION='unstable' - HOME='/root' - HOST_ARCH='arm64' + DIRSTACK=() + DISTRIBUTION=unstable + EUID=0 + FUNCNAME=([0]="Echo" [1]="main") + GROUPS=() + HOME=/root + HOSTNAME=i-capture-the-hostname + HOSTTYPE=aarch64 + HOST_ARCH=arm64 IFS=' ' - INVOCATION_ID='6018fe8c174c4c008578347344740821' - 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='18668' - PS1='# ' - PS2='> ' + LANG=C + LANGUAGE=nl_BE:nl + LC_ALL=C + MACHTYPE=aarch64-unknown-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=3747311 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.X8HvHlPt/pbuilderrc_N10c --distribution unstable --hookdir /etc/pbuilder/first-build-hooks --debbuildopts -b --basetgz /var/cache/pbuilder/unstable-reproducible-base.tgz --buildresult /srv/reproducible-results/rbuild-debian/r-b-build.X8HvHlPt/b1 --logfile b1/build.log sslh_2.1.4-1.dsc' - SUDO_GID='109' - SUDO_UID='104' - SUDO_USER='jenkins' - TERM='unknown' - TZ='/usr/share/zoneinfo/Etc/GMT+12' - USER='root' - _='/usr/bin/systemd-run' - http_proxy='http://192.168.101.4: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.X8HvHlPt/pbuilderrc_16cG --distribution unstable --hookdir /etc/pbuilder/rebuild-hooks --debbuildopts -b --basetgz /var/cache/pbuilder/unstable-reproducible-base.tgz --buildresult /srv/reproducible-results/rbuild-debian/r-b-build.X8HvHlPt/b2 --logfile b2/build.log sslh_2.1.4-1.dsc' + SUDO_GID=109 + SUDO_UID=104 + SUDO_USER=jenkins + TERM=unknown + TZ=/usr/share/zoneinfo/Etc/GMT-14 + UID=0 + USER=root + _='I: set' + http_proxy=http://192.168.101.4:3128 I: uname -a - Linux codethink03-arm64 6.1.0-31-cloud-arm64 #1 SMP Debian 6.1.128-1 (2025-02-07) aarch64 GNU/Linux + Linux i-capture-the-hostname 6.1.0-31-cloud-arm64 #1 SMP Debian 6.1.128-1 (2025-02-07) aarch64 GNU/Linux I: ls -l /bin - lrwxrwxrwx 1 root root 7 Nov 22 2024 /bin -> usr/bin -I: user script /srv/workspace/pbuilder/18668/tmp/hooks/D02_print_environment finished + lrwxrwxrwx 1 root root 7 Nov 22 14:40 /bin -> usr/bin +I: user script /srv/workspace/pbuilder/3747311/tmp/hooks/D02_print_environment finished -> Attempting to satisfy build-dependencies -> Creating pbuilder-satisfydepends-dummy package Package: pbuilder-satisfydepends-dummy @@ -246,7 +278,7 @@ Get: 106 http://deb.debian.org/debian unstable/main arm64 libwrap0 arm64 7.6.q-36 [55.0 kB] Get: 107 http://deb.debian.org/debian unstable/main arm64 libwrap0-dev arm64 7.6.q-36 [22.6 kB] Get: 108 http://deb.debian.org/debian unstable/main arm64 psmisc arm64 23.7-2 [265 kB] -Fetched 35.4 MB in 0s (82.5 MB/s) +Fetched 35.4 MB in 0s (139 MB/s) Preconfiguring packages ... Selecting previously unselected package libpython3.13-minimal:arm64. (Reading database ... (Reading database ... 5% (Reading database ... 10% (Reading database ... 15% (Reading database ... 20% (Reading database ... 25% (Reading database ... 30% (Reading database ... 35% (Reading database ... 40% (Reading database ... 45% (Reading database ... 50% (Reading database ... 55% (Reading database ... 60% (Reading database ... 65% (Reading database ... 70% (Reading database ... 75% (Reading database ... 80% (Reading database ... 85% (Reading database ... 90% (Reading database ... 95% (Reading database ... 100% (Reading database ... 19892 files and directories currently installed.) @@ -610,8 +642,8 @@ Setting up tzdata (2025a-2) ... Current default time zone: 'Etc/UTC' -Local time is now: Sun Apr 5 22:02:41 UTC 2026. -Universal Time is now: Sun Apr 5 22:02:41 UTC 2026. +Local time is now: Mon Mar 3 15:45:17 UTC 2025. +Universal Time is now: Mon Mar 3 15:45:17 UTC 2025. Run 'dpkg-reconfigure tzdata' if you wish to change it. Setting up libconfig11:arm64 (1.7.3-2) ... @@ -710,7 +742,11 @@ fakeroot is already the newest version (1.37-1). 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. I: Building the package -I: Running cd /build/reproducible-path/sslh-2.1.4/ && 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 > ../sslh_2.1.4-1_source.changes +I: user script /srv/workspace/pbuilder/3747311/tmp/hooks/A99_set_merged_usr starting +Not re-configuring usrmerge for unstable +I: user script /srv/workspace/pbuilder/3747311/tmp/hooks/A99_set_merged_usr finished +hostname: Name or service not known +I: Running cd /build/reproducible-path/sslh-2.1.4/ && 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 > ../sslh_2.1.4-1_source.changes dpkg-buildpackage: info: source package sslh dpkg-buildpackage: info: source version 2.1.4-1 dpkg-buildpackage: info: source distribution unstable @@ -756,24 +792,94 @@ ./genver.sh >version.h pod2man --section=8 --release=2.1.4-1 --center=" " sslh.pod | gzip -9 - > sslh.8.gz cc -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/sslh-2.1.4=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -Wall -O2 -DLIBPCRE -g -Wdate-time -D_FORTIFY_SOURCE=2 -DLIBWRAP -DENABLE_REGEX -DLIBCONFIG -DLIBCAP -DSYSTEMD -c -o echosrv.o echosrv.c +cc -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/sslh-2.1.4=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -Wall -O2 -DLIBPCRE -g -Wdate-time -D_FORTIFY_SOURCE=2 -DLIBWRAP -DENABLE_REGEX -DLIBCONFIG -DLIBCAP -DSYSTEMD -c echosrv-conf.c -o echosrv-conf.o cc -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/sslh-2.1.4=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -Wall -O2 -DLIBPCRE -g -Wdate-time -D_FORTIFY_SOURCE=2 -DLIBWRAP -DENABLE_REGEX -DLIBCONFIG -DLIBCAP -DSYSTEMD -c -o systemd-sslh-generator.o systemd-sslh-generator.c +cc -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/sslh-2.1.4=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -Wall -O2 -DLIBPCRE -g -Wdate-time -D_FORTIFY_SOURCE=2 -DLIBWRAP -DENABLE_REGEX -DLIBCONFIG -DLIBCAP -DSYSTEMD -c -o sslh-ev.o sslh-ev.c cc -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/sslh-2.1.4=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -Wall -O2 -DLIBPCRE -g -Wdate-time -D_FORTIFY_SOURCE=2 -DLIBWRAP -DENABLE_REGEX -DLIBCONFIG -DLIBCAP -DSYSTEMD -c -o sslh-fork.o sslh-fork.c cc -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/sslh-2.1.4=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -Wall -O2 -DLIBPCRE -g -Wdate-time -D_FORTIFY_SOURCE=2 -DLIBWRAP -DENABLE_REGEX -DLIBCONFIG -DLIBCAP -DSYSTEMD -c sslh-conf.c -o sslh-conf.o cc -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/sslh-2.1.4=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -Wall -O2 -DLIBPCRE -g -Wdate-time -D_FORTIFY_SOURCE=2 -DLIBWRAP -DENABLE_REGEX -DLIBCONFIG -DLIBCAP -DSYSTEMD -c common.c -o common.o cc -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/sslh-2.1.4=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -Wall -O2 -DLIBPCRE -g -Wdate-time -D_FORTIFY_SOURCE=2 -DLIBWRAP -DENABLE_REGEX -DLIBCONFIG -DLIBCAP -DSYSTEMD -c log.c -o log.o cc -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/sslh-2.1.4=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -Wall -O2 -DLIBPCRE -g -Wdate-time -D_FORTIFY_SOURCE=2 -DLIBWRAP -DENABLE_REGEX -DLIBCONFIG -DLIBCAP -DSYSTEMD -c -o sslh-main.o sslh-main.c cc -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/sslh-2.1.4=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -Wall -O2 -DLIBPCRE -g -Wdate-time -D_FORTIFY_SOURCE=2 -DLIBWRAP -DENABLE_REGEX -DLIBCONFIG -DLIBCAP -DSYSTEMD -c probe.c -o probe.o -common.c: In function 'check_access_rights': cc -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/sslh-2.1.4=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -Wall -O2 -DLIBPCRE -g -Wdate-time -D_FORTIFY_SOURCE=2 -DLIBWRAP -DENABLE_REGEX -DLIBCONFIG -DLIBCAP -DSYSTEMD -c tls.c -o tls.o -common.c:703:20: warning: passing argument 1 of 'hosts_ctl' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers] - 703 | if (!hosts_ctl(service, host, addr_str, STRING_UNKNOWN)) { - | ^~~~~~~ -In file included from common.c:46: -/usr/include/tcpd.h:131:28: note: expected 'char *' but argument is of type 'const char *' - 131 | extern int hosts_ctl(char *daemon, char *client_name, char *client_addr, - | ~~~~~~^~~~~~ -cc -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/sslh-2.1.4=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -Wall -O2 -DLIBPCRE -g -Wdate-time -D_FORTIFY_SOURCE=2 -DLIBWRAP -DENABLE_REGEX -DLIBCONFIG -DLIBCAP -DSYSTEMD -c argtable3.c -o argtable3.o -cc -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/sslh-2.1.4=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -Wall -O2 -DLIBPCRE -g -Wdate-time -D_FORTIFY_SOURCE=2 -DLIBWRAP -DENABLE_REGEX -DLIBCONFIG -DLIBCAP -DSYSTEMD -c collection.c -o collection.o +echosrv-conf.c: In function 'myconfig_setting_lookup_stringcpy': +echosrv-conf.c:229:9: warning: ignoring return value of 'asprintf' declared with attribute 'warn_unused_result' [-Wunused-result] + 229 | asprintf(value, "%s", str); + | ^~~~~~~~~~~~~~~~~~~~~~~~~~ +echosrv-conf.c: In function 'c2s_parse_file': +echosrv-conf.c:1114:12: warning: ignoring return value of 'asprintf' declared with attribute 'warn_unused_result' [-Wunused-result] + 1114 | asprintf(errmsg, "%s:%d:%s", + | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~ + 1115 | filename, + | ~~~~~~~~~ + 1116 | config_error_line(c), + | ~~~~~~~~~~~~~~~~~~~~~ + 1117 | config_error_text(c)); + | ~~~~~~~~~~~~~~~~~~~~~ +echosrv-conf.c:1120:9: warning: ignoring return value of 'asprintf' declared with attribute 'warn_unused_result' [-Wunused-result] + 1120 | asprintf(errmsg, "%s:%s", filename, config_error_text(c)); + | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +echosrv-conf.c: In function 'read_block': +echosrv-conf.c:825:13: warning: ignoring return value of 'asprintf' declared with attribute 'warn_unused_result' [-Wunused-result] + 825 | asprintf(errmsg, "Mandatory option \"%s\" not found", desc->name); + | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +echosrv-conf.c: In function 'read_block_setval': +echosrv-conf.c:768:17: warning: ignoring return value of 'asprintf' declared with attribute 'warn_unused_result' [-Wunused-result] + 768 | asprintf(errmsg, "Option \"%s\" wrong type, expected %s\n", + | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + 769 | desc->name, type2str[desc->type]); + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +echosrv-conf.c: In function 'settingcpy': +echosrv-conf.c:313:9: warning: ignoring return value of 'asprintf' declared with attribute 'warn_unused_result' [-Wunused-result] + 313 | asprintf(&str, "%s", config_setting_get_string(setting)); + | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +echosrv-conf.c: In function 'clcpy': +echosrv-conf.c:356:9: warning: ignoring return value of 'asprintf' declared with attribute 'warn_unused_result' [-Wunused-result] + 356 | asprintf(&str, "%s", (*(struct arg_str**)cl_arg)->sval[0]); + | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +echosrv-conf.c: In function 'regcompmatch_pcre2': +echosrv-conf.c:1015:9: warning: ignoring return value of 'asprintf' declared with attribute 'warn_unused_result' [-Wunused-result] + 1015 | asprintf(errmsg, "compiling pattern /%s/:%d: %s at offset %ld\n", + | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + 1016 | arg->regex, error, err_str, error_offset); + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +echosrv-conf.c:1025:9: warning: ignoring return value of 'asprintf' declared with attribute 'warn_unused_result' [-Wunused-result] + 1025 | asprintf(errmsg, "matching %s =~ /%s/:%d: %s\n", + | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + 1026 | arg_cl->sval[arg_index], arg->regex, res, err_str); + | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +echosrv-conf.c: In function 'cfg_as_string': +echosrv-conf.c:1175:13: warning: ignoring return value of 'asprintf' declared with attribute 'warn_unused_result' [-Wunused-result] + 1175 | asprintf(&subpath, "%s[%d]%s", path, config_setting_index(child), name); + | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +echosrv-conf.c:1177:13: warning: ignoring return value of 'asprintf' declared with attribute 'warn_unused_result' [-Wunused-result] + 1177 | asprintf(&subpath, "%s/%s", path, name); + | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +echosrv-conf.c:1185:17: warning: ignoring return value of 'asprintf' declared with attribute 'warn_unused_result' [-Wunused-result] + 1185 | asprintf(&old, "%s", *strp); + | ^~~~~~~~~~~~~~~~~~~~~~~~~~~ +echosrv-conf.c:1188:17: warning: ignoring return value of 'asprintf' declared with attribute 'warn_unused_result' [-Wunused-result] + 1188 | asprintf(&old, "%s", ""); + | ^~~~~~~~~~~~~~~~~~~~~~~~ +echosrv-conf.c:1190:13: warning: ignoring return value of 'asprintf' declared with attribute 'warn_unused_result' [-Wunused-result] + 1190 | asprintf(strp, "%s%s:%s", old, subpath, value); + | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +echosrv-conf.c: In function 'scalar_to_string': +echosrv-conf.c:1131:9: warning: ignoring return value of 'asprintf' declared with attribute 'warn_unused_result' [-Wunused-result] + 1131 | asprintf(strp, "%d\n", config_setting_get_int(s)); + | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +echosrv-conf.c:1135:9: warning: ignoring return value of 'asprintf' declared with attribute 'warn_unused_result' [-Wunused-result] + 1135 | asprintf(strp, "%s\n", config_setting_get_bool(s) ? "[true]" : "[false]" ); + | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +echosrv-conf.c:1139:9: warning: ignoring return value of 'asprintf' declared with attribute 'warn_unused_result' [-Wunused-result] + 1139 | asprintf(strp, "%lld\n", config_setting_get_int64(s)); + | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +echosrv-conf.c:1143:9: warning: ignoring return value of 'asprintf' declared with attribute 'warn_unused_result' [-Wunused-result] + 1143 | asprintf(strp, "%lf\n", config_setting_get_float(s)); + | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +echosrv-conf.c:1147:9: warning: ignoring return value of 'asprintf' declared with attribute 'warn_unused_result' [-Wunused-result] + 1147 | asprintf(strp, "%s\n", config_setting_get_string(s)); + | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ sslh-conf.c: In function 'myconfig_setting_lookup_stringcpy': sslh-conf.c:229:9: warning: ignoring return value of 'asprintf' declared with attribute 'warn_unused_result' [-Wunused-result] 229 | asprintf(value, "%s", str); @@ -852,6 +958,16 @@ sslh-conf.c:2125:9: warning: ignoring return value of 'asprintf' declared with attribute 'warn_unused_result' [-Wunused-result] 2125 | asprintf(strp, "%s\n", config_setting_get_string(s)); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +common.c: In function 'check_access_rights': +common.c:703:20: warning: passing argument 1 of 'hosts_ctl' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers] + 703 | if (!hosts_ctl(service, host, addr_str, STRING_UNKNOWN)) { + | ^~~~~~~ +In file included from common.c:46: +/usr/include/tcpd.h:131:28: note: expected 'char *' but argument is of type 'const char *' + 131 | extern int hosts_ctl(char *daemon, char *client_name, char *client_addr, + | ~~~~~~^~~~~~ +cc -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/sslh-2.1.4=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -Wall -O2 -DLIBPCRE -g -Wdate-time -D_FORTIFY_SOURCE=2 -DLIBWRAP -DENABLE_REGEX -DLIBCONFIG -DLIBCAP -DSYSTEMD -c argtable3.c -o argtable3.o +cc -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/sslh-2.1.4=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -Wall -O2 -DLIBPCRE -g -Wdate-time -D_FORTIFY_SOURCE=2 -DLIBWRAP -DENABLE_REGEX -DLIBCONFIG -DLIBCAP -DSYSTEMD -c collection.c -o collection.o cc -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/sslh-2.1.4=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -Wall -O2 -DLIBPCRE -g -Wdate-time -D_FORTIFY_SOURCE=2 -DLIBWRAP -DENABLE_REGEX -DLIBCONFIG -DLIBCAP -DSYSTEMD -c gap.c -o gap.o cc -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/sslh-2.1.4=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -Wall -O2 -DLIBPCRE -g -Wdate-time -D_FORTIFY_SOURCE=2 -DLIBWRAP -DENABLE_REGEX -DLIBCONFIG -DLIBCAP -DSYSTEMD -c tcp-probe.c -o tcp-probe.o cc -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/sslh-2.1.4=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -Wall -O2 -DLIBPCRE -g -Wdate-time -D_FORTIFY_SOURCE=2 -DLIBWRAP -DENABLE_REGEX -DLIBCONFIG -DLIBCAP -DSYSTEMD -c -o landlock.o landlock.c @@ -860,87 +976,7 @@ cc -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/sslh-2.1.4=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -Wall -O2 -DLIBPCRE -g -Wdate-time -D_FORTIFY_SOURCE=2 -DLIBWRAP -DENABLE_REGEX -DLIBCONFIG -DLIBCAP -DSYSTEMD -c -o sslh-select.o sslh-select.c cc -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/sslh-2.1.4=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -Wall -O2 -DLIBPCRE -g -Wdate-time -D_FORTIFY_SOURCE=2 -DLIBWRAP -DENABLE_REGEX -DLIBCONFIG -DLIBCAP -DSYSTEMD -c hash.c -o hash.o cc -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/sslh-2.1.4=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -Wall -O2 -DLIBPCRE -g -Wdate-time -D_FORTIFY_SOURCE=2 -DLIBWRAP -DENABLE_REGEX -DLIBCONFIG -DLIBCAP -DSYSTEMD -c tcp-listener.c -o tcp-listener.o -cc -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/sslh-2.1.4=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -Wall -O2 -DLIBPCRE -g -Wdate-time -D_FORTIFY_SOURCE=2 -DLIBWRAP -DENABLE_REGEX -DLIBCONFIG -DLIBCAP -DSYSTEMD -c echosrv-conf.c -o echosrv-conf.o -cc -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/sslh-2.1.4=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -Wall -O2 -DLIBPCRE -g -Wdate-time -D_FORTIFY_SOURCE=2 -DLIBWRAP -DENABLE_REGEX -DLIBCONFIG -DLIBCAP -DSYSTEMD -c -o sslh-ev.o sslh-ev.c cc -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/sslh-2.1.4=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -Wall -O2 -DLIBPCRE -g -Wl,-z,relro -Wl,-z,now -o systemd-sslh-generator systemd-sslh-generator.o -lconfig -echosrv-conf.c: In function 'myconfig_setting_lookup_stringcpy': -echosrv-conf.c:229:9: warning: ignoring return value of 'asprintf' declared with attribute 'warn_unused_result' [-Wunused-result] - 229 | asprintf(value, "%s", str); - | ^~~~~~~~~~~~~~~~~~~~~~~~~~ -echosrv-conf.c: In function 'c2s_parse_file': -echosrv-conf.c:1114:12: warning: ignoring return value of 'asprintf' declared with attribute 'warn_unused_result' [-Wunused-result] - 1114 | asprintf(errmsg, "%s:%d:%s", - | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~ - 1115 | filename, - | ~~~~~~~~~ - 1116 | config_error_line(c), - | ~~~~~~~~~~~~~~~~~~~~~ - 1117 | config_error_text(c)); - | ~~~~~~~~~~~~~~~~~~~~~ -echosrv-conf.c:1120:9: warning: ignoring return value of 'asprintf' declared with attribute 'warn_unused_result' [-Wunused-result] - 1120 | asprintf(errmsg, "%s:%s", filename, config_error_text(c)); - | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -echosrv-conf.c: In function 'read_block': -echosrv-conf.c:825:13: warning: ignoring return value of 'asprintf' declared with attribute 'warn_unused_result' [-Wunused-result] - 825 | asprintf(errmsg, "Mandatory option \"%s\" not found", desc->name); - | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -echosrv-conf.c: In function 'read_block_setval': -echosrv-conf.c:768:17: warning: ignoring return value of 'asprintf' declared with attribute 'warn_unused_result' [-Wunused-result] - 768 | asprintf(errmsg, "Option \"%s\" wrong type, expected %s\n", - | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - 769 | desc->name, type2str[desc->type]); - | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -echosrv-conf.c: In function 'settingcpy': -echosrv-conf.c:313:9: warning: ignoring return value of 'asprintf' declared with attribute 'warn_unused_result' [-Wunused-result] - 313 | asprintf(&str, "%s", config_setting_get_string(setting)); - | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -echosrv-conf.c: In function 'clcpy': -echosrv-conf.c:356:9: warning: ignoring return value of 'asprintf' declared with attribute 'warn_unused_result' [-Wunused-result] - 356 | asprintf(&str, "%s", (*(struct arg_str**)cl_arg)->sval[0]); - | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -echosrv-conf.c: In function 'regcompmatch_pcre2': -echosrv-conf.c:1015:9: warning: ignoring return value of 'asprintf' declared with attribute 'warn_unused_result' [-Wunused-result] - 1015 | asprintf(errmsg, "compiling pattern /%s/:%d: %s at offset %ld\n", - | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - 1016 | arg->regex, error, err_str, error_offset); - | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -echosrv-conf.c:1025:9: warning: ignoring return value of 'asprintf' declared with attribute 'warn_unused_result' [-Wunused-result] - 1025 | asprintf(errmsg, "matching %s =~ /%s/:%d: %s\n", - | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - 1026 | arg_cl->sval[arg_index], arg->regex, res, err_str); - | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -echosrv-conf.c: In function 'cfg_as_string': -echosrv-conf.c:1175:13: warning: ignoring return value of 'asprintf' declared with attribute 'warn_unused_result' [-Wunused-result] - 1175 | asprintf(&subpath, "%s[%d]%s", path, config_setting_index(child), name); - | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -echosrv-conf.c:1177:13: warning: ignoring return value of 'asprintf' declared with attribute 'warn_unused_result' [-Wunused-result] - 1177 | asprintf(&subpath, "%s/%s", path, name); - | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -echosrv-conf.c:1185:17: warning: ignoring return value of 'asprintf' declared with attribute 'warn_unused_result' [-Wunused-result] - 1185 | asprintf(&old, "%s", *strp); - | ^~~~~~~~~~~~~~~~~~~~~~~~~~~ -echosrv-conf.c:1188:17: warning: ignoring return value of 'asprintf' declared with attribute 'warn_unused_result' [-Wunused-result] - 1188 | asprintf(&old, "%s", ""); - | ^~~~~~~~~~~~~~~~~~~~~~~~ -echosrv-conf.c:1190:13: warning: ignoring return value of 'asprintf' declared with attribute 'warn_unused_result' [-Wunused-result] - 1190 | asprintf(strp, "%s%s:%s", old, subpath, value); - | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -echosrv-conf.c: In function 'scalar_to_string': -echosrv-conf.c:1131:9: warning: ignoring return value of 'asprintf' declared with attribute 'warn_unused_result' [-Wunused-result] - 1131 | asprintf(strp, "%d\n", config_setting_get_int(s)); - | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -echosrv-conf.c:1135:9: warning: ignoring return value of 'asprintf' declared with attribute 'warn_unused_result' [-Wunused-result] - 1135 | asprintf(strp, "%s\n", config_setting_get_bool(s) ? "[true]" : "[false]" ); - | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -echosrv-conf.c:1139:9: warning: ignoring return value of 'asprintf' declared with attribute 'warn_unused_result' [-Wunused-result] - 1139 | asprintf(strp, "%lld\n", config_setting_get_int64(s)); - | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -echosrv-conf.c:1143:9: warning: ignoring return value of 'asprintf' declared with attribute 'warn_unused_result' [-Wunused-result] - 1143 | asprintf(strp, "%lf\n", config_setting_get_float(s)); - | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -echosrv-conf.c:1147:9: warning: ignoring return value of 'asprintf' declared with attribute 'warn_unused_result' [-Wunused-result] - 1147 | asprintf(strp, "%s\n", config_setting_get_string(s)); - | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ar rcs libsslh.a sslh-conf.o common.o log.o sslh-main.o probe.o tls.o argtable3.o collection.o gap.o tcp-probe.o landlock.o cc -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/sslh-2.1.4=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -Wall -O2 -DLIBPCRE -g -Wl,-z,relro -Wl,-z,now -o echosrv echosrv.o echosrv-conf.o argtable3.o -lm -lpcre2-8 -lwrap -lconfig -lcap -lsystemd cc -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/sslh-2.1.4=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -Wall -O2 -DLIBPCRE -g -Wl,-z,relro -Wl,-z,now -o sslh-fork sslh-fork.o libsslh.a -lm -lpcre2-8 -lwrap -lconfig -lcap -lsystemd @@ -953,99 +989,88 @@ make[1]: Entering directory '/build/reproducible-path/sslh-2.1.4' ./t "my" variable $data masks earlier declaration in same scope at ./t line 427. -./echosrv --listen 127.0.0.1:39913 --prefix ssh: -./echosrv --listen 127.0.0.1:34241 --prefix socks5: -./echosrv --listen 127.0.0.1:33101 --prefix http: -./echosrv --listen 127.0.0.1:36977 --prefix tinc: -./echosrv --listen 127.0.0.1:45015 --prefix openvpn: -./echosrv --listen 127.0.0.1:41807 --prefix xmpp: +./echosrv --listen 127.0.0.1:40187 --prefix ssh: +./echosrv --listen 127.0.0.1:42463 --prefix socks5: +./echosrv --listen 127.0.0.1:38045 --prefix http: Listening to: +3: localhost:40187 Listening to: -3: localhost:34241 -3: localhost:39913 -./echosrv --listen 127.0.0.1:36667 --prefix adb: -./echosrv --listen 127.0.0.1:46599 --prefix syslog: -./echosrv --listen 127.0.0.1:33999 --prefix regex: +./echosrv --listen 127.0.0.1:44685 --prefix tinc: +3: localhost:42463 Listening to: +./echosrv --listen 127.0.0.1:45677 --prefix openvpn: +3: localhost:38045 Listening to: -3: localhost:33101 -3: localhost:36977 -./echosrv --listen 127.0.0.1:43215 --prefix tls:sni1;alpn1,alpn2: +./echosrv --listen 127.0.0.1:33513 --prefix xmpp: +3: localhost:44685 Listening to: -./echosrv --listen 127.0.0.1:46649 --prefix tls:sni2,sni3;alpn1,alpn2: +./echosrv --listen 127.0.0.1:33865 --prefix adb: +3: localhost:45677 Listening to: -3: localhost:41807 -3: localhost:36667 -./echosrv --listen 127.0.0.1:42937 --prefix tls:;alpn3: +./echosrv --listen 127.0.0.1:35659 --prefix syslog: +3: localhost:33513 Listening to: -3: localhost:33999 -./echosrv --listen 127.0.0.1:37123 --prefix tls:sni3;: -./echosrv --listen 127.0.0.1:37407 --prefix tls: -./echosrv --listen 127.0.0.1:40671 --prefix anyprot: -Testing sslh-select -./sslh-select -f -u pbuilder1 -F test.cfg -spawned 39504 +./echosrv --listen 127.0.0.1:33405 --prefix regex: +3: localhost:33865 +Listening to: +./echosrv --listen 127.0.0.1:39177 --prefix tls:sni1;alpn1,alpn2: +3: localhost:35659 Listening to: -3: localhost:43215 +./echosrv --listen 127.0.0.1:36969 --prefix tls:sni2,sni3;alpn1,alpn2: +3: localhost:33405 +./echosrv --listen 127.0.0.1:45607 --prefix tls:;alpn3: Listening to: +3: localhost:39177 +./echosrv --listen 127.0.0.1:37651 --prefix tls:sni3;: Listening to: +3: localhost:36969 +./echosrv --listen 127.0.0.1:40777 --prefix tls: Listening to: -3: localhost:46599 -3: localhost:45015 -3: localhost:42937 +3: localhost:45607 +./echosrv --listen 127.0.0.1:43919 --prefix anyprot: Listening to: -3: localhost:46649 +3: localhost:37651 +Testing sslh-select +./sslh-select -f -u pbuilder2 -F test.cfg Listening to: -3: localhost:40671 +spawned 3756242 +3: localhost:40777 Listening to: -3: localhost:37123 -ssh addr: 127.0.0.1:39913 family 2 2. libwrap service: (null) log_level: 1 [] [] [] -socks5 addr: 127.0.0.1:34241 family 2 2. libwrap service: (null) log_level: 1 [] [] [] -http addr: 127.0.0.1:33101 family 2 2. libwrap service: (null) log_level: 1 [] [] [] -tinc addr: 127.0.0.1:36977 family 2 2. libwrap service: (null) log_level: 1 [] [] [] -openvpn addr: 127.0.0.1:45015 family 2 2. libwrap service: (null) log_level: 1 [] [] [] -xmpp addr: 127.0.0.1:41807 family 2 2. libwrap service: (null) log_level: 1 [] [] [] -adb addr: 127.0.0.1:36667 family 2 2. libwrap service: (null) log_level: 1 [] [] [] -syslog addr: 127.0.0.1:46599 family 2 2. libwrap service: (null) log_level: 1 [] [] [] -regex addr: 127.0.0.1:33999 family 2 2. libwrap service: (null) log_level: 1 [] [] [] -tls addr: 127.0.0.1:43215 family 2 2. libwrap service: (null) log_level: 1 [] [] [] -tls addr: 127.0.0.1:46649 family 2 2. libwrap service: (null) log_level: 1 [] [] [] -tls addr: 127.0.0.1:42937 family 2 2. libwrap service: (null) log_level: 1 [] [] [] -tls addr: 127.0.0.1:37123 family 2 2. libwrap service: (null) log_level: 1 [] [] [] -tls addr: 127.0.0.1:37407 family 2 2. libwrap service: (null) log_level: 1 [] [] [] -anyprot addr: 127.0.0.1:40671 family 2 2. libwrap service: (null) log_level: 1 [] [] [] +3: localhost:43919 +ssh addr: 127.0.0.1:40187 family 2 2. libwrap service: (null) log_level: 1 [] [] [] +socks5 addr: 127.0.0.1:42463 family 2 2. libwrap service: (null) log_level: 1 [] [] [] +http addr: 127.0.0.1:38045 family 2 2. libwrap service: (null) log_level: 1 [] [] [] +tinc addr: 127.0.0.1:44685 family 2 2. libwrap service: (null) log_level: 1 [] [] [] +openvpn addr: 127.0.0.1:45677 family 2 2. libwrap service: (null) log_level: 1 [] [] [] +xmpp addr: 127.0.0.1:33513 family 2 2. libwrap service: (null) log_level: 1 [] [] [] +adb addr: 127.0.0.1:33865 family 2 2. libwrap service: (null) log_level: 1 [] [] [] +syslog addr: 127.0.0.1:35659 family 2 2. libwrap service: (null) log_level: 1 [] [] [] +regex addr: 127.0.0.1:33405 family 2 2. libwrap service: (null) log_level: 1 [] [] [] +tls addr: 127.0.0.1:39177 family 2 2. libwrap service: (null) log_level: 1 [] [] [] +tls addr: 127.0.0.1:36969 family 2 2. libwrap service: (null) log_level: 1 [] [] [] +tls addr: 127.0.0.1:45607 family 2 2. libwrap service: (null) log_level: 1 [] [] [] +tls addr: 127.0.0.1:37651 family 2 2. libwrap service: (null) log_level: 1 [] [] [] +tls addr: 127.0.0.1:40777 family 2 2. libwrap service: (null) log_level: 1 [] [] [] +anyprot addr: 127.0.0.1:43919 family 2 2. libwrap service: (null) log_level: 1 [] [] [] timeout: 10 on-timeout: ssh UDP hash size: 1024 Listening to: -3: 127.0.0.1:34351 [keepalive] [] -4: 127.0.0.1:36771 [keepalive] [] -turning into pbuilder1 +3: 127.0.0.1:44019 [keepalive] [] +4: 127.0.0.1:34259 [keepalive] [] +turning into pbuilder2 Landlock: all restricted capabilities: = sslh-select 2.1.4-1 started -Listening to: -3: localhost:37407 ***Test: Shy SSH connection -Would block, sleeping. Iteration: 0 socket: SCALAR(0xaaaaf7d65008):55786 -ssh:connection from 127.0.0.1:55786 to 127.0.0.1:34351 forwarded from 127.0.0.1:50386 to 127.0.0.1:39913 +Would block, sleeping. Iteration: 0 socket: SCALAR(0xaaaac3a35750):45626 +ssh:connection from 127.0.0.1:45626 to 127.0.0.1:44019 forwarded from 127.0.0.1:52502 to 127.0.0.1:40187 ssh: hello world Read ssh: hello world from peer: '' ok 1 - sslh-select: Shy SSH connection ***Test: One SSL half-started then one SSH -Successprinted data '"3CzÉEQ<($jxؐXe-u8,0̨̩̪+/$(k#'g -9 3=<5/F  - -# hello tls alone -' to 34172 at ./t line 399. -udp: 0 -prefix: ssh: -listen [1]: - host: 127.0.0.1 - port: 39913 -going to print data to 34176 at ./t line 402. -hexdump of incoming packet: +Successhexdump of incoming packet: 0x000000: 16 03 01 00 ab 01 00 00 a7 03 03 89 22 33 95 43 ............"3.C 0x000010: 7a c3 89 45 51 12 3c 28 24 1b 6a 78 bf be 95 d8 z..EQ.<($.jx.... 0x000020: 90 58 d7 65 f7 bb 2d b2 8d a0 75 00 00 38 c0 2c .X.e..-...u..8., @@ -1053,6 +1078,11 @@ 0x000040: c0 24 c0 28 00 6b c0 23 c0 27 00 67 c0 0a c0 14 .$.(.k.#.'.g.... 0x000050: 00 39 c0 09 c0 13 00 33 00 9d 00 9c 00 3d 00 3c .9.....3.....=.< 0x000060: 00 35 00 2f 00 ff 01 00 00 46 00 0b 00 04 03 00 .5./.....F...... +printed data '"3CzÉEQ<($jxؐXe-u8,0̨̩̪+/$(k#'g +9 3=<5/F  + +# hello tls alone +' to 46050 at ./t line 399. 0x000070: 01 02 00 0a 00 0a 00 08 00 1d 00 17 00 19 00 18 ................ 0x000080: 00 23 00 00 00 0d 00 20 00 1e 06 01 06 02 06 03 .#..... ........ 0x000090: 05 01 05 02 05 03 04 01 04 02 04 03 03 01 03 02 ................ @@ -1066,6 +1096,11 @@ probed for http: PROBE_NEXT probing for tinc probed for tinc: PROBE_NEXT +udp: 0 +prefix: ssh: +listen [1]: + host: 127.0.0.1 + port: 40187 probing for openvpn probed for openvpn: PROBE_NEXT probing for xmpp @@ -1086,10 +1121,10 @@ probed for tls: PROBE_NEXT probing for tls probed for tls: PROBE_MATCH -tls:connection from 127.0.0.1:34172 to 127.0.0.1:34351 forwarded from 127.0.0.1:51324 to 127.0.0.1:37407 +going to print data to 46062 at ./t line 402. +tls:connection from 127.0.0.1:46050 to 127.0.0.1:44019 forwarded from 127.0.0.1:59712 to 127.0.0.1:40777 printed data 'hello world -' to 34176 at ./t line 404. -Would block, sleeping. Iteration: 0 socket: SCALAR(0xaaaaf7d92330):34176 +' to 46062 at ./t line 404. hexdump of incoming packet: 0x000000: 68 65 6c 6c 6f 20 77 6f 72 6c 64 0a hello world. probing for ssh @@ -1120,6 +1155,7 @@ Request did not begin with TLS handshake. probed for tls: PROBE_NEXT probing for tls +Would block, sleeping. Iteration: 0 socket: SCALAR(0xaaaac3a6bac8):46062 Request did not begin with TLS handshake. probed for tls: PROBE_NEXT probing for tls @@ -1130,10 +1166,10 @@ 9 3=<5/F  # hello tls alone -Would block, sleeping. Iteration: 1 socket: SCALAR(0xaaaaf7d92330):34176 -Would block, sleeping. Iteration: 2 socket: SCALAR(0xaaaaf7d92330):34176 -Would block, sleeping. Iteration: 3 socket: SCALAR(0xaaaaf7d92330):34176 -ssh:connection from 127.0.0.1:34176 to 127.0.0.1:34351 forwarded from 127.0.0.1:50162 to 127.0.0.1:39913 +Would block, sleeping. Iteration: 1 socket: SCALAR(0xaaaac3a6bac8):46062 +Would block, sleeping. Iteration: 2 socket: SCALAR(0xaaaac3a6bac8):46062 +Would block, sleeping. Iteration: 3 socket: SCALAR(0xaaaac3a6bac8):46062 +ssh:connection from 127.0.0.1:46062 to 127.0.0.1:44019 forwarded from 127.0.0.1:36210 to 127.0.0.1:40187 ssh: hello world Read ssh: hello world from peer: '' @@ -1146,7 +1182,16 @@ reading data from tls at ./t line 410. ok 3 - sslh-select: SSL connection interrupted by SSH ***Test: One SSH half-started then one SSL -Would block, sleeping. Iteration: 0 socket: SCALAR(0xaaaaf7d9b388):37578 +SuccessSuccessudp: 0 +prefix: tls: +listen [1]: + host: 127.0.0.1 + port: 40777 +udp: 0 +prefix: ssh: +listen [1]: + host: 127.0.0.1 + port: 40187 hexdump of incoming packet: 0x000000: 16 03 01 00 ab 01 00 00 a7 03 03 89 22 33 95 43 ............"3.C 0x000010: 7a c3 89 45 51 12 3c 28 24 1b 6a 78 bf be 95 d8 z..EQ.<($.jx.... @@ -1158,6 +1203,7 @@ 0x000070: 01 02 00 0a 00 0a 00 08 00 1d 00 17 00 19 00 18 ................ 0x000080: 00 23 00 00 00 0d 00 20 00 1e 06 01 06 02 06 03 .#..... ........ 0x000090: 05 01 05 02 05 03 04 01 04 02 04 03 03 01 03 02 ................ +Would block, sleeping. Iteration: 0 socket: SCALAR(0xaaaac3a47870):55350 0x0000a0: 03 03 02 01 02 02 02 03 00 16 00 00 00 17 00 00 ................ 0x0000b0: 68 65 6c 6c 6f 20 74 6c 73 20 61 6c 6f 6e 65 0a hello tls alone. probing for ssh @@ -1188,17 +1234,7 @@ probed for tls: PROBE_NEXT probing for tls probed for tls: PROBE_MATCH -tls:connection from 127.0.0.1:37578 to 127.0.0.1:34351 forwarded from 127.0.0.1:48040 to 127.0.0.1:37407 -SuccessSuccessudp: 0 -prefix: ssh: -listen [1]: - host: 127.0.0.1 - port: 39913 -udp: 0 -prefix: tls: -listen [1]: - host: 127.0.0.1 - port: 37407 +tls:connection from 127.0.0.1:55350 to 127.0.0.1:44019 forwarded from 127.0.0.1:48710 to 127.0.0.1:40777 tls: "3CzÉEQ<($jxؐXe-u8,0̨̩̪+/$(k#'g 9 3=<5/F  @@ -1209,7 +1245,7 @@ # hello tls alone from peer: '' ok 4 - sslh-select: SSL during SSH being established -Would block, sleeping. Iteration: 0 socket: SCALAR(0xaaaaf7d77610):37570 +Would block, sleeping. Iteration: 0 socket: SCALAR(0xaaaac3a6b990):55348 hexdump of incoming packet: 0x000000: 68 65 6c 6c 6f 20 77 6f 72 6c 64 0a hello world. probing for ssh @@ -1250,32 +1286,32 @@ prefix: tls: listen [1]: host: 127.0.0.1 - port: 37407 -Would block, sleeping. Iteration: 1 socket: SCALAR(0xaaaaf7d77610):37570 -Would block, sleeping. Iteration: 2 socket: SCALAR(0xaaaaf7d77610):37570 -ssh:connection from 127.0.0.1:37570 to 127.0.0.1:34351 forwarded from 127.0.0.1:45260 to 127.0.0.1:39913 + port: 40777 +Would block, sleeping. Iteration: 1 socket: SCALAR(0xaaaac3a6b990):55348 +Would block, sleeping. Iteration: 2 socket: SCALAR(0xaaaac3a6b990):55348 +ssh:connection from 127.0.0.1:55348 to 127.0.0.1:44019 forwarded from 127.0.0.1:41168 to 127.0.0.1:40187 ssh: hello world Read ssh: hello world from peer: '' ok 5 - sslh-select: SSH connection interrupted by SSL test_probe called with$VAR1 = { - 'expected' => 'ssh', + 'no_frag' => 1, 'binary' => 'sslh-select', 'data' => 'SSH-2.0 tester ', - 'no_frag' => 1 + 'expected' => 'ssh' }; -Would block, sleeping. Iteration: 0 socket: SCALAR(0xaaaaf7d65140):45962 +Would block, sleeping. Iteration: 0 socket: SCALAR(0xaaaac3a47870):59752 hexdump of incoming packet: 0x000000: 53 53 48 2d 32 2e 30 20 74 65 73 74 65 72 0a SSH-2.0 tester. probing for ssh probed for ssh: PROBE_MATCH -ssh:connection from 127.0.0.1:45962 to 127.0.0.1:34351 forwarded from 127.0.0.1:45652 to 127.0.0.1:39913 +ssh:connection from 127.0.0.1:59752 to 127.0.0.1:44019 forwarded from 127.0.0.1:40214 to 127.0.0.1:40187 Successudp: 0 prefix: ssh: listen [1]: host: 127.0.0.1 - port: 39913 + port: 40187 ssh: SSH-2.0 tester Read ssh: SSH-2.0 tester from peer: '' @@ -1283,42 +1319,37 @@ ] ok 6 - sslh-select:ssh: probe connected correctly ok 7 - sslh-select:ssh: data shoveled correctly -Successudp: 0 -prefix: ssh: -listen [1]: - host: 127.0.0.1 - port: 39913 test_probe called with$VAR1 = { 'expected' => 'socks5', + 'data' => '', 'no_frag' => 1, - 'binary' => 'sslh-select', - 'data' => '' + 'binary' => 'sslh-select' }; -Would block, sleeping. Iteration: 0 socket: SCALAR(0xaaaaf7da5c40):45966 +Would block, sleeping. Iteration: 0 socket: SCALAR(0xaaaac3a6bf00):59764 hexdump of incoming packet: 0x000000: 05 04 01 02 03 04 ...... probing for ssh probed for ssh: PROBE_NEXT probing for socks5 probed for socks5: PROBE_MATCH -socks5:connection from 127.0.0.1:45966 to 127.0.0.1:34351 forwarded from 127.0.0.1:52178 to 127.0.0.1:34241 +socks5:connection from 127.0.0.1:59764 to 127.0.0.1:44019 forwarded from 127.0.0.1:38240 to 127.0.0.1:42463 +Successudp: 0 +prefix: ssh: +listen [1]: + host: 127.0.0.1 + port: 40187 socks5: Read socks5:  from peer: '' Received 14 bytes: protocol socks5 data [] ok 8 - sslh-select:socks5: probe connected correctly ok 9 - sslh-select:socks5: data shoveled correctly test_probe called with$VAR1 = { - 'expected' => 'http', 'data' => 'GET index.html HTTP/1.1', - 'binary' => 'sslh-select', - 'no_frag' => 1 + 'expected' => 'http', + 'no_frag' => 1, + 'binary' => 'sslh-select' }; -Would block, sleeping. Iteration: 0 socket: SCALAR(0xaaaaf7da5e80):45968 +Would block, sleeping. Iteration: 0 socket: SCALAR(0xaaaac3a6c0b0):59772 hexdump of incoming packet: -Successudp: 0 -prefix: socks5: -listen [1]: - host: 127.0.0.1 - port: 34241 0x000000: 47 45 54 20 69 6e 64 65 78 2e 68 74 6d 6c 20 48 GET index.html H 0x000010: 54 54 50 2f 31 2e 31 TTP/1.1 probing for ssh @@ -1327,18 +1358,23 @@ probed for socks5: PROBE_NEXT probing for http probed for http: PROBE_MATCH -http:connection from 127.0.0.1:45968 to 127.0.0.1:34351 forwarded from 127.0.0.1:59600 to 127.0.0.1:33101 +http:connection from 127.0.0.1:59772 to 127.0.0.1:44019 forwarded from 127.0.0.1:33592 to 127.0.0.1:38045 +Successudp: 0 +prefix: socks5: +listen [1]: + host: 127.0.0.1 + port: 42463 http: GET index.html HTTP/1.1Read http: GET index.html HTTP/1.1 from peer: '' Received 29 bytes: protocol http data [GET index.html HTTP/1.1] ok 10 - sslh-select:http: probe connected correctly ok 11 - sslh-select:http: data shoveled correctly test_probe called with$VAR1 = { - 'expected' => 'tinc', 'no_frag' => 1, 'binary' => 'sslh-select', + 'expected' => 'tinc', 'data' => '0 hello' }; -Would block, sleeping. Iteration: 0 socket: SCALAR(0xaaaaf7da60c0):45974 +Would block, sleeping. Iteration: 0 socket: SCALAR(0xaaaac3a6b7b0):47872 hexdump of incoming packet: 0x000000: 30 20 68 65 6c 6c 6f 0 hello probing for ssh @@ -1349,23 +1385,23 @@ probed for http: PROBE_NEXT probing for tinc probed for tinc: PROBE_MATCH -tinc:connection from 127.0.0.1:45974 to 127.0.0.1:34351 forwarded from 127.0.0.1:60986 to 127.0.0.1:36977 +tinc:connection from 127.0.0.1:47872 to 127.0.0.1:44019 forwarded from 127.0.0.1:54612 to 127.0.0.1:44685 Successudp: 0 prefix: http: listen [1]: host: 127.0.0.1 - port: 33101 + port: 38045 tinc: 0 helloRead tinc: 0 hello from peer: '' Received 13 bytes: protocol tinc data [0 hello] ok 12 - sslh-select:tinc: probe connected correctly ok 13 - sslh-select:tinc: data shoveled correctly test_probe called with$VAR1 = { - 'no_frag' => 1, - 'binary' => 'sslh-select', + 'expected' => 'openvpn', 'data' => '', - 'expected' => 'openvpn' + 'no_frag' => 1, + 'binary' => 'sslh-select' }; -Would block, sleeping. Iteration: 0 socket: SCALAR(0xaaaaf7da6300):33736 +Would block, sleeping. Iteration: 0 socket: SCALAR(0xaaaac3a6bf48):47882 hexdump of incoming packet: 0x000000: 00 00 .. probing for ssh @@ -1378,23 +1414,23 @@ probed for tinc: PROBE_NEXT probing for openvpn probed for openvpn: PROBE_MATCH -openvpn:connection from 127.0.0.1:33736 to 127.0.0.1:34351 forwarded from 127.0.0.1:53900 to 127.0.0.1:45015 +openvpn:connection from 127.0.0.1:47882 to 127.0.0.1:44019 forwarded from 127.0.0.1:40320 to 127.0.0.1:45677 Successudp: 0 prefix: tinc: listen [1]: host: 127.0.0.1 - port: 36977 + port: 44685 openvpn: Read openvpn: from peer: '' Received 11 bytes: protocol openvpn data [] ok 14 - sslh-select:openvpn: probe connected correctly ok 15 - sslh-select:openvpn: data shoveled correctly test_probe called with$VAR1 = { - 'expected' => 'xmpp', - 'no_frag' => 1, 'binary' => 'sslh-select', + 'no_frag' => 1, + 'expected' => 'xmpp', 'data' => 'I should get a real jabber connection initialisation here' }; -Would block, sleeping. Iteration: 0 socket: SCALAR(0xaaaaf7da6540):33752 +Would block, sleeping. Iteration: 0 socket: SCALAR(0xaaaac3a6c398):47896 hexdump of incoming packet: 0x000000: 49 20 73 68 6f 75 6c 64 20 67 65 74 20 61 20 72 I should get a r 0x000010: 65 61 6c 20 6a 61 62 62 65 72 20 63 6f 6e 6e 65 eal jabber conne @@ -1412,23 +1448,27 @@ probed for openvpn: PROBE_NEXT probing for xmpp probed for xmpp: PROBE_MATCH -xmpp:connection from 127.0.0.1:33752 to 127.0.0.1:34351 forwarded from 127.0.0.1:47470 to 127.0.0.1:41807 +xmpp:connection from 127.0.0.1:47896 to 127.0.0.1:44019 forwarded from 127.0.0.1:35816 to 127.0.0.1:33513 Successudp: 0 prefix: openvpn: listen [1]: host: 127.0.0.1 - port: 45015 + port: 45677 xmpp: I should get a real jabber connection initialisation hereRead xmpp: I should get a real jabber connection initialisation here from peer: '' Received 63 bytes: protocol xmpp data [I should get a real jabber connection initialisation here] +Successudp: 0 +prefix: xmpp: +listen [1]: + host: 127.0.0.1 + port: 33513 ok 16 - sslh-select:xmpp: probe connected correctly ok 17 - sslh-select:xmpp: data shoveled correctly test_probe called with$VAR1 = { 'no_frag' => 1, - 'data' => 'CNXN....................host:...', 'binary' => 'sslh-select', + 'data' => 'CNXN....................host:...', 'expected' => 'adb' }; -Would block, sleeping. Iteration: 0 socket: SCALAR(0xaaaaf7da6780):33762 hexdump of incoming packet: 0x000000: 43 4e 58 4e 2e 2e 2e 2e 2e 2e 2e 2e 2e 2e 2e 2e CNXN............ 0x000010: 2e 2e 2e 2e 2e 2e 2e 2e 68 6f 73 74 3a 2e 2e 2e ........host:... @@ -1445,24 +1485,24 @@ probing for xmpp probed for xmpp: PROBE_AGAIN probing for adb +Would block, sleeping. Iteration: 0 socket: SCALAR(0xaaaac3a766c8):47908 probed for adb: PROBE_MATCH -adb:connection from 127.0.0.1:33762 to 127.0.0.1:34351 forwarded from 127.0.0.1:40812 to 127.0.0.1:36667 +adb:connection from 127.0.0.1:47908 to 127.0.0.1:44019 forwarded from 127.0.0.1:37248 to 127.0.0.1:33865 +adb: CNXN....................host:...Read adb: CNXN....................host:... from peer: '' +Received 37 bytes: protocol adb data [CNXN....................host:...] Successudp: 0 -prefix: xmpp: +prefix: adb: listen [1]: host: 127.0.0.1 - port: 41807 -adb: CNXN....................host:...Read adb: CNXN....................host:... from peer: '' -Received 37 bytes: protocol adb data [CNXN....................host:...] + port: 33865 ok 18 - sslh-select:adb: probe connected correctly ok 19 - sslh-select:adb: data shoveled correctly test_probe called with$VAR1 = { - 'expected' => 'syslog', - 'data' => '<42> My syslog message', + 'no_frag' => 1, 'binary' => 'sslh-select', - 'no_frag' => 1 + 'data' => '<42> My syslog message', + 'expected' => 'syslog' }; -Would block, sleeping. Iteration: 0 socket: SCALAR(0xaaaaf7da8ff8):33766 hexdump of incoming packet: 0x000000: 3c 34 32 3e 20 4d 79 20 73 79 73 6c 6f 67 20 6d <42> My syslog m 0x000010: 65 73 73 61 67 65 essage @@ -1472,6 +1512,7 @@ probed for socks5: PROBE_NEXT probing for http probed for http: PROBE_NEXT +Would block, sleeping. Iteration: 0 socket: SCALAR(0xaaaac3a76878):47916 probing for tinc probed for tinc: PROBE_NEXT probing for openvpn @@ -1482,28 +1523,23 @@ probed for adb: PROBE_AGAIN probing for syslog probed for syslog: PROBE_MATCH -syslog:connection from 127.0.0.1:33766 to 127.0.0.1:34351 forwarded from 127.0.0.1:33544 to 127.0.0.1:46599 -Successudp: 0 -prefix: adb: -listen [1]: - host: 127.0.0.1 - port: 36667 +syslog:connection from 127.0.0.1:47916 to 127.0.0.1:44019 forwarded from 127.0.0.1:51058 to 127.0.0.1:35659 syslog: <42> My syslog messageRead syslog: <42> My syslog message from peer: '' Received 30 bytes: protocol syslog data [<42> My syslog message] -ok 20 - sslh-select:syslog: probe connected correctly -Successok 21 - sslh-select:syslog: data shoveled correctly -test_probe called withudp: 0 +Successok 20 - sslh-select:syslog: probe connected correctly +udp: 0 prefix: syslog: listen [1]: host: 127.0.0.1 - port: 46599 -$VAR1 = { - 'binary' => 'sslh-select', + port: 35659 +ok 21 - sslh-select:syslog: data shoveled correctly +test_probe called with$VAR1 = { + 'expected' => 'ssh', 'data' => 'foo', - 'no_frag' => 1, - 'expected' => 'ssh' + 'binary' => 'sslh-select', + 'no_frag' => 1 }; -Would block, sleeping. Iteration: 0 socket: SCALAR(0xaaaaf7da9238):33780 +Would block, sleeping. Iteration: 0 socket: SCALAR(0xaaaac3a767a0):56288 hexdump of incoming packet: 0x000000: 66 6f 6f foo probing for ssh @@ -1535,26 +1571,21 @@ probing for tls probed for tls: PROBE_AGAIN probing for anyprot -Would block, sleeping. Iteration: 1 socket: SCALAR(0xaaaaf7da9238):33780 -Would block, sleeping. Iteration: 2 socket: SCALAR(0xaaaaf7da9238):33780 -Would block, sleeping. Iteration: 3 socket: SCALAR(0xaaaaf7da9238):33780 -ssh:connection from 127.0.0.1:33780 to 127.0.0.1:34351 forwarded from 127.0.0.1:55526 to 127.0.0.1:39913 +Would block, sleeping. Iteration: 1 socket: SCALAR(0xaaaac3a767a0):56288 +Would block, sleeping. Iteration: 2 socket: SCALAR(0xaaaac3a767a0):56288 +Would block, sleeping. Iteration: 3 socket: SCALAR(0xaaaac3a767a0):56288 +ssh:connection from 127.0.0.1:56288 to 127.0.0.1:44019 forwarded from 127.0.0.1:41432 to 127.0.0.1:40187 ssh: fooRead ssh: foo from peer: '' Received 8 bytes: protocol ssh data [foo] ok 22 - sslh-select:ssh: probe connected correctly -Successudp: 0 -prefix: ssh: -listen [1]: - host: 127.0.0.1 - port: 39913 ok 23 - sslh-select:ssh: data shoveled correctly test_probe called with$VAR1 = { + 'expected' => 'regex', 'data' => 'fooo', - 'binary' => 'sslh-select', 'no_frag' => 1, - 'expected' => 'regex' + 'binary' => 'sslh-select' }; -Would block, sleeping. Iteration: 0 socket: SCALAR(0xaaaaf7da94a8):35180 +Would block, sleeping. Iteration: 0 socket: SCALAR(0xaaaac3a79330):51724 hexdump of incoming packet: 0x000000: 66 6f 6f 6f fooo probing for ssh @@ -1574,24 +1605,24 @@ probing for syslog probed for syslog: PROBE_NEXT probing for regex -probed for regex: PROBE_MATCH -regex:connection from 127.0.0.1:35180 to 127.0.0.1:34351 forwarded from 127.0.0.1:50758 to 127.0.0.1:33999 -regex: foooRead regex: fooo from peer: '' -Received 11 bytes: protocol regex data [fooo] -Successudp: 0 -prefix: regex: +Successprobed for regex: PROBE_MATCH +udp: 0 +prefix: ssh: listen [1]: host: 127.0.0.1 - port: 33999 + port: 40187 +regex:connection from 127.0.0.1:51724 to 127.0.0.1:44019 forwarded from 127.0.0.1:55444 to 127.0.0.1:33405 +regex: foooRead regex: fooo from peer: '' +Received 11 bytes: protocol regex data [fooo] ok 24 - sslh-select:regex: probe connected correctly ok 25 - sslh-select:regex: data shoveled correctly test_probe called with$VAR1 = { - 'no_frag' => 1, - 'binary' => 'sslh-select', 'data' => 'bar', - 'expected' => 'ssh' + 'expected' => 'ssh', + 'no_frag' => 1, + 'binary' => 'sslh-select' }; -Would block, sleeping. Iteration: 0 socket: SCALAR(0xaaaaf7da96e8):35186 +Would block, sleeping. Iteration: 0 socket: SCALAR(0xaaaac3a769c8):51730 hexdump of incoming packet: 0x000000: 62 61 72 bar probing for ssh @@ -1623,21 +1654,31 @@ probing for tls probed for tls: PROBE_AGAIN probing for anyprot -Would block, sleeping. Iteration: 1 socket: SCALAR(0xaaaaf7da96e8):35186 -Would block, sleeping. Iteration: 2 socket: SCALAR(0xaaaaf7da96e8):35186 -Would block, sleeping. Iteration: 3 socket: SCALAR(0xaaaaf7da96e8):35186 -ssh:connection from 127.0.0.1:35186 to 127.0.0.1:34351 forwarded from 127.0.0.1:35686 to 127.0.0.1:39913 +Successudp: 0 +prefix: regex: +listen [1]: + host: 127.0.0.1 + port: 33405 +Would block, sleeping. Iteration: 1 socket: SCALAR(0xaaaac3a769c8):51730 +Would block, sleeping. Iteration: 2 socket: SCALAR(0xaaaac3a769c8):51730 +Would block, sleeping. Iteration: 3 socket: SCALAR(0xaaaac3a769c8):51730 +ssh:connection from 127.0.0.1:51730 to 127.0.0.1:44019 forwarded from 127.0.0.1:35170 to 127.0.0.1:40187 ssh: barRead ssh: bar from peer: '' Received 8 bytes: protocol ssh data [bar] +Successudp: 0 +prefix: ssh: +listen [1]: + host: 127.0.0.1 + port: 40187 ok 26 - sslh-select:ssh: probe connected correctly ok 27 - sslh-select:ssh: data shoveled correctly test_probe called with$VAR1 = { - 'data' => 'barr', 'binary' => 'sslh-select', 'no_frag' => 1, - 'expected' => 'regex' + 'expected' => 'regex', + 'data' => 'barr' }; -Would block, sleeping. Iteration: 0 socket: SCALAR(0xaaaaf7da9928):53174 +Would block, sleeping. Iteration: 0 socket: SCALAR(0xaaaac3a79708):39988 hexdump of incoming packet: 0x000000: 62 61 72 72 barr probing for ssh @@ -1658,29 +1699,19 @@ probed for syslog: PROBE_NEXT probing for regex probed for regex: PROBE_MATCH -regex:connection from 127.0.0.1:53174 to 127.0.0.1:34351 forwarded from 127.0.0.1:37806 to 127.0.0.1:33999 -Successudp: 0 -prefix: ssh: -listen [1]: - host: 127.0.0.1 - port: 39913 +regex:connection from 127.0.0.1:39988 to 127.0.0.1:44019 forwarded from 127.0.0.1:47510 to 127.0.0.1:33405 regex: barrRead regex: barr from peer: '' Received 11 bytes: protocol regex data [barr] ok 28 - sslh-select:regex: probe connected correctly -Successudp: 0 -prefix: regex: -listen [1]: - host: 127.0.0.1 - port: 33999 ok 29 - sslh-select:regex: data shoveled correctly test_probe called with$VAR1 = { 'expected' => 'regex', + 'data' => 'barrr', 'no_frag' => 1, - 'binary' => 'sslh-select', - 'data' => 'barrr' + 'binary' => 'sslh-select' }; +Would block, sleeping. Iteration: 0 socket: SCALAR(0xaaaac3a79a08):40004 hexdump of incoming packet: -Would block, sleeping. Iteration: 0 socket: SCALAR(0xaaaaf7da9b68):56958 0x000000: 62 61 72 72 72 barrr probing for ssh probed for ssh: PROBE_NEXT @@ -1700,14 +1731,14 @@ probed for syslog: PROBE_NEXT probing for regex probed for regex: PROBE_MATCH -regex:connection from 127.0.0.1:56958 to 127.0.0.1:34351 forwarded from 127.0.0.1:45088 to 127.0.0.1:33999 -regex: barrrRead regex: barrr from peer: '' -Received 12 bytes: protocol regex data [barrr] +regex:connection from 127.0.0.1:40004 to 127.0.0.1:44019 forwarded from 127.0.0.1:47524 to 127.0.0.1:33405 Successudp: 0 prefix: regex: listen [1]: host: 127.0.0.1 - port: 33999 + port: 33405 +regex: barrrRead regex: barrr from peer: '' +Received 12 bytes: protocol regex data [barrr] ok 30 - sslh-select:regex: probe connected correctly ok 31 - sslh-select:regex: data shoveled correctly sni: sni1 @@ -1721,7 +1752,7 @@ 'binary' => 'sslh-select', 'no_frag' => 1 }; -Would block, sleeping. Iteration: 0 socket: SCALAR(0xaaaaf7da9da8):56972 +Would block, sleeping. Iteration: 0 socket: SCALAR(0xaaaac3a3aa70):40008 hexdump of incoming packet: 0x000000: 16 03 01 00 c4 01 00 00 c0 03 03 03 19 01 00 40 ...............@ 0x000010: 14 13 cc 1b 94 ad 20 5d 13 1a 8d d2 65 23 70 de ...... ]....e#p. @@ -1757,9 +1788,14 @@ probed for regex: PROBE_NEXT probing for tls matching [sni1] with [sni1] -matching [alpn1] with [alpn1] +Successmatching [alpn1] with [alpn1] probed for tls: PROBE_MATCH -tls:connection from 127.0.0.1:56972 to 127.0.0.1:34351 forwarded from 127.0.0.1:57806 to 127.0.0.1:43215 +tls:connection from 127.0.0.1:40008 to 127.0.0.1:44019 forwarded from 127.0.0.1:43778 to 127.0.0.1:39177 +udp: 0 +prefix: regex: +listen [1]: + host: 127.0.0.1 + port: 33405 tls:sni1;alpn1,alpn2: @ ]e#p<]' |,8,0̨̩̪+/$(k#'g 9 3=<5/_ sni1  @@ -1771,20 +1807,24 @@ 9 3=<5/_ sni1  # alpn1hello sni/alpn] +Successudp: 0 +prefix: tls:sni1;alpn1,alpn2: +listen [1]: + host: 127.0.0.1 + port: 39177 ok 32 - sslh-select:tls:sni1;alpn1,alpn2: probe connected correctly ok 33 - sslh-select:tls:sni1;alpn1,alpn2: data shoveled correctly sni: sni1 alpn: alpn2 test_probe called with$VAR1 = { + 'no_frag' => 1, + 'binary' => 'sslh-select', 'expected' => 'tls:sni1;alpn1,alpn2', 'data' => '@ ]e#p<]\' |,8,0̨̩̪+/$(k#\'g 9 3=<5/_ sni1  -# alpn2hello sni/alpn', - 'binary' => 'sslh-select', - 'no_frag' => 1 +# alpn2hello sni/alpn' }; -Would block, sleeping. Iteration: 0 socket: SCALAR(0xaaaaf7daedd0):56986 hexdump of incoming packet: 0x000000: 16 03 01 00 c4 01 00 00 c0 03 03 03 19 01 00 40 ...............@ 0x000010: 14 13 cc 1b 94 ad 20 5d 13 1a 8d d2 65 23 70 de ...... ]....e#p. @@ -1810,6 +1850,7 @@ probed for tinc: PROBE_NEXT probing for openvpn probed for openvpn: PROBE_NEXT +Would block, sleeping. Iteration: 0 socket: SCALAR(0xaaaac3a79ae0):40020 probing for xmpp probed for xmpp: PROBE_NEXT probing for adb @@ -1823,12 +1864,7 @@ matching [alpn2] with [alpn1] matching [alpn2] with [alpn2] probed for tls: PROBE_MATCH -tls:connection from 127.0.0.1:56986 to 127.0.0.1:34351 forwarded from 127.0.0.1:57814 to 127.0.0.1:43215 -Successudp: 0 -prefix: tls:sni1;alpn1,alpn2: -listen [1]: - host: 127.0.0.1 - port: 43215 +tls:connection from 127.0.0.1:40020 to 127.0.0.1:44019 forwarded from 127.0.0.1:43788 to 127.0.0.1:39177 tls:sni1;alpn1,alpn2: @ ]e#p<]' |,8,0̨̩̪+/$(k#'g 9 3=<5/_ sni1  @@ -1840,25 +1876,30 @@ 9 3=<5/_ sni1  # alpn2hello sni/alpn] +Successudp: 0 +prefix: tls:sni1;alpn1,alpn2: +listen [1]: + host: 127.0.0.1 + port: 39177 ok 34 - sslh-select:tls:sni1;alpn1,alpn2: probe connected correctly ok 35 - sslh-select:tls:sni1;alpn1,alpn2: data shoveled correctly sni: sni2 alpn: alpn1 test_probe called with$VAR1 = { - 'expected' => 'tls:sni2,sni3;alpn1,alpn2', 'binary' => 'sslh-select', + 'no_frag' => 1, 'data' => '@ ]e#p<]\' |,8,0̨̩̪+/$(k#\'g 9 3=<5/_ sni2  # alpn1hello sni/alpn', - 'no_frag' => 1 + 'expected' => 'tls:sni2,sni3;alpn1,alpn2' }; -Would block, sleeping. Iteration: 0 socket: SCALAR(0xaaaaf7daf010):56994 hexdump of incoming packet: 0x000000: 16 03 01 00 c4 01 00 00 c0 03 03 03 19 01 00 40 ...............@ 0x000010: 14 13 cc 1b 94 ad 20 5d 13 1a 8d d2 65 23 70 de ...... ]....e#p. 0x000020: d1 3c 5d 05 19 cb 27 0d 7c 2c 89 00 00 38 c0 2c .<]...'.|,...8., 0x000030: c0 30 00 9f cc a9 cc a8 cc aa c0 2b c0 2f 00 9e .0.........+./.. +Would block, sleeping. Iteration: 0 socket: SCALAR(0xaaaac3a7a038):40030 0x000040: c0 24 c0 28 00 6b c0 23 c0 27 00 67 c0 0a c0 14 .$.(.k.#.'.g.... 0x000050: 00 39 c0 09 c0 13 00 33 00 9d 00 9c 00 3d 00 3c .9.....3.....=.< 0x000060: 00 35 00 2f 00 ff 01 00 00 5f 00 00 00 09 00 07 .5./....._...... @@ -1894,12 +1935,7 @@ matching [sni2] with [sni2] matching [alpn1] with [alpn1] probed for tls: PROBE_MATCH -tls:connection from 127.0.0.1:56994 to 127.0.0.1:34351 forwarded from 127.0.0.1:52008 to 127.0.0.1:46649 -Successudp: 0 -prefix: tls:sni1;alpn1,alpn2: -listen [1]: - host: 127.0.0.1 - port: 43215 +tls:connection from 127.0.0.1:40030 to 127.0.0.1:44019 forwarded from 127.0.0.1:60310 to 127.0.0.1:36969 tls:sni2,sni3;alpn1,alpn2: @ ]e#p<]' |,8,0̨̩̪+/$(k#'g 9 3=<5/_ sni2  @@ -1911,31 +1947,31 @@ 9 3=<5/_ sni2  # alpn1hello sni/alpn] -ok 36 - sslh-select:tls:sni2,sni3;alpn1,alpn2: probe connected correctly Successudp: 0 prefix: tls:sni2,sni3;alpn1,alpn2: listen [1]: host: 127.0.0.1 - port: 46649 + port: 36969 +ok 36 - sslh-select:tls:sni2,sni3;alpn1,alpn2: probe connected correctly ok 37 - sslh-select:tls:sni2,sni3;alpn1,alpn2: data shoveled correctly sni: sni2 alpn: alpn2 test_probe called with$VAR1 = { - 'expected' => 'tls:sni2,sni3;alpn1,alpn2', - 'binary' => 'sslh-select', 'data' => '@ ]e#p<]\' |,8,0̨̩̪+/$(k#\'g 9 3=<5/_ sni2  # alpn2hello sni/alpn', + 'expected' => 'tls:sni2,sni3;alpn1,alpn2', + 'binary' => 'sslh-select', 'no_frag' => 1 }; -Would block, sleeping. Iteration: 0 socket: SCALAR(0xaaaaf7daf268):57010 hexdump of incoming packet: 0x000000: 16 03 01 00 c4 01 00 00 c0 03 03 03 19 01 00 40 ...............@ 0x000010: 14 13 cc 1b 94 ad 20 5d 13 1a 8d d2 65 23 70 de ...... ]....e#p. 0x000020: d1 3c 5d 05 19 cb 27 0d 7c 2c 89 00 00 38 c0 2c .<]...'.|,...8., 0x000030: c0 30 00 9f cc a9 cc a8 cc aa c0 2b c0 2f 00 9e .0.........+./.. 0x000040: c0 24 c0 28 00 6b c0 23 c0 27 00 67 c0 0a c0 14 .$.(.k.#.'.g.... +Would block, sleeping. Iteration: 0 socket: SCALAR(0xaaaac3a7f2c8):56042 0x000050: 00 39 c0 09 c0 13 00 33 00 9d 00 9c 00 3d 00 3c .9.....3.....=.< 0x000060: 00 35 00 2f 00 ff 01 00 00 5f 00 00 00 09 00 07 .5./....._...... 0x000070: 00 00 04 73 6e 69 32 00 0b 00 04 03 00 01 02 00 ...sni2......... @@ -1971,7 +2007,7 @@ matching [alpn2] with [alpn1] matching [alpn2] with [alpn2] probed for tls: PROBE_MATCH -tls:connection from 127.0.0.1:57010 to 127.0.0.1:34351 forwarded from 127.0.0.1:52022 to 127.0.0.1:46649 +tls:connection from 127.0.0.1:56042 to 127.0.0.1:44019 forwarded from 127.0.0.1:60924 to 127.0.0.1:36969 tls:sni2,sni3;alpn1,alpn2: @ ]e#p<]' |,8,0̨̩̪+/$(k#'g 9 3=<5/_ sni2  @@ -1983,25 +2019,30 @@ 9 3=<5/_ sni2  # alpn2hello sni/alpn] +Successudp: 0 +prefix: tls:sni2,sni3;alpn1,alpn2: +listen [1]: + host: 127.0.0.1 + port: 36969 ok 38 - sslh-select:tls:sni2,sni3;alpn1,alpn2: probe connected correctly ok 39 - sslh-select:tls:sni2,sni3;alpn1,alpn2: data shoveled correctly sni: sni3 alpn: alpn1 test_probe called with$VAR1 = { - 'expected' => 'tls:sni2,sni3;alpn1,alpn2', 'no_frag' => 1, 'binary' => 'sslh-select', + 'expected' => 'tls:sni2,sni3;alpn1,alpn2', 'data' => '@ ]e#p<]\' |,8,0̨̩̪+/$(k#\'g 9 3=<5/_ sni3  # alpn1hello sni/alpn' }; -Would block, sleeping. Iteration: 0 socket: SCALAR(0xaaaaf7daf4a8):50448 hexdump of incoming packet: 0x000000: 16 03 01 00 c4 01 00 00 c0 03 03 03 19 01 00 40 ...............@ 0x000010: 14 13 cc 1b 94 ad 20 5d 13 1a 8d d2 65 23 70 de ...... ]....e#p. 0x000020: d1 3c 5d 05 19 cb 27 0d 7c 2c 89 00 00 38 c0 2c .<]...'.|,...8., 0x000030: c0 30 00 9f cc a9 cc a8 cc aa c0 2b c0 2f 00 9e .0.........+./.. +Would block, sleeping. Iteration: 0 socket: SCALAR(0xaaaac3a7f448):56050 0x000040: c0 24 c0 28 00 6b c0 23 c0 27 00 67 c0 0a c0 14 .$.(.k.#.'.g.... 0x000050: 00 39 c0 09 c0 13 00 33 00 9d 00 9c 00 3d 00 3c .9.....3.....=.< 0x000060: 00 35 00 2f 00 ff 01 00 00 5f 00 00 00 09 00 07 .5./....._...... @@ -2038,16 +2079,11 @@ matching [sni3] with [sni3] matching [alpn1] with [alpn1] probed for tls: PROBE_MATCH -tls:connection from 127.0.0.1:50448 to 127.0.0.1:34351 forwarded from 127.0.0.1:34710 to 127.0.0.1:46649 +tls:connection from 127.0.0.1:56050 to 127.0.0.1:44019 forwarded from 127.0.0.1:60928 to 127.0.0.1:36969 tls:sni2,sni3;alpn1,alpn2: @ ]e#p<]' |,8,0̨̩̪+/$(k#'g 9 3=<5/_ sni3  -# alpn1hello sni/alpnSuccessudp: 0 -prefix: tls:sni2,sni3;alpn1,alpn2: -listen [1]: - host: 127.0.0.1 - port: 46649 -Read tls:sni2,sni3;alpn1,alpn2: @ ]e#p<]' |,8,0̨̩̪+/$(k#'g +# alpn1hello sni/alpnRead tls:sni2,sni3;alpn1,alpn2: @ ]e#p<]' |,8,0̨̩̪+/$(k#'g 9 3=<5/_ sni3  # alpn1hello sni/alpn from peer: '' @@ -2055,30 +2091,30 @@ 9 3=<5/_ sni3  # alpn1hello sni/alpn] -ok 40 - sslh-select:tls:sni2,sni3;alpn1,alpn2: probe connected correctly Successudp: 0 prefix: tls:sni2,sni3;alpn1,alpn2: listen [1]: host: 127.0.0.1 - port: 46649 + port: 36969 +ok 40 - sslh-select:tls:sni2,sni3;alpn1,alpn2: probe connected correctly ok 41 - sslh-select:tls:sni2,sni3;alpn1,alpn2: data shoveled correctly sni: sni3 alpn: alpn2 test_probe called with$VAR1 = { - 'no_frag' => 1, 'binary' => 'sslh-select', + 'no_frag' => 1, + 'expected' => 'tls:sni2,sni3;alpn1,alpn2', 'data' => '@ ]e#p<]\' |,8,0̨̩̪+/$(k#\'g 9 3=<5/_ sni3  -# alpn2hello sni/alpn', - 'expected' => 'tls:sni2,sni3;alpn1,alpn2' +# alpn2hello sni/alpn' }; -Would block, sleeping. Iteration: 0 socket: SCALAR(0xaaaaf7daf6e8):50458 hexdump of incoming packet: 0x000000: 16 03 01 00 c4 01 00 00 c0 03 03 03 19 01 00 40 ...............@ 0x000010: 14 13 cc 1b 94 ad 20 5d 13 1a 8d d2 65 23 70 de ...... ]....e#p. 0x000020: d1 3c 5d 05 19 cb 27 0d 7c 2c 89 00 00 38 c0 2c .<]...'.|,...8., 0x000030: c0 30 00 9f cc a9 cc a8 cc aa c0 2b c0 2f 00 9e .0.........+./.. +Would block, sleeping. Iteration: 0 socket: SCALAR(0xaaaac3a79d20):56054 0x000040: c0 24 c0 28 00 6b c0 23 c0 27 00 67 c0 0a c0 14 .$.(.k.#.'.g.... 0x000050: 00 39 c0 09 c0 13 00 33 00 9d 00 9c 00 3d 00 3c .9.....3.....=.< 0x000060: 00 35 00 2f 00 ff 01 00 00 5f 00 00 00 09 00 07 .5./....._...... @@ -2116,7 +2152,7 @@ matching [alpn2] with [alpn1] matching [alpn2] with [alpn2] probed for tls: PROBE_MATCH -tls:connection from 127.0.0.1:50458 to 127.0.0.1:34351 forwarded from 127.0.0.1:34718 to 127.0.0.1:46649 +tls:connection from 127.0.0.1:56054 to 127.0.0.1:44019 forwarded from 127.0.0.1:60942 to 127.0.0.1:36969 tls:sni2,sni3;alpn1,alpn2: @ ]e#p<]' |,8,0̨̩̪+/$(k#'g 9 3=<5/_ sni3  @@ -2128,26 +2164,31 @@ 9 3=<5/_ sni3  # alpn2hello sni/alpn] +Successudp: 0 +prefix: tls:sni2,sni3;alpn1,alpn2: +listen [1]: + host: 127.0.0.1 + port: 36969 ok 42 - sslh-select:tls:sni2,sni3;alpn1,alpn2: probe connected correctly ok 43 - sslh-select:tls:sni2,sni3;alpn1,alpn2: data shoveled correctly sni: alpn: alpn3 test_probe called with$VAR1 = { + 'no_frag' => 1, 'binary' => 'sslh-select', + 'expected' => 'tls:;alpn3', 'data' => '␢)1DQT[Qf? +$V8,0̨̩̪+/$(k#\'g 9 3=<5/R  -# alpn3hello alpn', - 'no_frag' => 1, - 'expected' => 'tls:;alpn3' +# alpn3hello alpn' }; -Would block, sleeping. Iteration: 0 socket: SCALAR(0xaaaaf7daf928):50464 hexdump of incoming packet: 0x000000: 16 03 01 00 b7 01 00 00 b3 03 03 e2 90 a2 29 03 ..............). 0x000010: 31 ad 98 44 51 54 90 5b d9 51 0e 66 b5 3f e8 8b 1..DQT.[.Q.f.?.. 0x000020: 09 c9 e4 2b 97 24 ef ad 56 06 c9 00 00 38 c0 2c ...+.$..V....8., 0x000030: c0 30 00 9f cc a9 cc a8 cc aa c0 2b c0 2f 00 9e .0.........+./.. 0x000040: c0 24 c0 28 00 6b c0 23 c0 27 00 67 c0 0a c0 14 .$.(.k.#.'.g.... +Would block, sleeping. Iteration: 0 socket: SCALAR(0xaaaac3a7f8e0):56056 0x000050: 00 39 c0 09 c0 13 00 33 00 9d 00 9c 00 3d 00 3c .9.....3.....=.< 0x000060: 00 35 00 2f 00 ff 01 00 00 52 00 0b 00 04 03 00 .5./.....R...... 0x000070: 01 02 00 0a 00 0a 00 08 00 1d 00 17 00 19 00 18 ................ @@ -2187,12 +2228,7 @@ probing for tls matching [alpn3] with [alpn3] probed for tls: PROBE_MATCH -tls:connection from 127.0.0.1:50464 to 127.0.0.1:34351 forwarded from 127.0.0.1:35176 to 127.0.0.1:42937 -Successudp: 0 -prefix: tls:sni2,sni3;alpn1,alpn2: -listen [1]: - host: 127.0.0.1 - port: 46649 +tls:connection from 127.0.0.1:56056 to 127.0.0.1:44019 forwarded from 127.0.0.1:34986 to 127.0.0.1:45607 tls:;alpn3: ␢)1DQT[Qf? +$V8,0̨̩̪+/$(k#'g 9 3=<5/R  @@ -2204,24 +2240,29 @@ 9 3=<5/R  # alpn3hello alpn] +Successudp: 0 +prefix: tls:;alpn3: +listen [1]: + host: 127.0.0.1 + port: 45607 ok 44 - sslh-select:tls:;alpn3: probe connected correctly ok 45 - sslh-select:tls:;alpn3: data shoveled correctly sni: sni3 alpn: test_probe called with$VAR1 = { + 'no_frag' => 1, + 'binary' => 'sslh-select', 'expected' => 'tls:sni3;', 'data' => '魆![\'KUP/7%Y728,0̨̩̪+/$(k#\'g 9 3=<5/S sni3  -# hello sni', - 'binary' => 'sslh-select', - 'no_frag' => 1 +# hello sni' }; -Would block, sleeping. Iteration: 0 socket: SCALAR(0xaaaaf7dafb38):50478 hexdump of incoming packet: 0x000000: 16 03 01 00 b8 01 00 00 b4 03 03 97 e4 e9 ad 86 ................ 0x000010: e1 21 fd c4 5b 27 0e ad 4b 55 c2 50 e4 1c 86 2f .!..['..KU.P.../ 0x000020: 37 25 de e8 9c 59 fc 1b a9 37 32 00 00 38 c0 2c 7%...Y...72..8., +Would block, sleeping. Iteration: 0 socket: SCALAR(0xaaaac3a7f940):56060 0x000030: c0 30 00 9f cc a9 cc a8 cc aa c0 2b c0 2f 00 9e .0.........+./.. 0x000040: c0 24 c0 28 00 6b c0 23 c0 27 00 67 c0 0a c0 14 .$.(.k.#.'.g.... 0x000050: 00 39 c0 09 c0 13 00 33 00 9d 00 9c 00 3d 00 3c .9.....3.....=.< @@ -2262,12 +2303,7 @@ probing for tls matching [sni3] with [sni3] probed for tls: PROBE_MATCH -tls:connection from 127.0.0.1:50478 to 127.0.0.1:34351 forwarded from 127.0.0.1:37286 to 127.0.0.1:37123 -Successudp: 0 -prefix: tls:;alpn3: -listen [1]: - host: 127.0.0.1 - port: 42937 +tls:connection from 127.0.0.1:56060 to 127.0.0.1:44019 forwarded from 127.0.0.1:48614 to 127.0.0.1:37651 tls:sni3;: 魆!['KUP/7%Y728,0̨̩̪+/$(k#'g 9 3=<5/S sni3  @@ -2279,18 +2315,22 @@ 9 3=<5/S sni3  # hello sni] +Successudp: 0 +prefix: tls:sni3;: +listen [1]: + host: 127.0.0.1 + port: 37651 ok 46 - sslh-select:tls:sni3;: probe connected correctly ok 47 - sslh-select:tls:sni3;: data shoveled correctly test_probe called with$VAR1 = { - 'expected' => 'tls', - 'no_frag' => 1, 'data' => '"3CzÉEQ<($jxؐXe-u8,0̨̩̪+/$(k#\'g 9 3=<5/F  # hello tls alone', - 'binary' => 'sslh-select' + 'expected' => 'tls', + 'binary' => 'sslh-select', + 'no_frag' => 1 }; -Would block, sleeping. Iteration: 0 socket: SCALAR(0xaaaaf7db1360):50486 hexdump of incoming packet: 0x000000: 16 03 01 00 ab 01 00 00 a7 03 03 89 22 33 95 43 ............"3.C 0x000010: 7a c3 89 45 51 12 3c 28 24 1b 6a 78 bf be 95 d8 z..EQ.<($.jx.... @@ -2298,6 +2338,7 @@ 0x000030: c0 30 00 9f cc a9 cc a8 cc aa c0 2b c0 2f 00 9e .0.........+./.. 0x000040: c0 24 c0 28 00 6b c0 23 c0 27 00 67 c0 0a c0 14 .$.(.k.#.'.g.... 0x000050: 00 39 c0 09 c0 13 00 33 00 9d 00 9c 00 3d 00 3c .9.....3.....=.< +Would block, sleeping. Iteration: 0 socket: SCALAR(0xaaaac3a7f5b0):47470 0x000060: 00 35 00 2f 00 ff 01 00 00 46 00 0b 00 04 03 00 .5./.....F...... 0x000070: 01 02 00 0a 00 0a 00 08 00 1d 00 17 00 19 00 18 ................ 0x000080: 00 23 00 00 00 0d 00 20 00 1e 06 01 06 02 06 03 .#..... ........ @@ -2332,12 +2373,7 @@ probed for tls: PROBE_NEXT probing for tls probed for tls: PROBE_MATCH -tls:connection from 127.0.0.1:50486 to 127.0.0.1:34351 forwarded from 127.0.0.1:54410 to 127.0.0.1:37407 -Successudp: 0 -prefix: tls:sni3;: -listen [1]: - host: 127.0.0.1 - port: 37123 +tls:connection from 127.0.0.1:47470 to 127.0.0.1:44019 forwarded from 127.0.0.1:47052 to 127.0.0.1:40777 tls: "3CzÉEQ<($jxؐXe-u8,0̨̩̪+/$(k#'g 9 3=<5/F  @@ -2349,20 +2385,19 @@ 9 3=<5/F  # hello tls alone] +Successudp: 0 +prefix: tls: +listen [1]: + host: 127.0.0.1 + port: 40777 ok 48 - sslh-select:tls: probe connected correctly ok 49 - sslh-select:tls: data shoveled correctly -test_probe called withSuccess$VAR1 = { - 'expected' => 'anyprot', +test_probe called with$VAR1 = { 'binary' => 'sslh-select', - 'data' => 'hello anyprot this needs to be longer than xmpp and adb which expect about 50 characters, which I all have to write before the timeout!', - 'no_frag' => 1 + 'no_frag' => 1, + 'expected' => 'anyprot', + 'data' => 'hello anyprot this needs to be longer than xmpp and adb which expect about 50 characters, which I all have to write before the timeout!' }; -udp: 0 -prefix: tls: -listen [1]: - host: 127.0.0.1 - port: 37407 -Would block, sleeping. Iteration: 0 socket: SCALAR(0xaaaaf7db1570):41494 hexdump of incoming packet: 0x000000: 68 65 6c 6c 6f 20 61 6e 79 70 72 6f 74 20 74 68 hello anyprot th 0x000010: 69 73 20 6e 65 65 64 73 20 74 6f 20 62 65 20 6c is needs to be l @@ -2370,6 +2405,7 @@ 0x000030: 61 6e 64 20 61 64 62 20 77 68 69 63 68 20 65 78 and adb which ex 0x000040: 70 65 63 74 20 61 62 6f 75 74 20 35 30 20 63 68 pect about 50 ch 0x000050: 61 72 61 63 74 65 72 73 2c 20 77 68 69 63 68 20 aracters, which +Would block, sleeping. Iteration: 0 socket: SCALAR(0xaaaac3a80138):47472 0x000060: 49 20 61 6c 6c 20 68 61 76 65 20 74 6f 20 77 72 I all have to wr 0x000070: 69 74 65 20 62 65 66 6f 72 65 20 74 68 65 20 74 ite before the t 0x000080: 69 6d 65 6f 75 74 21 imeout! @@ -2407,20 +2443,20 @@ Request did not begin with TLS handshake. probed for tls: PROBE_NEXT probing for anyprot -anyprot:connection from 127.0.0.1:41494 to 127.0.0.1:34351 forwarded from 127.0.0.1:54434 to 127.0.0.1:40671 +anyprot:connection from 127.0.0.1:47472 to 127.0.0.1:44019 forwarded from 127.0.0.1:38824 to 127.0.0.1:43919 anyprot: hello anyprot this needs to be longer than xmpp and adb which expect about 50 characters, which I all have to write before the timeout!Read anyprot: hello anyprot this needs to be longer than xmpp and adb which expect about 50 characters, which I all have to write before the timeout! from peer: '' Received 144 bytes: protocol anyprot data [hello anyprot this needs to be longer than xmpp and adb which expect about 50 characters, which I all have to write before the timeout!] Successudp: 0 prefix: anyprot: listen [1]: host: 127.0.0.1 - port: 40671 + port: 43919 ok 50 - sslh-select:anyprot: probe connected correctly ok 51 - sslh-select:anyprot: data shoveled correctly test_probe called with$VAR1 = { - 'expected' => 'ssh', 'data' => 'SSH-2.0 tester ', + 'expected' => 'ssh', 'binary' => 'sslh-select' }; hexdump of incoming packet: @@ -2520,7 +2556,7 @@ 0x000000: 53 53 48 2d SSH- probing for ssh probed for ssh: PROBE_MATCH -ssh:connection from 127.0.0.1:41500 to 127.0.0.1:34351 forwarded from 127.0.0.1:39798 to 127.0.0.1:39913 +ssh:connection from 127.0.0.1:47480 to 127.0.0.1:44019 forwarded from 127.0.0.1:42560 to 127.0.0.1:40187 ssh: SSH-Read ssh: SSH-2.0 tester from peer: '' Received 20 bytes: protocol ssh data [SSH-2.0 tester @@ -2529,12 +2565,12 @@ prefix: ssh: listen [1]: host: 127.0.0.1 - port: 39913 + port: 40187 ok 52 - sslh-select:ssh: probe connected correctly ok 53 - sslh-select:ssh: data shoveled correctly test_probe called with$VAR1 = { - 'expected' => 'socks5', 'binary' => 'sslh-select', + 'expected' => 'socks5', 'data' => '' }; hexdump of incoming packet: @@ -2703,19 +2739,22 @@ probed for ssh: PROBE_NEXT probing for socks5 probed for socks5: PROBE_MATCH -socks5:connection from 127.0.0.1:41514 to 127.0.0.1:34351 forwarded from 127.0.0.1:33642 to 127.0.0.1:34241 -Would block, sleeping. Iteration: 0 socket: SCALAR(0xaaaaf7db1990):41514 +socks5:connection from 127.0.0.1:47484 to 127.0.0.1:44019 forwarded from 127.0.0.1:37314 to 127.0.0.1:42463 socks5: Read socks5:  from peer: '' Received 14 bytes: protocol socks5 data [] +Successudp: 0 +prefix: socks5: +listen [1]: + host: 127.0.0.1 + port: 42463 ok 54 - sslh-select:socks5: probe connected correctly ok 55 - sslh-select:socks5: data shoveled correctly test_probe called with$VAR1 = { + 'no_frag' => 1, 'binary' => 'sslh-select', 'data' => 'GET index.html HTTP/1.1', - 'no_frag' => 1, 'expected' => 'http' }; -Would block, sleeping. Iteration: 0 socket: SCALAR(0xaaaaf7db1bd0):41524 hexdump of incoming packet: 0x000000: 47 45 54 20 69 6e 64 65 78 2e 68 74 6d 6c 20 48 GET index.html H 0x000010: 54 54 50 2f 31 2e 31 TTP/1.1 @@ -2725,14 +2764,15 @@ probed for socks5: PROBE_NEXT probing for http probed for http: PROBE_MATCH -http:connection from 127.0.0.1:41524 to 127.0.0.1:34351 forwarded from 127.0.0.1:57248 to 127.0.0.1:33101 +Would block, sleeping. Iteration: 0 socket: SCALAR(0xaaaac3a822c0):47492 +http:connection from 127.0.0.1:47492 to 127.0.0.1:44019 forwarded from 127.0.0.1:42030 to 127.0.0.1:38045 +http: GET index.html HTTP/1.1Read http: GET index.html HTTP/1.1 from peer: '' +Received 29 bytes: protocol http data [GET index.html HTTP/1.1] Successudp: 0 -prefix: socks5: +prefix: http: listen [1]: host: 127.0.0.1 - port: 34241 -http: GET index.html HTTP/1.1Read http: GET index.html HTTP/1.1 from peer: '' -Received 29 bytes: protocol http data [GET index.html HTTP/1.1] + port: 38045 ok 56 - sslh-select:http: probe connected correctly ok 57 - sslh-select:http: data shoveled correctly test_probe called with$VAR1 = { @@ -2746,12 +2786,7 @@ probed for ssh: PROBE_AGAIN probing for socks5 probed for socks5: PROBE_AGAIN -Successprobing for http -udp: 0 -prefix: http: -listen [1]: - host: 127.0.0.1 - port: 33101 +probing for http probed for http: PROBE_AGAIN probing for tinc probed for tinc: PROBE_AGAIN @@ -2786,16 +2821,21 @@ probed for http: PROBE_AGAIN probing for tinc probed for tinc: PROBE_MATCH -tinc:connection from 127.0.0.1:41528 to 127.0.0.1:34351 forwarded from 127.0.0.1:40848 to 127.0.0.1:36977 -tinc: 0 hRead tinc: 0 hello from peer: '' +tinc:connection from 127.0.0.1:47502 to 127.0.0.1:44019 forwarded from 127.0.0.1:44090 to 127.0.0.1:44685 +tinc: 0 Read tinc: 0 hello from peer: '' Received 13 bytes: protocol tinc data [0 hello] ok 58 - sslh-select:tinc: probe connected correctly ok 59 - sslh-select:tinc: data shoveled correctly test_probe called with$VAR1 = { - 'binary' => 'sslh-select', 'data' => '', - 'expected' => 'openvpn' + 'expected' => 'openvpn', + 'binary' => 'sslh-select' }; +Successudp: 0 +prefix: tinc: +listen [1]: + host: 127.0.0.1 + port: 44685 hexdump of incoming packet: 0x000000: 00 . probing for ssh @@ -2808,7 +2848,7 @@ probed for tinc: PROBE_AGAIN probing for openvpn probed for openvpn: PROBE_AGAIN -Successprobing for xmpp +probing for xmpp probed for xmpp: PROBE_AGAIN probing for adb probed for adb: PROBE_AGAIN @@ -2827,11 +2867,6 @@ probing for tls probed for tls: PROBE_AGAIN probing for anyprot -udp: 0 -prefix: tinc: -listen [1]: - host: 127.0.0.1 - port: 36977 hexdump of incoming packet: 0x000000: 00 00 .. probing for ssh @@ -2844,16 +2879,15 @@ probed for tinc: PROBE_NEXT probing for openvpn probed for openvpn: PROBE_MATCH -openvpn:connection from 127.0.0.1:41540 to 127.0.0.1:34351 forwarded from 127.0.0.1:45550 to 127.0.0.1:45015 -Would block, sleeping. Iteration: 0 socket: SCALAR(0xaaaaf7db2050):41540 +openvpn:connection from 127.0.0.1:47512 to 127.0.0.1:44019 forwarded from 127.0.0.1:45744 to 127.0.0.1:45677 openvpn: Read openvpn: from peer: '' Received 11 bytes: protocol openvpn data [] ok 60 - sslh-select:openvpn: probe connected correctly ok 61 - sslh-select:openvpn: data shoveled correctly test_probe called with$VAR1 = { 'binary' => 'sslh-select', - 'data' => 'I should get a real jabber connection initialisation here', - 'expected' => 'xmpp' + 'expected' => 'xmpp', + 'data' => 'I should get a real jabber connection initialisation here' }; hexdump of incoming packet: 0x000000: 49 I @@ -2890,7 +2924,7 @@ prefix: openvpn: listen [1]: host: 127.0.0.1 - port: 45015 + port: 45677 hexdump of incoming packet: 0x000000: 49 20 I probing for ssh @@ -3764,15 +3798,10 @@ probed for openvpn: PROBE_NEXT probing for xmpp probed for xmpp: PROBE_MATCH -xmpp:connection from 127.0.0.1:41550 to 127.0.0.1:34351 forwarded from 127.0.0.1:33862 to 127.0.0.1:41807 -xmpp: I should get a real jabber Read xmpp: I should get a real jabber connection initialisation here from peer: '' +xmpp:connection from 127.0.0.1:47524 to 127.0.0.1:44019 forwarded from 127.0.0.1:56852 to 127.0.0.1:33513 +xmpp: I should get a real jabberRead xmpp: I should get a real jabber connection initialisation here from peer: '' Received 63 bytes: protocol xmpp data [I should get a real jabber connection initialisation here] ok 62 - sslh-select:xmpp: probe connected correctly -Successudp: 0 -prefix: xmpp: -listen [1]: - host: 127.0.0.1 - port: 41807 ok 63 - sslh-select:xmpp: data shoveled correctly test_probe called with$VAR1 = { 'binary' => 'sslh-select', @@ -3810,6 +3839,11 @@ probing for tls probed for tls: PROBE_AGAIN probing for anyprot +Successudp: 0 +prefix: xmpp: +listen [1]: + host: 127.0.0.1 + port: 33513 hexdump of incoming packet: 0x000000: 43 4e CN probing for ssh @@ -4833,19 +4867,14 @@ probed for xmpp: PROBE_AGAIN probing for adb probed for adb: PROBE_MATCH -adb:connection from 127.0.0.1:39928 to 127.0.0.1:34351 forwarded from 127.0.0.1:46910 to 127.0.0.1:36667 +adb:connection from 127.0.0.1:47532 to 127.0.0.1:44019 forwarded from 127.0.0.1:47924 to 127.0.0.1:33865 adb: CNXN....................host:.Read adb: CNXN....................host:... from peer: '' Received 37 bytes: protocol adb data [CNXN....................host:...] -Successok 64 - sslh-select:adb: probe connected correctly -udp: 0 -prefix: adb: -listen [1]: - host: 127.0.0.1 - port: 36667 +ok 64 - sslh-select:adb: probe connected correctly ok 65 - sslh-select:adb: data shoveled correctly test_probe called with$VAR1 = { - 'expected' => 'syslog', 'data' => '<42> My syslog message', + 'expected' => 'syslog', 'binary' => 'sslh-select' }; hexdump of incoming packet: @@ -4879,6 +4908,11 @@ probing for tls probed for tls: PROBE_AGAIN probing for anyprot +Successudp: 0 +prefix: adb: +listen [1]: + host: 127.0.0.1 + port: 33865 hexdump of incoming packet: 0x000000: 3c 34 <4 probing for ssh @@ -4897,15 +4931,15 @@ probed for adb: PROBE_AGAIN probing for syslog probed for syslog: PROBE_MATCH -syslog:connection from 127.0.0.1:39930 to 127.0.0.1:34351 forwarded from 127.0.0.1:45178 to 127.0.0.1:46599 +syslog:connection from 127.0.0.1:47548 to 127.0.0.1:44019 forwarded from 127.0.0.1:34248 to 127.0.0.1:35659 syslog: <4Read syslog: <42> My syslog message from peer: '' Received 30 bytes: protocol syslog data [<42> My syslog message] ok 66 - sslh-select:syslog: probe connected correctly ok 67 - sslh-select:syslog: data shoveled correctly test_probe called with$VAR1 = { 'expected' => 'ssh', - 'binary' => 'sslh-select', - 'data' => 'foo' + 'data' => 'foo', + 'binary' => 'sslh-select' }; hexdump of incoming packet: 0x000000: 66 f @@ -4942,7 +4976,7 @@ prefix: syslog: listen [1]: host: 127.0.0.1 - port: 46599 + port: 35659 hexdump of incoming packet: 0x000000: 66 6f fo probing for ssh @@ -5005,19 +5039,24 @@ probing for tls probed for tls: PROBE_AGAIN probing for anyprot -Would block, sleeping. Iteration: 0 socket: SCALAR(0xaaaaf7db5c38):39934 -Would block, sleeping. Iteration: 1 socket: SCALAR(0xaaaaf7db5c38):39934 -Would block, sleeping. Iteration: 2 socket: SCALAR(0xaaaaf7db5c38):39934 -Would block, sleeping. Iteration: 3 socket: SCALAR(0xaaaaf7db5c38):39934 -ssh:connection from 127.0.0.1:39934 to 127.0.0.1:34351 forwarded from 127.0.0.1:41532 to 127.0.0.1:39913 +Would block, sleeping. Iteration: 0 socket: SCALAR(0xaaaac3a85e78):47560 +Would block, sleeping. Iteration: 1 socket: SCALAR(0xaaaac3a85e78):47560 +Would block, sleeping. Iteration: 2 socket: SCALAR(0xaaaac3a85e78):47560 +Would block, sleeping. Iteration: 3 socket: SCALAR(0xaaaac3a85e78):47560 +ssh:connection from 127.0.0.1:47560 to 127.0.0.1:44019 forwarded from 127.0.0.1:53790 to 127.0.0.1:40187 ssh: fooRead ssh: foo from peer: '' Received 8 bytes: protocol ssh data [foo] +Successudp: 0 +prefix: ssh: +listen [1]: + host: 127.0.0.1 + port: 40187 ok 68 - sslh-select:ssh: probe connected correctly ok 69 - sslh-select:ssh: data shoveled correctly test_probe called with$VAR1 = { - 'binary' => 'sslh-select', 'data' => 'fooo', - 'expected' => 'regex' + 'expected' => 'regex', + 'binary' => 'sslh-select' }; hexdump of incoming packet: 0x000000: 66 f @@ -5050,11 +5089,6 @@ probing for tls probed for tls: PROBE_AGAIN probing for anyprot -Successudp: 0 -prefix: ssh: -listen [1]: - host: 127.0.0.1 - port: 39913 hexdump of incoming packet: 0x000000: 66 6f fo probing for ssh @@ -5137,14 +5171,19 @@ probed for syslog: PROBE_NEXT probing for regex probed for regex: PROBE_MATCH -regex:connection from 127.0.0.1:53322 to 127.0.0.1:34351 forwarded from 127.0.0.1:41558 to 127.0.0.1:33999 +regex:connection from 127.0.0.1:49142 to 127.0.0.1:44019 forwarded from 127.0.0.1:56796 to 127.0.0.1:33405 regex: foooRead regex: fooo from peer: '' Received 11 bytes: protocol regex data [fooo] +Successudp: 0 +prefix: regex: +listen [1]: + host: 127.0.0.1 + port: 33405 ok 70 - sslh-select:regex: probe connected correctly ok 71 - sslh-select:regex: data shoveled correctly test_probe called with$VAR1 = { - 'data' => 'bar', 'binary' => 'sslh-select', + 'data' => 'bar', 'expected' => 'ssh' }; hexdump of incoming packet: @@ -5178,11 +5217,6 @@ probing for tls probed for tls: PROBE_AGAIN probing for anyprot -Successudp: 0 -prefix: regex: -listen [1]: - host: 127.0.0.1 - port: 33999 hexdump of incoming packet: 0x000000: 62 61 ba probing for ssh @@ -5245,19 +5279,24 @@ probing for tls probed for tls: PROBE_AGAIN probing for anyprot -Would block, sleeping. Iteration: 0 socket: SCALAR(0xaaaaf7db60e8):53338 -Would block, sleeping. Iteration: 1 socket: SCALAR(0xaaaaf7db60e8):53338 -Would block, sleeping. Iteration: 2 socket: SCALAR(0xaaaaf7db60e8):53338 -Would block, sleeping. Iteration: 3 socket: SCALAR(0xaaaaf7db60e8):53338 -ssh:connection from 127.0.0.1:53338 to 127.0.0.1:34351 forwarded from 127.0.0.1:33842 to 127.0.0.1:39913 +Would block, sleeping. Iteration: 0 socket: SCALAR(0xaaaac3a82e78):49158 +Would block, sleeping. Iteration: 1 socket: SCALAR(0xaaaac3a82e78):49158 +Would block, sleeping. Iteration: 2 socket: SCALAR(0xaaaac3a82e78):49158 +Would block, sleeping. Iteration: 3 socket: SCALAR(0xaaaac3a82e78):49158 +ssh: lost incoming connection ssh: barRead ssh: bar from peer: '' Received 8 bytes: protocol ssh data [bar] +Successudp: 0 +prefix: ssh: +listen [1]: + host: 127.0.0.1 + port: 40187 ok 72 - sslh-select:ssh: probe connected correctly ok 73 - sslh-select:ssh: data shoveled correctly test_probe called with$VAR1 = { 'binary' => 'sslh-select', - 'data' => 'barr', - 'expected' => 'regex' + 'expected' => 'regex', + 'data' => 'barr' }; hexdump of incoming packet: 0x000000: 62 b @@ -5290,11 +5329,6 @@ probing for tls probed for tls: PROBE_AGAIN probing for anyprot -Successudp: 0 -prefix: ssh: -listen [1]: - host: 127.0.0.1 - port: 39913 hexdump of incoming packet: 0x000000: 62 61 ba probing for ssh @@ -5377,21 +5411,15 @@ probed for syslog: PROBE_NEXT probing for regex probed for regex: PROBE_MATCH -regex:connection from 127.0.0.1:58772 to 127.0.0.1:34351 forwarded from 127.0.0.1:48744 to 127.0.0.1:33999 -Would block, sleeping. Iteration: 0 socket: SCALAR(0xaaaaf7db6328):58772 +regex:connection from 127.0.0.1:48006 to 127.0.0.1:44019 forwarded from 127.0.0.1:50610 to 127.0.0.1:33405 regex: barrRead regex: barr from peer: '' Received 11 bytes: protocol regex data [barr] ok 74 - sslh-select:regex: probe connected correctly -Successudp: 0 -prefix: regex: -listen [1]: - host: 127.0.0.1 - port: 33999 ok 75 - sslh-select:regex: data shoveled correctly test_probe called with$VAR1 = { - 'expected' => 'regex', + 'binary' => 'sslh-select', 'data' => 'barrr', - 'binary' => 'sslh-select' + 'expected' => 'regex' }; hexdump of incoming packet: 0x000000: 62 b @@ -5424,6 +5452,11 @@ probing for tls probed for tls: PROBE_AGAIN probing for anyprot +Successudp: 0 +prefix: regex: +listen [1]: + host: 127.0.0.1 + port: 33405 hexdump of incoming packet: 0x000000: 62 61 ba probing for ssh @@ -5506,25 +5539,20 @@ probed for syslog: PROBE_NEXT probing for regex probed for regex: PROBE_MATCH -regex:connection from 127.0.0.1:56638 to 127.0.0.1:34351 forwarded from 127.0.0.1:47328 to 127.0.0.1:33999 -regex: barrrRead regex: barrr from peer: '' +regex:connection from 127.0.0.1:48022 to 127.0.0.1:44019 forwarded from 127.0.0.1:50614 to 127.0.0.1:33405 +regex: barrRead regex: barrr from peer: '' Received 12 bytes: protocol regex data [barrr] ok 76 - sslh-select:regex: probe connected correctly -Successudp: 0 -prefix: regex: -listen [1]: - host: 127.0.0.1 - port: 33999 ok 77 - sslh-select:regex: data shoveled correctly sni: sni1 alpn: alpn1 test_probe called with$VAR1 = { 'expected' => 'tls:sni1;alpn1,alpn2', - 'binary' => 'sslh-select', 'data' => '@ ]e#p<]\' |,8,0̨̩̪+/$(k#\'g 9 3=<5/_ sni1  -# alpn1hello sni/alpn' +# alpn1hello sni/alpn', + 'binary' => 'sslh-select' }; hexdump of incoming packet: 0x000000: 16 . @@ -5557,6 +5585,11 @@ probing for tls probed for tls: PROBE_AGAIN probing for anyprot +Successudp: 0 +prefix: regex: +listen [1]: + host: 127.0.0.1 + port: 33405 hexdump of incoming packet: 0x000000: 16 03 .. probing for ssh @@ -12914,7 +12947,7 @@ matching [sni1] with [sni1] matching [alpn1] with [alpn1] probed for tls: PROBE_MATCH -tls:connection from 127.0.0.1:56644 to 127.0.0.1:34351 forwarded from 127.0.0.1:40386 to 127.0.0.1:43215 +tls:connection from 127.0.0.1:48034 to 127.0.0.1:44019 forwarded from 127.0.0.1:48054 to 127.0.0.1:39177 tls:sni1;alpn1,alpn2: @ ]e#p<]' |,8,0̨̩̪+/$(k#'g 9 3=<5/_ sni1  @@ -12927,21 +12960,16 @@ # alpn1hello sni/alpn] ok 78 - sslh-select:tls:sni1;alpn1,alpn2: probe connected correctly -Successudp: 0 -prefix: tls:sni1;alpn1,alpn2: -listen [1]: - host: 127.0.0.1 - port: 43215 ok 79 - sslh-select:tls:sni1;alpn1,alpn2: data shoveled correctly sni: sni1 alpn: alpn2 test_probe called with$VAR1 = { 'expected' => 'tls:sni1;alpn1,alpn2', - 'binary' => 'sslh-select', 'data' => '@ ]e#p<]\' |,8,0̨̩̪+/$(k#\'g 9 3=<5/_ sni1  -# alpn2hello sni/alpn' +# alpn2hello sni/alpn', + 'binary' => 'sslh-select' }; hexdump of incoming packet: 0x000000: 16 . @@ -12974,6 +13002,11 @@ probing for tls probed for tls: PROBE_AGAIN probing for anyprot +Successudp: 0 +prefix: tls:sni1;alpn1,alpn2: +listen [1]: + host: 127.0.0.1 + port: 39177 hexdump of incoming packet: 0x000000: 16 03 .. probing for ssh @@ -20332,7 +20365,7 @@ matching [alpn2] with [alpn1] matching [alpn2] with [alpn2] probed for tls: PROBE_MATCH -tls:connection from 127.0.0.1:56656 to 127.0.0.1:34351 forwarded from 127.0.0.1:40392 to 127.0.0.1:43215 +tls:connection from 127.0.0.1:48044 to 127.0.0.1:44019 forwarded from 127.0.0.1:34180 to 127.0.0.1:39177 tls:sni1;alpn1,alpn2: @ ]e#p<]' |,8,0̨̩̪+/$(k#'g 9 3=<5/_ sni1  @@ -20345,21 +20378,16 @@ # alpn2hello sni/alpn] ok 80 - sslh-select:tls:sni1;alpn1,alpn2: probe connected correctly -Successudp: 0 -prefix: tls:sni1;alpn1,alpn2: -listen [1]: - host: 127.0.0.1 - port: 43215 ok 81 - sslh-select:tls:sni1;alpn1,alpn2: data shoveled correctly sni: sni2 alpn: alpn1 test_probe called with$VAR1 = { - 'binary' => 'sslh-select', + 'expected' => 'tls:sni2,sni3;alpn1,alpn2', 'data' => '@ ]e#p<]\' |,8,0̨̩̪+/$(k#\'g 9 3=<5/_ sni2  # alpn1hello sni/alpn', - 'expected' => 'tls:sni2,sni3;alpn1,alpn2' + 'binary' => 'sslh-select' }; hexdump of incoming packet: 0x000000: 16 . @@ -20392,6 +20420,11 @@ probing for tls probed for tls: PROBE_AGAIN probing for anyprot +Successudp: 0 +prefix: tls:sni1;alpn1,alpn2: +listen [1]: + host: 127.0.0.1 + port: 39177 hexdump of incoming packet: 0x000000: 16 03 .. probing for ssh @@ -27752,7 +27785,7 @@ matching [sni2] with [sni2] matching [alpn1] with [alpn1] probed for tls: PROBE_MATCH -tls:connection from 127.0.0.1:56666 to 127.0.0.1:34351 forwarded from 127.0.0.1:43936 to 127.0.0.1:46649 +tls:connection from 127.0.0.1:47202 to 127.0.0.1:44019 forwarded from 127.0.0.1:49370 to 127.0.0.1:36969 tls:sni2,sni3;alpn1,alpn2: @ ]e#p<]' |,8,0̨̩̪+/$(k#'g 9 3=<5/_ sni2  @@ -27765,21 +27798,16 @@ # alpn1hello sni/alpn] ok 82 - sslh-select:tls:sni2,sni3;alpn1,alpn2: probe connected correctly -Successudp: 0 -prefix: tls:sni2,sni3;alpn1,alpn2: -listen [1]: - host: 127.0.0.1 - port: 46649 ok 83 - sslh-select:tls:sni2,sni3;alpn1,alpn2: data shoveled correctly sni: sni2 alpn: alpn2 test_probe called with$VAR1 = { 'binary' => 'sslh-select', + 'expected' => 'tls:sni2,sni3;alpn1,alpn2', 'data' => '@ ]e#p<]\' |,8,0̨̩̪+/$(k#\'g 9 3=<5/_ sni2  -# alpn2hello sni/alpn', - 'expected' => 'tls:sni2,sni3;alpn1,alpn2' +# alpn2hello sni/alpn' }; hexdump of incoming packet: 0x000000: 16 . @@ -27812,6 +27840,11 @@ probing for tls probed for tls: PROBE_AGAIN probing for anyprot +Successudp: 0 +prefix: tls:sni2,sni3;alpn1,alpn2: +listen [1]: + host: 127.0.0.1 + port: 36969 hexdump of incoming packet: 0x000000: 16 03 .. probing for ssh @@ -35173,7 +35206,7 @@ matching [alpn2] with [alpn1] matching [alpn2] with [alpn2] probed for tls: PROBE_MATCH -tls:connection from 127.0.0.1:56668 to 127.0.0.1:34351 forwarded from 127.0.0.1:37498 to 127.0.0.1:46649 +tls:connection from 127.0.0.1:47204 to 127.0.0.1:44019 forwarded from 127.0.0.1:49378 to 127.0.0.1:36969 tls:sni2,sni3;alpn1,alpn2: @ ]e#p<]' |,8,0̨̩̪+/$(k#'g 9 3=<5/_ sni2  @@ -35185,21 +35218,21 @@ 9 3=<5/_ sni2  # alpn2hello sni/alpn] -ok 84 - sslh-select:tls:sni2,sni3;alpn1,alpn2: probe connected correctly Successudp: 0 prefix: tls:sni2,sni3;alpn1,alpn2: listen [1]: host: 127.0.0.1 - port: 46649 + port: 36969 +ok 84 - sslh-select:tls:sni2,sni3;alpn1,alpn2: probe connected correctly ok 85 - sslh-select:tls:sni2,sni3;alpn1,alpn2: data shoveled correctly sni: sni3 alpn: alpn1 test_probe called with$VAR1 = { + 'binary' => 'sslh-select', 'data' => '@ ]e#p<]\' |,8,0̨̩̪+/$(k#\'g 9 3=<5/_ sni3  # alpn1hello sni/alpn', - 'binary' => 'sslh-select', 'expected' => 'tls:sni2,sni3;alpn1,alpn2' }; hexdump of incoming packet: @@ -42594,7 +42627,7 @@ matching [sni3] with [sni3] matching [alpn1] with [alpn1] probed for tls: PROBE_MATCH -tls:connection from 127.0.0.1:37860 to 127.0.0.1:34351 forwarded from 127.0.0.1:37500 to 127.0.0.1:46649 +tls:connection from 127.0.0.1:47210 to 127.0.0.1:44019 forwarded from 127.0.0.1:49392 to 127.0.0.1:36969 tls:sni2,sni3;alpn1,alpn2: @ ]e#p<]' |,8,0̨̩̪+/$(k#'g 9 3=<5/_ sni3  @@ -42606,22 +42639,22 @@ 9 3=<5/_ sni3  # alpn1hello sni/alpn] -ok 86 - sslh-select:tls:sni2,sni3;alpn1,alpn2: probe connected correctly Successudp: 0 prefix: tls:sni2,sni3;alpn1,alpn2: listen [1]: host: 127.0.0.1 - port: 46649 + port: 36969 +ok 86 - sslh-select:tls:sni2,sni3;alpn1,alpn2: probe connected correctly ok 87 - sslh-select:tls:sni2,sni3;alpn1,alpn2: data shoveled correctly sni: sni3 alpn: alpn2 test_probe called with$VAR1 = { - 'expected' => 'tls:sni2,sni3;alpn1,alpn2', + 'binary' => 'sslh-select', 'data' => '@ ]e#p<]\' |,8,0̨̩̪+/$(k#\'g 9 3=<5/_ sni3  # alpn2hello sni/alpn', - 'binary' => 'sslh-select' + 'expected' => 'tls:sni2,sni3;alpn1,alpn2' }; hexdump of incoming packet: 0x000000: 16 . @@ -50016,7 +50049,7 @@ matching [alpn2] with [alpn1] matching [alpn2] with [alpn2] probed for tls: PROBE_MATCH -tls:connection from 127.0.0.1:37868 to 127.0.0.1:34351 forwarded from 127.0.0.1:37504 to 127.0.0.1:46649 +tls:connection from 127.0.0.1:47214 to 127.0.0.1:44019 forwarded from 127.0.0.1:42130 to 127.0.0.1:36969 tls:sni2,sni3;alpn1,alpn2: @ ]e#p<]' |,8,0̨̩̪+/$(k#'g 9 3=<5/_ sni3  @@ -50028,22 +50061,22 @@ 9 3=<5/_ sni3  # alpn2hello sni/alpn] -ok 88 - sslh-select:tls:sni2,sni3;alpn1,alpn2: probe connected correctly Successudp: 0 prefix: tls:sni2,sni3;alpn1,alpn2: listen [1]: host: 127.0.0.1 - port: 46649 + port: 36969 +ok 88 - sslh-select:tls:sni2,sni3;alpn1,alpn2: probe connected correctly ok 89 - sslh-select:tls:sni2,sni3;alpn1,alpn2: data shoveled correctly sni: alpn: alpn3 test_probe called with$VAR1 = { 'binary' => 'sslh-select', + 'expected' => 'tls:;alpn3', 'data' => '␢)1DQT[Qf? +$V8,0̨̩̪+/$(k#\'g 9 3=<5/R  -# alpn3hello alpn', - 'expected' => 'tls:;alpn3' +# alpn3hello alpn' }; hexdump of incoming packet: 0x000000: 16 . @@ -56887,11 +56920,11 @@ probing for tls matching [alpn3] with [alpn3] probed for tls: PROBE_MATCH -tls:connection from 127.0.0.1:37882 to 127.0.0.1:34351 forwarded from 127.0.0.1:53892 to 127.0.0.1:42937 +tls:connection from 127.0.0.1:59606 to 127.0.0.1:44019 forwarded from 127.0.0.1:50644 to 127.0.0.1:45607 tls:;alpn3: ␢)1DQT[Qf? +$V8,0̨̩̪+/$(k#'g 9 3=<5/R  -# alpn3hRead tls:;alpn3: ␢)1DQT[Qf? +$V8,0̨̩̪+/$(k#'g +# alpn3Read tls:;alpn3: ␢)1DQT[Qf? +$V8,0̨̩̪+/$(k#'g 9 3=<5/R  # alpn3hello alpn from peer: '' @@ -56899,12 +56932,12 @@ 9 3=<5/R  # alpn3hello alpn] -ok 90 - sslh-select:tls:;alpn3: probe connected correctly Successudp: 0 prefix: tls:;alpn3: listen [1]: host: 127.0.0.1 - port: 42937 + port: 45607 +ok 90 - sslh-select:tls:;alpn3: probe connected correctly ok 91 - sslh-select:tls:;alpn3: data shoveled correctly sni: sni3 alpn: @@ -63799,11 +63832,11 @@ probing for tls matching [sni3] with [sni3] probed for tls: PROBE_MATCH -tls:connection from 127.0.0.1:37888 to 127.0.0.1:34351 forwarded from 127.0.0.1:45284 to 127.0.0.1:37123 +tls:connection from 127.0.0.1:59616 to 127.0.0.1:44019 forwarded from 127.0.0.1:32800 to 127.0.0.1:37651 tls:sni3;: 魆!['KUP/7%Y728,0̨̩̪+/$(k#'g 9 3=<5/S sni3  -# hRead tls:sni3;: 魆!['KUP/7%Y728,0̨̩̪+/$(k#'g +# Read tls:sni3;: 魆!['KUP/7%Y728,0̨̩̪+/$(k#'g 9 3=<5/S sni3  # hello sni from peer: '' @@ -63814,12 +63847,12 @@ ok 92 - sslh-select:tls:sni3;: probe connected correctly ok 93 - sslh-select:tls:sni3;: data shoveled correctly test_probe called with$VAR1 = { - 'expected' => 'tls', - 'binary' => 'sslh-select', 'data' => '"3CzÉEQ<($jxؐXe-u8,0̨̩̪+/$(k#\'g 9 3=<5/F  -# hello tls alone' +# hello tls alone', + 'expected' => 'tls', + 'binary' => 'sslh-select' }; hexdump of incoming packet: 0x000000: 16 . @@ -63856,7 +63889,7 @@ prefix: tls:sni3;: listen [1]: host: 127.0.0.1 - port: 37123 + port: 37651 hexdump of incoming packet: 0x000000: 16 03 .. probing for ssh @@ -70161,11 +70194,11 @@ probed for tls: PROBE_NEXT probing for tls probed for tls: PROBE_MATCH -tls:connection from 127.0.0.1:57974 to 127.0.0.1:34351 forwarded from 127.0.0.1:34836 to 127.0.0.1:37407 +tls:connection from 127.0.0.1:59628 to 127.0.0.1:44019 forwarded from 127.0.0.1:49048 to 127.0.0.1:40777 tls: "3CzÉEQ<($jxؐXe-u8,0̨̩̪+/$(k#'g 9 3=<5/F  -# hRead tls: "3CzÉEQ<($jxؐXe-u8,0̨̩̪+/$(k#'g +# Read tls: "3CzÉEQ<($jxؐXe-u8,0̨̩̪+/$(k#'g 9 3=<5/F  # hello tls alone from peer: '' @@ -70174,15 +70207,10 @@ # hello tls alone] ok 94 - sslh-select:tls: probe connected correctly -Successudp: 0 -prefix: tls: -listen [1]: - host: 127.0.0.1 - port: 37407 ok 95 - sslh-select:tls: data shoveled correctly test_probe called with$VAR1 = { - 'data' => 'hello anyprot this needs to be longer than xmpp and adb which expect about 50 characters, which I all have to write before the timeout!', 'binary' => 'sslh-select', + 'data' => 'hello anyprot this needs to be longer than xmpp and adb which expect about 50 characters, which I all have to write before the timeout!', 'expected' => 'anyprot' }; hexdump of incoming packet: @@ -70216,6 +70244,11 @@ probing for tls probed for tls: PROBE_AGAIN probing for anyprot +Successudp: 0 +prefix: tls: +listen [1]: + host: 127.0.0.1 + port: 40777 hexdump of incoming packet: 0x000000: 68 65 he probing for ssh @@ -72175,17 +72208,17 @@ Request did not begin with TLS handshake. probed for tls: PROBE_NEXT probing for anyprot -anyprot:connection from 127.0.0.1:57982 to 127.0.0.1:34351 forwarded from 127.0.0.1:32774 to 127.0.0.1:40671 -anyprot: hello anyprot this needs to be longer than xmpp and adbRead anyprot: hello anyprot this needs to be longer than xmpp and adb which expect about 50 characters, which I all have to write before the timeout! from peer: '' +anyprot:connection from 127.0.0.1:59638 to 127.0.0.1:44019 forwarded from 127.0.0.1:55030 to 127.0.0.1:43919 +anyprot: hello anyprot this needs to be longer than xmpp and adRead anyprot: hello anyprot this needs to be longer than xmpp and adb which expect about 50 characters, which I all have to write before the timeout! from peer: '' Received 144 bytes: protocol anyprot data [hello anyprot this needs to be longer than xmpp and adb which expect about 50 characters, which I all have to write before the timeout!] ok 96 - sslh-select:anyprot: probe connected correctly +ok 97 - sslh-select:anyprot: data shoveled correctly Successudp: 0 prefix: anyprot: listen [1]: host: 127.0.0.1 - port: 40671 -ok 97 - sslh-select:anyprot: data shoveled correctly -killing 39504 + port: 43919 +killing 3756242 lcov: ERROR: (empty) no .gcda files found in . (use "lcov --ignore-errors empty ..." to bypass this error) @@ -72343,8 +72376,8 @@ dh_gencontrol dh_md5sums dh_builddeb -dpkg-deb: building package 'sslh' in '../sslh_2.1.4-1_arm64.deb'. dpkg-deb: building package 'sslh-dbgsym' in '../sslh-dbgsym_2.1.4-1_arm64.deb'. +dpkg-deb: building package 'sslh' in '../sslh_2.1.4-1_arm64.deb'. dpkg-genbuildinfo --build=binary -O../sslh_2.1.4-1_arm64.buildinfo dpkg-genchanges --build=binary -O../sslh_2.1.4-1_arm64.changes dpkg-genchanges: info: binary-only upload (no source code included) @@ -72352,12 +72385,14 @@ dpkg-buildpackage: info: binary-only upload (no source included) dpkg-genchanges: info: including full source code in upload I: copying local configuration +I: user script /srv/workspace/pbuilder/3747311/tmp/hooks/B01_cleanup starting +I: user script /srv/workspace/pbuilder/3747311/tmp/hooks/B01_cleanup finished I: unmounting dev/ptmx filesystem I: unmounting dev/pts filesystem I: unmounting dev/shm filesystem I: unmounting proc filesystem I: unmounting sys filesystem I: cleaning the build env -I: removing directory /srv/workspace/pbuilder/18668 and its subdirectories -I: Current time: Sun Apr 5 10:07:55 -12 2026 -I: pbuilder-time-stamp: 1775426875 +I: removing directory /srv/workspace/pbuilder/3747311 and its subdirectories +I: Current time: Tue Mar 4 05:50:11 +14 2025 +I: pbuilder-time-stamp: 1741017011