Diff of the two buildlogs: -- --- b1/build.log 2024-05-14 10:06:28.186432929 +0000 +++ b2/build.log 2024-05-14 10:14:08.106871207 +0000 @@ -1,6 +1,6 @@ I: pbuilder: network access will be disabled during build -I: Current time: Mon May 13 21:59:23 -12 2024 -I: pbuilder-time-stamp: 1715680763 +I: Current time: Tue Jun 17 06:29:31 +14 2025 +I: pbuilder-time-stamp: 1750091371 I: Building the build Environment I: extracting base tarball [/var/cache/pbuilder/trixie-reproducible-base.tgz] I: copying local configuration @@ -27,52 +27,84 @@ dpkg-source: info: applying fix-upstream-typos I: Not using root during the build. I: Installing the build-deps -I: user script /srv/workspace/pbuilder/1762994/tmp/hooks/D02_print_environment starting +I: user script /srv/workspace/pbuilder/1968553/tmp/hooks/D01_modify_environment starting +debug: Running on codethink01-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 Jun 16 16:29 /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/1968553/tmp/hooks/D01_modify_environment finished +I: user script /srv/workspace/pbuilder/1968553/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]="21" [3]="1" [4]="release" [5]="aarch64-unknown-linux-gnu") + BASH_VERSION='5.2.21(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='trixie' - HOME='/root' - HOST_ARCH='arm64' + DIRSTACK=() + DISTRIBUTION=trixie + EUID=0 + FUNCNAME=([0]="Echo" [1]="main") + GROUPS=() + HOME=/root + HOSTNAME=i-capture-the-hostname + HOSTTYPE=aarch64 + HOST_ARCH=arm64 IFS=' ' - INVOCATION_ID='f68ab02a4a4a406596371ebd47b38850' - 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='1762994' - PS1='# ' - PS2='> ' + INVOCATION_ID=ab01728b5b824c77b9f7f794afb75270 + 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=1968553 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.hArme10V/pbuilderrc_Ty7V --distribution trixie --hookdir /etc/pbuilder/first-build-hooks --debbuildopts -b --basetgz /var/cache/pbuilder/trixie-reproducible-base.tgz --buildresult /srv/reproducible-results/rbuild-debian/r-b-build.hArme10V/b1 --logfile b1/build.log libnet-sip-perl_0.836-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.hArme10V/pbuilderrc_JEZY --distribution trixie --hookdir /etc/pbuilder/rebuild-hooks --debbuildopts -b --basetgz /var/cache/pbuilder/trixie-reproducible-base.tgz --buildresult /srv/reproducible-results/rbuild-debian/r-b-build.hArme10V/b2 --logfile b2/build.log libnet-sip-perl_0.836-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 codethink02-arm64 6.1.0-21-cloud-arm64 #1 SMP Debian 6.1.90-1 (2024-05-03) aarch64 GNU/Linux + Linux i-capture-the-hostname 6.1.0-21-cloud-arm64 #1 SMP Debian 6.1.90-1 (2024-05-03) aarch64 GNU/Linux I: ls -l /bin - lrwxrwxrwx 1 root root 7 May 12 11:38 /bin -> usr/bin -I: user script /srv/workspace/pbuilder/1762994/tmp/hooks/D02_print_environment finished + lrwxrwxrwx 1 root root 7 Jun 13 17:47 /bin -> usr/bin +I: user script /srv/workspace/pbuilder/1968553/tmp/hooks/D02_print_environment finished -> Attempting to satisfy build-dependencies -> Creating pbuilder-satisfydepends-dummy package Package: pbuilder-satisfydepends-dummy @@ -153,7 +185,7 @@ Get: 35 http://deb.debian.org/debian trixie/main arm64 libio-socket-ssl-perl all 2.085-1 [218 kB] Get: 36 http://deb.debian.org/debian trixie/main arm64 libnet-dns-perl all 1.44-1 [362 kB] Get: 37 http://deb.debian.org/debian trixie/main arm64 net-tools arm64 2.10-1.1 [241 kB] -Fetched 19.8 MB in 0s (144 MB/s) +Fetched 19.8 MB in 0s (81.2 MB/s) debconf: delaying package configuration, since apt-utils is not installed Selecting previously unselected package netbase. (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 ... 19744 files and directories currently installed.) @@ -316,7 +348,11 @@ Building tag database... -> Finished parsing the build-deps I: Building the package -I: Running cd /build/reproducible-path/libnet-sip-perl-0.836/ && 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 > ../libnet-sip-perl_0.836-1_source.changes +I: user script /srv/workspace/pbuilder/1968553/tmp/hooks/A99_set_merged_usr starting +Not re-configuring usrmerge for trixie +I: user script /srv/workspace/pbuilder/1968553/tmp/hooks/A99_set_merged_usr finished +hostname: Name or service not known +I: Running cd /build/reproducible-path/libnet-sip-perl-0.836/ && 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 > ../libnet-sip-perl_0.836-1_source.changes dpkg-buildpackage: info: source package libnet-sip-perl dpkg-buildpackage: info: source version 0.836-1 dpkg-buildpackage: info: source distribution unstable @@ -340,63 +376,63 @@ dh_auto_build make -j12 make[1]: Entering directory '/build/reproducible-path/libnet-sip-perl-0.836' -cp lib/Net/SIP/ReceiveChain.pm blib/lib/Net/SIP/ReceiveChain.pm -cp lib/Net/SIP/Dispatcher.pm blib/lib/Net/SIP/Dispatcher.pm cp lib/Net/SIP/ReceiveChain.pod blib/lib/Net/SIP/ReceiveChain.pod -cp lib/Net/SIP/Packet.pod blib/lib/Net/SIP/Packet.pod -cp lib/Net/SIP/Registrar.pod blib/lib/Net/SIP/Registrar.pod -cp lib/Net/SIP/DTMF.pm blib/lib/Net/SIP/DTMF.pm -cp lib/Net/SIP/NATHelper/Client.pm blib/lib/Net/SIP/NATHelper/Client.pm -cp lib/Net/SIP/NATHelper/Base.pm blib/lib/Net/SIP/NATHelper/Base.pm -cp lib/Net/SIP/Blocker.pm blib/lib/Net/SIP/Blocker.pm -cp lib/Net/SIP/Debug.pod blib/lib/Net/SIP/Debug.pod -cp lib/Net/SIP.pod blib/lib/Net/SIP.pod -cp lib/Net/SIP.pm blib/lib/Net/SIP.pm -cp lib/Net/SIP/Endpoint/Context.pm blib/lib/Net/SIP/Endpoint/Context.pm -cp lib/Net/SIP/Request.pod blib/lib/Net/SIP/Request.pod cp lib/Net/SIP/NATHelper/Local.pod blib/lib/Net/SIP/NATHelper/Local.pod -cp lib/Net/SIP/Leg.pm blib/lib/Net/SIP/Leg.pm -cp lib/Net/SIP/NATHelper/Local.pm blib/lib/Net/SIP/NATHelper/Local.pm -cp lib/Net/SIP/Authorize.pod blib/lib/Net/SIP/Authorize.pod -cp lib/Net/SIP/Endpoint.pm blib/lib/Net/SIP/Endpoint.pm +cp lib/Net/SIP/Debug.pod blib/lib/Net/SIP/Debug.pod +cp lib/Net/SIP/Dropper/ByIPPort.pm blib/lib/Net/SIP/Dropper/ByIPPort.pm +cp lib/Net/SIP/NATHelper/Client.pm blib/lib/Net/SIP/NATHelper/Client.pm +cp lib/Net/SIP/Dropper.pm blib/lib/Net/SIP/Dropper.pm cp lib/Net/SIP/Debug.pm blib/lib/Net/SIP/Debug.pm +cp lib/Net/SIP/DTMF.pod blib/lib/Net/SIP/DTMF.pod cp lib/Net/SIP/NATHelper/Server.pod blib/lib/Net/SIP/NATHelper/Server.pod -cp lib/Net/SIP/Dropper.pm blib/lib/Net/SIP/Dropper.pm -cp lib/Net/SIP/Endpoint.pod blib/lib/Net/SIP/Endpoint.pod -cp lib/Net/SIP/Request.pm blib/lib/Net/SIP/Request.pm -cp lib/Net/SIP/Dispatcher.pod blib/lib/Net/SIP/Dispatcher.pod -cp lib/Net/SIP/Packet.pm blib/lib/Net/SIP/Packet.pm +cp lib/Net/SIP/NATHelper/Local.pm blib/lib/Net/SIP/NATHelper/Local.pm +cp lib/Net/SIP/Dispatcher/Eventloop.pm blib/lib/Net/SIP/Dispatcher/Eventloop.pm cp lib/Net/SIP/Authorize.pm blib/lib/Net/SIP/Authorize.pm -cp lib/Net/SIP/Blocker.pod blib/lib/Net/SIP/Blocker.pod cp lib/Net/SIP/Redirect.pm blib/lib/Net/SIP/Redirect.pm +cp lib/Net/SIP/Packet.pm blib/lib/Net/SIP/Packet.pm cp lib/Net/SIP/NATHelper/Server.pm blib/lib/Net/SIP/NATHelper/Server.pm -cp lib/Net/SIP/Leg.pod blib/lib/Net/SIP/Leg.pod -cp lib/Net/SIP/Dispatcher/Eventloop.pod blib/lib/Net/SIP/Dispatcher/Eventloop.pod -cp lib/Net/SIP/NATHelper/Client.pod blib/lib/Net/SIP/NATHelper/Client.pod +cp lib/Net/SIP/ReceiveChain.pm blib/lib/Net/SIP/ReceiveChain.pm +cp lib/Net/SIP/Endpoint.pm blib/lib/Net/SIP/Endpoint.pm cp lib/Net/SIP/Registrar.pm blib/lib/Net/SIP/Registrar.pm -cp lib/Net/SIP/NATHelper/Base.pod blib/lib/Net/SIP/NATHelper/Base.pod +cp lib/Net/SIP/Authorize.pod blib/lib/Net/SIP/Authorize.pod +cp lib/Net/SIP/Endpoint/Context.pm blib/lib/Net/SIP/Endpoint/Context.pm cp lib/Net/SIP/Endpoint/Context.pod blib/lib/Net/SIP/Endpoint/Context.pod -cp lib/Net/SIP/Redirect.pod blib/lib/Net/SIP/Redirect.pod +cp lib/Net/SIP/Blocker.pod blib/lib/Net/SIP/Blocker.pod +cp lib/Net/SIP/Request.pod blib/lib/Net/SIP/Request.pod +cp lib/Net/SIP/DTMF.pm blib/lib/Net/SIP/DTMF.pm +cp lib/Net/SIP.pm blib/lib/Net/SIP.pm +cp lib/Net/SIP/Packet.pod blib/lib/Net/SIP/Packet.pod cp lib/Net/SIP/Dropper/ByField.pm blib/lib/Net/SIP/Dropper/ByField.pm -cp lib/Net/SIP/Dispatcher/Eventloop.pm blib/lib/Net/SIP/Dispatcher/Eventloop.pm -cp lib/Net/SIP/DTMF.pod blib/lib/Net/SIP/DTMF.pod -cp lib/Net/SIP/Dropper/ByIPPort.pm blib/lib/Net/SIP/Dropper/ByIPPort.pm -cp lib/Net/SIP/SDP.pm blib/lib/Net/SIP/SDP.pm -cp lib/Net/SIP/SocketPool.pm blib/lib/Net/SIP/SocketPool.pm -cp lib/Net/SIP/SDP.pod blib/lib/Net/SIP/SDP.pod +cp lib/Net/SIP/Registrar.pod blib/lib/Net/SIP/Registrar.pod +cp lib/Net/SIP.pod blib/lib/Net/SIP.pod +cp lib/Net/SIP/Request.pm blib/lib/Net/SIP/Request.pm +cp lib/Net/SIP/Endpoint.pod blib/lib/Net/SIP/Endpoint.pod +cp lib/Net/SIP/Blocker.pm blib/lib/Net/SIP/Blocker.pm +cp lib/Net/SIP/NATHelper/Client.pod blib/lib/Net/SIP/NATHelper/Client.pod +cp lib/Net/SIP/NATHelper/Base.pod blib/lib/Net/SIP/NATHelper/Base.pod +cp lib/Net/SIP/Redirect.pod blib/lib/Net/SIP/Redirect.pod +cp lib/Net/SIP/NATHelper/Base.pm blib/lib/Net/SIP/NATHelper/Base.pm +cp lib/Net/SIP/Leg.pod blib/lib/Net/SIP/Leg.pod +cp lib/Net/SIP/Dispatcher.pod blib/lib/Net/SIP/Dispatcher.pod +cp lib/Net/SIP/Leg.pm blib/lib/Net/SIP/Leg.pm +cp lib/Net/SIP/Dispatcher.pm blib/lib/Net/SIP/Dispatcher.pm +cp lib/Net/SIP/Dispatcher/Eventloop.pod blib/lib/Net/SIP/Dispatcher/Eventloop.pod cp lib/Net/SIP/SocketPool.pod blib/lib/Net/SIP/SocketPool.pod -cp lib/Net/SIP/Simple.pm blib/lib/Net/SIP/Simple.pm +cp lib/Net/SIP/Response.pm blib/lib/Net/SIP/Response.pm +cp lib/Net/SIP/SDP.pm blib/lib/Net/SIP/SDP.pm cp lib/Net/SIP/Response.pod blib/lib/Net/SIP/Response.pod +cp lib/Net/SIP/Simple/Call.pod blib/lib/Net/SIP/Simple/Call.pod +cp lib/Net/SIP/Simple/RTP.pm blib/lib/Net/SIP/Simple/RTP.pm cp lib/Net/SIP/Simple/RTP.pod blib/lib/Net/SIP/Simple/RTP.pod cp lib/Net/SIP/Simple.pod blib/lib/Net/SIP/Simple.pod -cp lib/Net/SIP/Simple/Call.pod blib/lib/Net/SIP/Simple/Call.pod +cp lib/Net/SIP/Util.pod blib/lib/Net/SIP/Util.pod cp lib/Net/SIP/StatelessProxy.pm blib/lib/Net/SIP/StatelessProxy.pm cp lib/Net/SIP/Simple/Call.pm blib/lib/Net/SIP/Simple/Call.pm -cp lib/Net/SIP/Util.pod blib/lib/Net/SIP/Util.pod -cp lib/Net/SIP/Util.pm blib/lib/Net/SIP/Util.pm cp lib/Net/SIP/StatelessProxy.pod blib/lib/Net/SIP/StatelessProxy.pod -cp lib/Net/SIP/Simple/RTP.pm blib/lib/Net/SIP/Simple/RTP.pm -cp lib/Net/SIP/Response.pm blib/lib/Net/SIP/Response.pm +cp lib/Net/SIP/Util.pm blib/lib/Net/SIP/Util.pm +cp lib/Net/SIP/Simple.pm blib/lib/Net/SIP/Simple.pm +cp lib/Net/SIP/SDP.pod blib/lib/Net/SIP/SDP.pod +cp lib/Net/SIP/SocketPool.pm blib/lib/Net/SIP/SocketPool.pm Manifying 30 pod documents make[1]: Leaving directory '/build/reproducible-path/libnet-sip-perl-0.836' debian/rules override_dh_auto_test @@ -526,8 +562,8 @@ t/04_call_with_rtp.t .................... 1..48 # ------- test with family ip4 transport udp -# UAS on 127.0.0.1:47892 -# UAC on 127.0.0.1:46332 +# UAS on 127.0.0.1:36421 +# UAC on 127.0.0.1:51305 ok 1 - UAC created ok 2 - UAS ready # @@ -543,8 +579,8 @@ # ok 8 - UAS finished # ------- test with family ip6 transport udp -# UAS on [::1]:56354 -# UAC on [::1]:51795 +# UAS on [::1]:37398 +# UAC on [::1]:47159 ok 9 - UAC created ok 10 - UAS ready # @@ -560,8 +596,8 @@ # ok 16 - UAS finished # ------- test with family ip4 transport tcp -# UAS on 127.0.0.1:53799 -# UAC on 127.0.0.1:37917 +# UAS on 127.0.0.1:36973 +# UAC on 127.0.0.1:48065 ok 17 - UAC created ok 18 - UAS ready # @@ -571,14 +607,14 @@ # call established ok 21 - Done sending RTP # call cleaned up -ok 22 - UAS down # received 100/100 packets +ok 22 - UAS down ok 23 - UAS RTP ok # ok 24 - UAS finished # ------- test with family ip6 transport tcp -# UAS on [::1]:41671 -# UAC on [::1]:33089 +# UAS on [::1]:38613 +# UAC on [::1]:40733 ok 25 - UAC created ok 26 - UAS ready # @@ -588,14 +624,14 @@ # call established ok 29 - Done sending RTP # call cleaned up -ok 30 - UAS down # received 100/100 packets +ok 30 - UAS down ok 31 - UAS RTP ok # ok 32 - UAS finished # ------- test with family ip4 transport tls -# UAS on 127.0.0.1:44003 -# UAC on 127.0.0.1:57887 +# UAS on 127.0.0.1:48743 +# UAC on 127.0.0.1:44325 ok 33 - UAC created ok 34 - UAS ready # @@ -605,14 +641,14 @@ # call established ok 37 - Done sending RTP # call cleaned up -ok 38 - UAS down # received 100/100 packets +ok 38 - UAS down ok 39 - UAS RTP ok # ok 40 - UAS finished # ------- test with family ip6 transport tls -# UAS on [::1]:49875 -# UAC on [::1]:40737 +# UAS on [::1]:33875 +# UAC on [::1]:47411 ok 41 - UAC created ok 42 - UAS ready # @@ -631,106 +667,92 @@ t/05_call_with_stateless_proxy.t ........ 1..378 # ------- test with family ip4 transport udp -# UAS on 127.0.0.1:38803 -# UAC on 127.0.0.1:45018 -# PROXY on 127.0.0.1:55453 127.0.0.1:51682 +# UAS on 127.0.0.1:55842 +# UAC on 127.0.0.1:53043 +# PROXY on 127.0.0.1:56543 127.0.0.1:55883 # proxy >> OK +# ready # << ok 1 - [proxy] OK # uas >> OK +# ready # << ok 2 - [uas] OK -# proxy >> ready -# << ok 3 - [proxy] ready -# uas >> ready -# << ok 4 - [uas] ready # uac >> OK +# ready # << ok 5 - [uac] OK -# uac >> ready -# << ok 6 - [uac] ready -# uac >> O> 127.0.0.1:55453 REQ(INVITE) SDP: audio=127.0.0.1:7274/2 +# uac >> O> 127.0.0.1:56543 REQ(INVITE) SDP: audio=127.0.0.1:9138/2 # << ok 7 - [uac] (?^:O>.*REQ\(INVITE\) SDP: audio=\S+) -# proxy >> I< HASH(0xaaaabdf664c8) REQ(INVITE) SDP: audio=127.0.0.1:7274/2 +# proxy >> I< HASH(0xaaaae3cca480) REQ(INVITE) SDP: audio=127.0.0.1:9138/2 +# O> 127.0.0.1:55842 REQ(INVITE) SDP: audio=127.0.0.1:9138/2 # << ok 8 - [proxy] (?^:I<.*REQ\(INVITE\) SDP: audio=\S+) -# proxy >> O> 127.0.0.1:38803 REQ(INVITE) SDP: audio=127.0.0.1:7274/2 -# << ok 9 - [proxy] (?^:O>.*REQ\(INVITE\) SDP: audio=\S+) -# uas >> I< HASH(0xaaaabdf7cb80) REQ(INVITE) SDP: audio=127.0.0.1:7274/2 -# << -ok 10 - [uas] (?^:I<.*REQ\(INVITE\) SDP: audio=\S+) -ok 11 - outgoing on UAC must be the same as incoming on proxy -ok 12 - outgoing on proxy must be the same as incoming on UAS -ok 13 - SDP must pass unchanged to UAS -# uas >> O> 127.0.0.1:51682 RSP(INVITE,100) NO SDP -# << -# uas >> call created -# << -ok 14 - [uas] call created -# uas >> INVITE you.uas@example.com SIP/2.0 -# Via: SIP/2.0/UDP 127.0.0.1:51682;branch=z9hG4bK091db55b7d8a8c0a0b3e2ff9118133d4e0179df1cebf76af70a4a09263c9c0 -# Record-route: -# Via: SIP/2.0/UDP 127.0.0.1:55453;branch=z9hG4bKddf8fbba62d751632a2f3382c7a20883e0179df1cebf76afd2a30e7079e11e -# Record-route: +# uas >> I< HASH(0xaaaae3ce09e0) REQ(INVITE) SDP: audio=127.0.0.1:9138/2 +# O> 127.0.0.1:55883 RSP(INVITE,100) NO SDP +# call created +# INVITE you.uas@example.com SIP/2.0 +# Via: SIP/2.0/UDP 127.0.0.1:55883;branch=z9hG4bK351b3526e41cbdbd2d901ff889d4be932dc924a1cbd7f52debb46ddab20ee6 +# Record-route: +# Via: SIP/2.0/UDP 127.0.0.1:56543;branch=z9hG4bKaa96715afaed43f2ed0b8bfbd7c8f09e2dc924a1cbd7f52a2a7677d29977de +# Record-route: # Supported: # Allow: INVITE, ACK, OPTIONS, CANCEL, BYE -# Via: SIP/2.0/UDP 127.0.0.1:45018;branch=z9hG4bKb935686b4e1f41b99333bd6e01dfd49ee0179df1cebf76abc68969e1c8a177 -# Call-id: be5090e1d31f0c16871201b0c60dc4e5 +# Via: SIP/2.0/UDP 127.0.0.1:53043;branch=z9hG4bKc3173ad17ccbb95bbaabad57a41f86d42dc924a1cbd7f525daeab55ac188fd +# Call-id: 985ce61b4be6a9475b07e21bb84bc2b0 # Cseq: 1 INVITE -# From: me.uac@example.com;tag=8a629f83798fb82c53df35e2aed98e51 +# From: me.uac@example.com;tag=9f6490329bc682544d60d30ef480c2d7 # Content-type: application/sdp # Content-length: 175 # Max-forwards: 69 -# Contact: sip:bGPGDDF3XZQIGTC2XKIRNHGADCZND6EIAUD24QJSNF7P65NC3TDBNEIA@127.0.0.1:51682 -# To: you.uas@example.com;tag=aa9514fd21982464fced3b2b0848e8af +# Contact: sip:bQYA7OC5N7S5WDQ4G4QX2GSPXAWFQXD76IXPOOWES7UDYXSCHDXVQNRQ@127.0.0.1:55883 +# To: you.uas@example.com;tag=73b5e2edf613c9866c9329e87aa4d63c # # v=0 -# o=anonymous 1715680800 1715680800 IN IP4 127.0.0.1 +# o=anonymous 1750091429 1750091429 IN IP4 127.0.0.1 # s=session # c=IN IP4 127.0.0.1 # t=0 0 -# m=audio 7274 RTP/AVP 0 101 +# m=audio 9138 RTP/AVP 0 101 # a=rtpmap:101 telephone-event/8000 # a=fmtp:101 0-16 # << -ok 15 - [uas] (?^i:via\:\ SIP\/2\.0\/udp\ 127\.0\.0\.1\:51682\;) -ok 16 - [uas] (?^i:via\:\ SIP\/2\.0\/udp\ 127\.0\.0\.1\:45018\;) -# uac >> I< HASH(0xaaaabe1068b0) RSP(INVITE,100) NO SDP -# << -# uac >> I< HASH(0xaaaabe1068b0) RSP(INVITE,200) SDP: audio=127.0.0.1:10192/2 -# << -# uac >> O> 127.0.0.1:55453 REQ(ACK) NO SDP +ok 10 - [uas] (?^:I<.*REQ\(INVITE\) SDP: audio=\S+) +ok 11 - outgoing on UAC must be the same as incoming on proxy +ok 12 - outgoing on proxy must be the same as incoming on UAS +ok 13 - SDP must pass unchanged to UAS +ok 14 - [uas] call created +ok 15 - [uas] (?^i:via\:\ SIP\/2\.0\/udp\ 127\.0\.0\.1\:55883\;) +ok 16 - [uas] (?^i:via\:\ SIP\/2\.0\/udp\ 127\.0\.0\.1\:53043\;) +# uac >> I< HASH(0xaaaae3e69ed0) RSP(INVITE,100) NO SDP # << -# uac >> call established +# uac >> I< HASH(0xaaaae3e69ed0) RSP(INVITE,200) SDP: audio=127.0.0.1:5102/2 +# O> 127.0.0.1:56543 REQ(ACK) NO SDP +# call established # << # uac >> RTP done +# O> 127.0.0.1:56543 REQ(BYE) NO SDP # << ok 17 - [uac] RTP done -# uas >> O> 127.0.0.1:51682 RSP(INVITE,200) SDP: audio=127.0.0.1:10192/2 -# I< HASH(0xaaaabdf7d930) REQ(ACK) NO SDP +# uas >> O> 127.0.0.1:55883 RSP(INVITE,200) SDP: audio=127.0.0.1:5102/2 +# I< HASH(0xaaaae3ce09f8) REQ(ACK) NO SDP # call established # << -# uas >> I< HASH(0xaaaabdf7d750) REQ(BYE) NO SDP -# << -# uas >> O> 127.0.0.1:51682 RSP(BYE,200) NO SDP -# << -# uas >> call cleaned up -# << -# uas >> received 100/100 packets +# uas >> I< HASH(0xaaaae3ce16d0) REQ(BYE) NO SDP +# O> 127.0.0.1:55883 RSP(BYE,200) NO SDP +# call cleaned up +# received 100/100 packets # RTP ok # END # << ok 18 - [uas] RTP ok -# uac >> O> 127.0.0.1:55453 REQ(BYE) NO SDP -# << -# uac >> I< HASH(0xaaaabe11da28) RSP(BYE,200) NO SDP -# << -# uac >> END +# uac >> I< HASH(0xaaaae3e66a08) RSP(BYE,200) NO SDP +# END # << ok 19 - [uac] END ok 20 - [uas] END @@ -739,98 +761,85 @@ # << ok 21 - [proxy] OK # uas >> OK +# ready # << ok 22 - [uas] OK ok 23 - [proxy] ready -# uas >> ready -# << ok 24 - [uas] ready # uac >> OK +# ready # << ok 25 - [uac] OK -# uac >> ready -# << ok 26 - [uac] ready -# uac >> O> 127.0.0.1:55453 REQ(INVITE) SDP: audio=127.0.0.1:11548/2 +# uac >> O> 127.0.0.1:56543 REQ(INVITE) SDP: audio=127.0.0.1:5904/2 # << ok 27 - [uac] (?^:O>.*REQ\(INVITE\) SDP: audio=\S+) -# proxy >> I< HASH(0xaaaabdf6ca38) REQ(INVITE) SDP: audio=127.0.0.1:11548/2 +# proxy >> I< HASH(0xaaaae3cce8f8) REQ(INVITE) SDP: audio=127.0.0.1:5904/2 +# O> 127.0.0.1:55842 REQ(INVITE) SDP: audio=127.0.0.1:4346/2 # << ok 28 - [proxy] (?^:I<.*REQ\(INVITE\) SDP: audio=\S+) -# proxy >> O> 127.0.0.1:38803 REQ(INVITE) SDP: audio=127.0.0.1:8232/2 -# << ok 29 - [proxy] (?^:O>.*REQ\(INVITE\) SDP: audio=\S+) -# uas >> I< HASH(0xaaaabdf6ca68) REQ(INVITE) SDP: audio=127.0.0.1:8232/2 -# << -ok 30 - [uas] (?^:I<.*REQ\(INVITE\) SDP: audio=\S+) -ok 31 - outgoing on UAC must be the same as incoming on proxy -ok 32 - outgoing on proxy must be the same as incoming on UAS -ok 33 - allocated addr:port must be different (127.0.0.1:11548|127.0.0.1:8232) -ok 34 - ranges must stay the same -# uas >> O> 127.0.0.1:51682 RSP(INVITE,100) NO SDP -# << -# uas >> call created -# << -ok 35 - [uas] call created -# uas >> INVITE you.uas@example.com SIP/2.0 -# Via: SIP/2.0/UDP 127.0.0.1:51682;branch=z9hG4bK091db55b7d8a8c0a0b3e2ff9118133d4ad8ecbc23855aa892df8f42fb47bc7 -# Record-route: -# Via: SIP/2.0/UDP 127.0.0.1:55453;branch=z9hG4bKddf8fbba62d751632a2f3382c7a20883ad8ecbc23855aa8500b1d59f7f608f -# Record-route: +# uas >> I< HASH(0xaaaae3cce8f8) REQ(INVITE) SDP: audio=127.0.0.1:4346/2 +# O> 127.0.0.1:55883 RSP(INVITE,100) NO SDP +# call created +# INVITE you.uas@example.com SIP/2.0 +# Via: SIP/2.0/UDP 127.0.0.1:55883;branch=z9hG4bK351b3526e41cbdbd2d901ff889d4be93df14d2faa78889a486c487d16d109a +# Record-route: +# Via: SIP/2.0/UDP 127.0.0.1:56543;branch=z9hG4bKaa96715afaed43f2ed0b8bfbd7c8f09edf14d2faa78889aae9fd037766325c +# Record-route: # Supported: # Allow: INVITE, ACK, OPTIONS, CANCEL, BYE -# Via: SIP/2.0/UDP 127.0.0.1:45018;branch=z9hG4bKb935686b4e1f41b99333bd6e01dfd49ead8ecbc23855aa8f6704be908c43c0 -# Call-id: 9efd6cf3a6c9e37c41d6c54a10d917b1 +# Via: SIP/2.0/UDP 127.0.0.1:53043;branch=z9hG4bKc3173ad17ccbb95bbaabad57a41f86d4df14d2faa78889a806a6bd184f388a +# Call-id: 37018c455eb4fc2ca4115772a7f473d0 # Cseq: 1 INVITE -# From: me.uac@example.com;tag=aa9bead4e515b18eb79ad4491f971062 +# From: me.uac@example.com;tag=0d8ad87fb827c267a87dc03cddfc2b52 # Content-type: application/sdp -# Max-forwards: 69 -# Contact: sip:bWV3KQIKIJ7JAWSQHFJTSLTJFNSHIMCI5ROOO33KWM47I42VE5RA4T5Q@127.0.0.1:51682 # Content-length: 175 -# To: you.uas@example.com;tag=486c3fef0e2474bb8c241c2358da0f5d +# Max-forwards: 69 +# Contact: sip:b33ODZMJ3GABMVPD33MO46655HN6YTQ3NVBST77J3QVRY6UV7MRGGIPI@127.0.0.1:55883 +# To: you.uas@example.com;tag=0422f3aba84ebdef92ff2eb48282fa5b # # v=0 -# o=anonymous 1715680802 1715680802 IN IP4 127.0.0.1 +# o=anonymous 1750091432 1750091432 IN IP4 127.0.0.1 # s=session # c=IN IP4 127.0.0.1 # t=0 0 -# m=audio 8232 RTP/AVP 0 101 +# m=audio 4346 RTP/AVP 0 101 # a=rtpmap:101 telephone-event/8000 # a=fmtp:101 0-16 # << -ok 36 - [uas] (?^i:via\:\ SIP\/2\.0\/udp\ 127\.0\.0\.1\:51682\;) -ok 37 - [uas] (?^i:via\:\ SIP\/2\.0\/udp\ 127\.0\.0\.1\:45018\;) -# uac >> I< HASH(0xaaaabe10e550) RSP(INVITE,100) NO SDP -# << -# uac >> I< HASH(0xaaaabe10e550) RSP(INVITE,200) SDP: audio=127.0.0.1:5776/2 -# << -# uac >> O> 127.0.0.1:55453 REQ(ACK) NO SDP +ok 30 - [uas] (?^:I<.*REQ\(INVITE\) SDP: audio=\S+) +ok 31 - outgoing on UAC must be the same as incoming on proxy +ok 32 - outgoing on proxy must be the same as incoming on UAS +ok 33 - allocated addr:port must be different (127.0.0.1:5904|127.0.0.1:4346) +ok 34 - ranges must stay the same +ok 35 - [uas] call created +ok 36 - [uas] (?^i:via\:\ SIP\/2\.0\/udp\ 127\.0\.0\.1\:55883\;) +ok 37 - [uas] (?^i:via\:\ SIP\/2\.0\/udp\ 127\.0\.0\.1\:53043\;) +# uac >> I< HASH(0xaaaae3e70030) RSP(INVITE,100) NO SDP # << -# uac >> call established +# uac >> I< HASH(0xaaaae3e70030) RSP(INVITE,200) SDP: audio=127.0.0.1:8294/2 +# O> 127.0.0.1:56543 REQ(ACK) NO SDP +# call established # << # uac >> RTP done +# O> 127.0.0.1:56543 REQ(BYE) NO SDP # << ok 38 - [uac] RTP done -# uas >> O> 127.0.0.1:51682 RSP(INVITE,200) SDP: audio=127.0.0.1:4036/2 -# I< HASH(0xaaaabdf6ca38) REQ(ACK) NO SDP +# uas >> O> 127.0.0.1:55883 RSP(INVITE,200) SDP: audio=127.0.0.1:7088/2 +# I< HASH(0xaaaae3cce910) REQ(ACK) NO SDP # call established # << -# uas >> I< HASH(0xaaaabdf86e18) REQ(BYE) NO SDP -# << -# uas >> O> 127.0.0.1:51682 RSP(BYE,200) NO SDP -# << -# uas >> call cleaned up -# << -# uas >> received 100/100 packets +# uas >> I< HASH(0xaaaae3ce7dd0) REQ(BYE) NO SDP +# O> 127.0.0.1:55883 RSP(BYE,200) NO SDP +# call cleaned up +# received 100/100 packets # RTP ok # END # << ok 39 - [uas] RTP ok -# uac >> O> 127.0.0.1:55453 REQ(BYE) NO SDP -# << -# uac >> I< HASH(0xaaaabe10a580) RSP(BYE,200) NO SDP -# << -# uac >> END +# uac >> I< HASH(0xaaaae3e84718) RSP(BYE,200) NO SDP +# END # << ok 40 - [uac] END ok 41 - [uas] END @@ -838,306 +847,267 @@ # << ok 42 - [nathelper] OK # proxy >> OK +# ready # << ok 43 - [proxy] OK # uas >> OK +# ready # << ok 44 - [uas] OK -# proxy >> ready -# << ok 45 - [proxy] ready -# uas >> ready -# << ok 46 - [uas] ready # uac >> OK +# ready # << ok 47 - [uac] OK -# uac >> ready -# << ok 48 - [uac] ready -# uac >> O> 127.0.0.1:55453 REQ(INVITE) SDP: audio=127.0.0.1:9948/2 +# uac >> O> 127.0.0.1:56543 REQ(INVITE) SDP: audio=127.0.0.1:5260/2 # << ok 49 - [uac] (?^:O>.*REQ\(INVITE\) SDP: audio=\S+) -# proxy >> I< HASH(0xaaaabdf6a7c0) REQ(INVITE) SDP: audio=127.0.0.1:9948/2 +# proxy >> I< HASH(0xaaaae3cd42b0) REQ(INVITE) SDP: audio=127.0.0.1:5260/2 # << ok 50 - [proxy] (?^:I<.*REQ\(INVITE\) SDP: audio=\S+) -# proxy >> O> 127.0.0.1:38803 REQ(INVITE) SDP: audio=127.0.0.1:6218/2 +# proxy >> O> 127.0.0.1:55842 REQ(INVITE) SDP: audio=127.0.0.1:11012/2 # << ok 51 - [proxy] (?^:O>.*REQ\(INVITE\) SDP: audio=\S+) -# uas >> I< HASH(0xaaaabdf6aa48) REQ(INVITE) SDP: audio=127.0.0.1:6218/2 -# << -ok 52 - [uas] (?^:I<.*REQ\(INVITE\) SDP: audio=\S+) -ok 53 - outgoing on UAC must be the same as incoming on proxy -ok 54 - outgoing on proxy must be the same as incoming on UAS -ok 55 - allocated addr:port must be different (127.0.0.1:9948|127.0.0.1:6218) -ok 56 - ranges must stay the same -# uas >> O> 127.0.0.1:51682 RSP(INVITE,100) NO SDP -# << -# uas >> call created -# << -ok 57 - [uas] call created -# uas >> INVITE you.uas@example.com SIP/2.0 -# Via: SIP/2.0/UDP 127.0.0.1:51682;branch=z9hG4bK091db55b7d8a8c0a0b3e2ff9118133d424e91f974130574c6a2f8b9ca86bfb -# Record-route: -# Via: SIP/2.0/UDP 127.0.0.1:55453;branch=z9hG4bKddf8fbba62d751632a2f3382c7a2088324e91f9741305745b477df98ed5c55 -# Record-route: +# uas >> I< HASH(0xaaaae3cd4538) REQ(INVITE) SDP: audio=127.0.0.1:11012/2 +# O> 127.0.0.1:55883 RSP(INVITE,100) NO SDP +# call created +# INVITE you.uas@example.com SIP/2.0 +# Via: SIP/2.0/UDP 127.0.0.1:55883;branch=z9hG4bK351b3526e41cbdbd2d901ff889d4be938363a0652587d8079ba902aeb4af92 +# Record-route: +# Via: SIP/2.0/UDP 127.0.0.1:56543;branch=z9hG4bKaa96715afaed43f2ed0b8bfbd7c8f09e8363a0652587d8061269cbbdee062a +# Record-route: # Supported: # Allow: INVITE, ACK, OPTIONS, CANCEL, BYE -# Via: SIP/2.0/UDP 127.0.0.1:45018;branch=z9hG4bKb935686b4e1f41b99333bd6e01dfd49e24e91f974130574a96dd07bba8a2bd -# Call-id: 46f4fdb386c19ecc29044487235d71a8 +# Via: SIP/2.0/UDP 127.0.0.1:53043;branch=z9hG4bKc3173ad17ccbb95bbaabad57a41f86d48363a0652587d80fee271c4a486dcf +# Call-id: 26082f358a627f015ceb5279dd596860 # Cseq: 1 INVITE -# From: me.uac@example.com;tag=52be5d90a315894fc812d3c47d02d60e +# From: me.uac@example.com;tag=ea314a83f799384eba01be6df922df63 # Content-type: application/sdp -# Content-length: 175 # Max-forwards: 69 -# Contact: sip:bDSDO6SQLUI4CUKLRWK7BPKXD5UXIK6VPHTB4N7ZUKXNABMRL5A6XFKY@127.0.0.1:51682 -# To: you.uas@example.com;tag=9afe0fae9db96093f3305832a4b08d02 +# Contact: sip:bUHBVSGT2Q5OTLC6TICMWFRMH2DAMTOTXZ5JU2TD3T22YD56SM5646BA@127.0.0.1:55883 +# Content-length: 176 +# To: you.uas@example.com;tag=362eef7794beb291a706abbafc2b6bb9 # # v=0 -# o=anonymous 1715680804 1715680804 IN IP4 127.0.0.1 +# o=anonymous 1750091434 1750091434 IN IP4 127.0.0.1 # s=session # c=IN IP4 127.0.0.1 # t=0 0 -# m=audio 6218 RTP/AVP 0 101 +# m=audio 11012 RTP/AVP 0 101 # a=rtpmap:101 telephone-event/8000 # a=fmtp:101 0-16 # << -ok 58 - [uas] (?^i:via\:\ SIP\/2\.0\/udp\ 127\.0\.0\.1\:51682\;) -ok 59 - [uas] (?^i:via\:\ SIP\/2\.0\/udp\ 127\.0\.0\.1\:45018\;) -# uac >> I< HASH(0xaaaabe111b50) RSP(INVITE,100) NO SDP -# << -# uac >> I< HASH(0xaaaabe111b50) RSP(INVITE,200) SDP: audio=127.0.0.1:11370/2 -# << -# uac >> O> 127.0.0.1:55453 REQ(ACK) NO SDP +ok 52 - [uas] (?^:I<.*REQ\(INVITE\) SDP: audio=\S+) +ok 53 - outgoing on UAC must be the same as incoming on proxy +ok 54 - outgoing on proxy must be the same as incoming on UAS +ok 55 - allocated addr:port must be different (127.0.0.1:5260|127.0.0.1:11012) +ok 56 - ranges must stay the same +ok 57 - [uas] call created +ok 58 - [uas] (?^i:via\:\ SIP\/2\.0\/udp\ 127\.0\.0\.1\:55883\;) +ok 59 - [uas] (?^i:via\:\ SIP\/2\.0\/udp\ 127\.0\.0\.1\:53043\;) +# uac >> I< HASH(0xaaaae3e742e0) RSP(INVITE,100) NO SDP # << -# uac >> call established +# uac >> I< HASH(0xaaaae3e742e0) RSP(INVITE,200) SDP: audio=127.0.0.1:3610/2 +# O> 127.0.0.1:56543 REQ(ACK) NO SDP +# call established # << # uac >> RTP done +# O> 127.0.0.1:56543 REQ(BYE) NO SDP # << ok 60 - [uac] RTP done -# uas >> O> 127.0.0.1:51682 RSP(INVITE,200) SDP: audio=127.0.0.1:7496/2 -# I< HASH(0xaaaabdf850c0) REQ(ACK) NO SDP +# uas >> O> 127.0.0.1:55883 RSP(INVITE,200) SDP: audio=127.0.0.1:3378/2 +# I< HASH(0xaaaae3cd4550) REQ(ACK) NO SDP # call established # << -# uas >> I< HASH(0xaaaabdf8a958) REQ(BYE) NO SDP -# << -# uas >> O> 127.0.0.1:51682 RSP(BYE,200) NO SDP -# << -# uas >> call cleaned up -# << -# uas >> received 100/100 packets +# uas >> I< HASH(0xaaaae3ce8c68) REQ(BYE) NO SDP +# O> 127.0.0.1:55883 RSP(BYE,200) NO SDP +# call cleaned up +# received 100/100 packets # RTP ok # END # << ok 61 - [uas] RTP ok -# uac >> O> 127.0.0.1:55453 REQ(BYE) NO SDP -# << -# uac >> I< HASH(0xaaaabe127978) RSP(BYE,200) NO SDP -# << -# uac >> END +# uac >> I< HASH(0xaaaae3254f28) RSP(BYE,200) NO SDP +# END # << ok 62 - [uac] END ok 63 - [uas] END # ------- test with family ip6 transport udp -# UAS on [::1]:51794 -# UAC on [::1]:42323 -# PROXY on [::1]:55733 [::1]:42469 +# UAS on [::1]:49439 +# UAC on [::1]:51720 +# PROXY on [::1]:50181 [::1]:38696 # proxy >> OK +# ready # << ok 64 - [proxy] OK # uas >> OK +# ready # << ok 65 - [uas] OK -# proxy >> ready -# << ok 66 - [proxy] ready -# uas >> ready -# << ok 67 - [uas] ready # uac >> OK +# ready # << ok 68 - [uac] OK -# uac >> ready -# << ok 69 - [uac] ready -# uac >> O> [::1]:55733 REQ(INVITE) SDP: audio=[::1]:9398/2 +# uac >> O> [::1]:50181 REQ(INVITE) SDP: audio=[::1]:2544/2 # << ok 70 - [uac] (?^:O>.*REQ\(INVITE\) SDP: audio=\S+) -# proxy >> I< HASH(0xaaaabdf75b48) REQ(INVITE) SDP: audio=[::1]:9398/2 +# proxy >> I< HASH(0xaaaae3cdc780) REQ(INVITE) SDP: audio=[::1]:2544/2 +# O> [::1]:49439 REQ(INVITE) SDP: audio=[::1]:2544/2 # << ok 71 - [proxy] (?^:I<.*REQ\(INVITE\) SDP: audio=\S+) -# proxy >> O> [::1]:51794 REQ(INVITE) SDP: audio=[::1]:9398/2 -# << ok 72 - [proxy] (?^:O>.*REQ\(INVITE\) SDP: audio=\S+) -# uas >> I< HASH(0xaaaabdf75e18) REQ(INVITE) SDP: audio=[::1]:9398/2 -# << -ok 73 - [uas] (?^:I<.*REQ\(INVITE\) SDP: audio=\S+) -ok 74 - outgoing on UAC must be the same as incoming on proxy -ok 75 - outgoing on proxy must be the same as incoming on UAS -ok 76 - SDP must pass unchanged to UAS -# uas >> O> [::1]:42469 RSP(INVITE,100) NO SDP -# << -# uas >> call created -# << -ok 77 - [uas] call created -# uas >> INVITE you.uas@example.com SIP/2.0 -# Via: SIP/2.0/UDP [::1]:42469;branch=z9hG4bK0e726e58368bd651ad74ba80a45a86afdac6754d00d84c93cec9fbe3c76dcb -# Record-route: -# Via: SIP/2.0/UDP [::1]:55733;branch=z9hG4bKb9b1576ef7712f96e8ad28347972078edac6754d00d84c9da279568739336b -# Record-route: +# uas >> I< HASH(0xaaaae3cdca98) REQ(INVITE) SDP: audio=[::1]:2544/2 +# O> [::1]:38696 RSP(INVITE,100) NO SDP +# call created +# INVITE you.uas@example.com SIP/2.0 +# Via: SIP/2.0/UDP [::1]:38696;branch=z9hG4bKa25927e16d1474b0ee5bc53265a5cbdfc782b0088754a3375b831be2004626 +# Record-route: +# Via: SIP/2.0/UDP [::1]:50181;branch=z9hG4bKaf8c727465a6c62737e9d99cd11474aac782b0088754a33a3788e1ccc23ab6 +# Record-route: # Supported: # Allow: INVITE, ACK, OPTIONS, CANCEL, BYE -# Via: SIP/2.0/UDP [::1]:42323;branch=z9hG4bK4bfe5cb03ad3d68e24becb631dbbe9a1dac6754d00d84c9bfe70679cf1f345 -# Call-id: 1e31e64cdc629365d0f97573ae8201be +# Via: SIP/2.0/UDP [::1]:51720;branch=z9hG4bKcd9933471564ccf2a9a1e6444a2baab2c782b0088754a33aa5ecd43718fe2e +# Call-id: ee27f26e54efe71e5cd1afc457e44103 # Cseq: 1 INVITE -# From: me.uac@example.com;tag=cc6d470db9c545c40029873e091ae314 +# From: me.uac@example.com;tag=f34bcbdf3a9969d8892c8f508e669a8e # Content-type: application/sdp # Content-length: 163 # Max-forwards: 69 -# Contact: sip:bPN7RORCBBKWPUJWJ4V7BDI26IBK54KOAIDG7OHGD5SU2VYEJ@[::1]:42469 -# To: you.uas@example.com;tag=48697c15f1b2cff19f4388e28772f29d +# Contact: sip:b2ANNSGUY62477YQMYMYQ3FAYUHONA6WDSMF7VX4BJEOIWWHR@[::1]:38696 +# To: you.uas@example.com;tag=c62a5da99b10442e5a3ef69c5a3c33ad # # v=0 -# o=anonymous 1715680806 1715680806 IN IP6 ::1 +# o=anonymous 1750091436 1750091436 IN IP6 ::1 # s=session # c=IN IP6 ::1 # t=0 0 -# m=audio 9398 RTP/AVP 0 101 +# m=audio 2544 RTP/AVP 0 101 # a=rtpmap:101 telephone-event/8000 # a=fmtp:101 0-16 # << -ok 78 - [uas] (?^i:via\:\ SIP\/2\.0\/udp\ \[\:\:1\]\:42469\;) -ok 79 - [uas] (?^i:via\:\ SIP\/2\.0\/udp\ \[\:\:1\]\:42323\;) -# uac >> I< HASH(0xaaaabe112438) RSP(INVITE,100) NO SDP -# << -# uac >> I< HASH(0xaaaabe10f528) RSP(INVITE,200) SDP: audio=[::1]:6398/2 +ok 73 - [uas] (?^:I<.*REQ\(INVITE\) SDP: audio=\S+) +ok 74 - outgoing on UAC must be the same as incoming on proxy +ok 75 - outgoing on proxy must be the same as incoming on UAS +ok 76 - SDP must pass unchanged to UAS +ok 77 - [uas] call created +ok 78 - [uas] (?^i:via\:\ SIP\/2\.0\/udp\ \[\:\:1\]\:38696\;) +ok 79 - [uas] (?^i:via\:\ SIP\/2\.0\/udp\ \[\:\:1\]\:51720\;) +# uac >> I< HASH(0xaaaae3e74658) RSP(INVITE,100) NO SDP # << -# uac >> O> [::1]:55733 REQ(ACK) NO SDP +# uac >> I< HASH(0xaaaae3e74658) RSP(INVITE,200) SDP: audio=[::1]:8296/2 # << -# uac >> call established +# uac >> O> [::1]:50181 REQ(ACK) NO SDP +# call established # << # uac >> RTP done +# O> [::1]:50181 REQ(BYE) NO SDP # << ok 80 - [uac] RTP done -# uas >> O> [::1]:42469 RSP(INVITE,200) SDP: audio=[::1]:6398/2 -# I< HASH(0xaaaabdf8ac20) REQ(ACK) NO SDP +# uas >> O> [::1]:38696 RSP(INVITE,200) SDP: audio=[::1]:8296/2 +# I< HASH(0xaaaae3cdcab0) REQ(ACK) NO SDP # call established # << -# uas >> I< HASH(0xaaaabdf8e7f8) REQ(BYE) NO SDP -# << -# uas >> O> [::1]:42469 RSP(BYE,200) NO SDP -# << -# uas >> call cleaned up -# << -# uas >> received 100/100 packets +# uas >> I< HASH(0xaaaae3cf29e0) REQ(BYE) NO SDP +# O> [::1]:38696 RSP(BYE,200) NO SDP +# call cleaned up +# received 100/100 packets # RTP ok # END # << ok 81 - [uas] RTP ok -# uac >> O> [::1]:55733 REQ(BYE) NO SDP -# << -# uac >> I< HASH(0xaaaabe12b268) RSP(BYE,200) NO SDP -# << -# uac >> END +# uac >> I< HASH(0xaaaae3e8d410) RSP(BYE,200) NO SDP +# END # << ok 82 - [uac] END ok 83 - [uas] END # proxy >> OK +# ready # << ok 84 - [proxy] OK # uas >> OK +# ready # << ok 85 - [uas] OK -# proxy >> ready -# << ok 86 - [proxy] ready -# uas >> ready -# << ok 87 - [uas] ready # uac >> OK +# ready # << ok 88 - [uac] OK -# uac >> ready -# << ok 89 - [uac] ready -# uac >> O> [::1]:55733 REQ(INVITE) SDP: audio=[::1]:3180/2 +# uac >> O> [::1]:50181 REQ(INVITE) SDP: audio=[::1]:8968/2 # << ok 90 - [uac] (?^:O>.*REQ\(INVITE\) SDP: audio=\S+) -# proxy >> I< HASH(0xaaaabdf76ed0) REQ(INVITE) SDP: audio=[::1]:3180/2 +# proxy >> I< HASH(0xaaaae3cdf8a0) REQ(INVITE) SDP: audio=[::1]:8968/2 +# O> [::1]:49439 REQ(INVITE) SDP: audio=[::1]:3984/2 # << ok 91 - [proxy] (?^:I<.*REQ\(INVITE\) SDP: audio=\S+) -# proxy >> O> [::1]:51794 REQ(INVITE) SDP: audio=[::1]:6374/2 -# << ok 92 - [proxy] (?^:O>.*REQ\(INVITE\) SDP: audio=\S+) -# uas >> I< HASH(0xaaaabdf8f6f8) REQ(INVITE) SDP: audio=[::1]:6374/2 -# << -ok 93 - [uas] (?^:I<.*REQ\(INVITE\) SDP: audio=\S+) -ok 94 - outgoing on UAC must be the same as incoming on proxy -ok 95 - outgoing on proxy must be the same as incoming on UAS -ok 96 - allocated addr:port must be different ([::1]:3180|[::1]:6374) -ok 97 - ranges must stay the same -# uas >> O> [::1]:42469 RSP(INVITE,100) NO SDP -# << -# uas >> call created -# << -ok 98 - [uas] call created -# uas >> INVITE you.uas@example.com SIP/2.0 -# Via: SIP/2.0/UDP [::1]:42469;branch=z9hG4bK0e726e58368bd651ad74ba80a45a86afa64002d6d2b253be9b5984d578010c -# Record-route: -# Via: SIP/2.0/UDP [::1]:55733;branch=z9hG4bKb9b1576ef7712f96e8ad28347972078ea64002d6d2b253bc58c9f49fbe40eb -# Record-route: +# uas >> I< HASH(0xaaaae3cdf8a0) REQ(INVITE) SDP: audio=[::1]:3984/2 +# O> [::1]:38696 RSP(INVITE,100) NO SDP +# call created +# INVITE you.uas@example.com SIP/2.0 +# Via: SIP/2.0/UDP [::1]:38696;branch=z9hG4bKa25927e16d1474b0ee5bc53265a5cbdf410c6981205446e62027b90e7bb765 +# Record-route: +# Via: SIP/2.0/UDP [::1]:50181;branch=z9hG4bKaf8c727465a6c62737e9d99cd11474aa410c6981205446e946352d7d10676a +# Record-route: # Supported: # Allow: INVITE, ACK, OPTIONS, CANCEL, BYE -# Via: SIP/2.0/UDP [::1]:42323;branch=z9hG4bK4bfe5cb03ad3d68e24becb631dbbe9a1a64002d6d2b253b8dfdfdf8fca8416 -# Call-id: 9e9ed73081f250255acbe28921426649 +# Via: SIP/2.0/UDP [::1]:51720;branch=z9hG4bKcd9933471564ccf2a9a1e6444a2baab2410c6981205446ea1547381e2222fc +# Call-id: ec8ac0f2a3d6c62d6b9cc9074269cbe7 # Cseq: 1 INVITE -# From: me.uac@example.com;tag=18d1706a7dbb2715fe54cffe2956e9f7 +# From: me.uac@example.com;tag=72e998759bba0bdbacb323c67d75d683 # Content-type: application/sdp # Content-length: 163 # Max-forwards: 69 -# Contact: sip:bAWFHDJJ4WJJ7Y6OV7HR2WTDGUMFIW6CQ3OXZOR5BCUHRMGZY@[::1]:42469 -# To: you.uas@example.com;tag=e1da1bfd763a17e6eca373d1edcc8149 +# Contact: sip:bRM36AY23K67Z6QESD7PGTWAIXQPHBR4QUZ2VLJS5C6OHXLFC@[::1]:38696 +# To: you.uas@example.com;tag=b44d8016fd8b965f7075ba191930cd54 # # v=0 -# o=anonymous 1715680808 1715680808 IN IP6 ::1 +# o=anonymous 1750091438 1750091438 IN IP6 ::1 # s=session # c=IN IP6 ::1 # t=0 0 -# m=audio 6374 RTP/AVP 0 101 +# m=audio 3984 RTP/AVP 0 101 # a=rtpmap:101 telephone-event/8000 # a=fmtp:101 0-16 # << -ok 99 - [uas] (?^i:via\:\ SIP\/2\.0\/udp\ \[\:\:1\]\:42469\;) -ok 100 - [uas] (?^i:via\:\ SIP\/2\.0\/udp\ \[\:\:1\]\:42323\;) -# uac >> I< HASH(0xaaaabe118fb0) RSP(INVITE,100) NO SDP -# << -# uac >> I< HASH(0xaaaabe118fb0) RSP(INVITE,200) SDP: audio=[::1]:8420/2 -# << -# uac >> O> [::1]:55733 REQ(ACK) NO SDP +ok 93 - [uas] (?^:I<.*REQ\(INVITE\) SDP: audio=\S+) +ok 94 - outgoing on UAC must be the same as incoming on proxy +ok 95 - outgoing on proxy must be the same as incoming on UAS +ok 96 - allocated addr:port must be different ([::1]:8968|[::1]:3984) +ok 97 - ranges must stay the same +ok 98 - [uas] call created +ok 99 - [uas] (?^i:via\:\ SIP\/2\.0\/udp\ \[\:\:1\]\:38696\;) +ok 100 - [uas] (?^i:via\:\ SIP\/2\.0\/udp\ \[\:\:1\]\:51720\;) +# uac >> I< HASH(0xaaaae3e7b040) RSP(INVITE,100) NO SDP # << -# uac >> call established +# uac >> I< HASH(0xaaaae3e7b040) RSP(INVITE,200) SDP: audio=[::1]:10078/2 +# O> [::1]:50181 REQ(ACK) NO SDP +# call established # << # uac >> RTP done +# O> [::1]:50181 REQ(BYE) NO SDP # << ok 101 - [uac] RTP done -# uas >> O> [::1]:42469 RSP(INVITE,200) SDP: audio=[::1]:10910/2 -# I< HASH(0xaaaabdf76ee8) REQ(ACK) NO SDP +# uas >> O> [::1]:38696 RSP(INVITE,200) SDP: audio=[::1]:11322/2 +# I< HASH(0xaaaae3cdf8b8) REQ(ACK) NO SDP # call established # << -# uas >> I< HASH(0xaaaabdf926d0) REQ(BYE) NO SDP -# << -# uas >> O> [::1]:42469 RSP(BYE,200) NO SDP -# << -# uas >> call cleaned up -# << -# uas >> received 100/100 packets +# uas >> I< HASH(0xaaaae3e9ace0) REQ(BYE) NO SDP +# O> [::1]:38696 RSP(BYE,200) NO SDP +# call cleaned up +# received 100/100 packets # RTP ok # END # << ok 102 - [uas] RTP ok -# uac >> O> [::1]:55733 REQ(BYE) NO SDP -# << -# uac >> I< HASH(0xaaaabe12f190) RSP(BYE,200) NO SDP +# uac >> I< HASH(0xaaaae3e74e10) RSP(BYE,200) NO SDP # END # << ok 103 - [uac] END @@ -1146,305 +1116,267 @@ # << ok 105 - [nathelper] OK # proxy >> OK +# ready # << ok 106 - [proxy] OK # uas >> OK +# ready # << ok 107 - [uas] OK -# proxy >> ready -# << ok 108 - [proxy] ready -# uas >> ready -# << ok 109 - [uas] ready # uac >> OK +# ready # << ok 110 - [uac] OK -# uac >> ready -# << ok 111 - [uac] ready -# uac >> O> [::1]:55733 REQ(INVITE) SDP: audio=[::1]:5998/2 +# uac >> O> [::1]:50181 REQ(INVITE) SDP: audio=[::1]:4402/2 # << ok 112 - [uac] (?^:O>.*REQ\(INVITE\) SDP: audio=\S+) -# proxy >> I< HASH(0xaaaabdf7b618) REQ(INVITE) SDP: audio=[::1]:5998/2 +# proxy >> I< HASH(0xaaaae3cde588) REQ(INVITE) SDP: audio=[::1]:4402/2 # << ok 113 - [proxy] (?^:I<.*REQ\(INVITE\) SDP: audio=\S+) -# proxy >> O> [::1]:51794 REQ(INVITE) SDP: audio=[::1]:4864/2 +# proxy >> O> [::1]:49439 REQ(INVITE) SDP: audio=[::1]:6226/2 # << ok 114 - [proxy] (?^:O>.*REQ\(INVITE\) SDP: audio=\S+) -# uas >> I< HASH(0xaaaabdf930f8) REQ(INVITE) SDP: audio=[::1]:4864/2 -# << -ok 115 - [uas] (?^:I<.*REQ\(INVITE\) SDP: audio=\S+) -ok 116 - outgoing on UAC must be the same as incoming on proxy -ok 117 - outgoing on proxy must be the same as incoming on UAS -ok 118 - allocated addr:port must be different ([::1]:5998|[::1]:4864) -ok 119 - ranges must stay the same -# uas >> O> [::1]:42469 RSP(INVITE,100) NO SDP -# << -# uas >> call created +# uas >> I< HASH(0xaaaae3cde810) REQ(INVITE) SDP: audio=[::1]:6226/2 +# O> [::1]:38696 RSP(INVITE,100) NO SDP +# call created # INVITE you.uas@example.com SIP/2.0 -# Via: SIP/2.0/UDP [::1]:42469;branch=z9hG4bK0e726e58368bd651ad74ba80a45a86af9ce18d84a2335931810fc1e6d8d8f0 -# Record-route: -# Via: SIP/2.0/UDP [::1]:55733;branch=z9hG4bKb9b1576ef7712f96e8ad28347972078e9ce18d84a233593be4bfaa5080e737 -# Record-route: +# Via: SIP/2.0/UDP [::1]:38696;branch=z9hG4bKa25927e16d1474b0ee5bc53265a5cbdf869f20b60b890bdc6e4dac06f37a12 +# Record-route: +# Via: SIP/2.0/UDP [::1]:50181;branch=z9hG4bKaf8c727465a6c62737e9d99cd11474aa869f20b60b890bd98fc7d6966e5008 +# Record-route: # Supported: # Allow: INVITE, ACK, OPTIONS, CANCEL, BYE -# Via: SIP/2.0/UDP [::1]:42323;branch=z9hG4bK4bfe5cb03ad3d68e24becb631dbbe9a19ce18d84a233593bb04b12c42e5215 -# Call-id: 99cf2ed3fb4b2c5d488d6ad9feb94604 +# Via: SIP/2.0/UDP [::1]:51720;branch=z9hG4bKcd9933471564ccf2a9a1e6444a2baab2869f20b60b890bd201b4273393253d +# Call-id: 381502337e7b9df0891f406a5ae0f66f # Cseq: 1 INVITE -# From: me.uac@example.com;tag=079152dfbd3595c91ccdcade0114e817 +# From: me.uac@example.com;tag=9e80b8a708c8d2c0e4f48f34d1b92e57 # Content-type: application/sdp # Content-length: 163 # Max-forwards: 69 -# Contact: sip:bKDOG54EEGIJQQWEML5GPFBE2FAQERUBKGDEJR7LNT3YKRPJP@[::1]:42469 -# To: you.uas@example.com;tag=29d99a6e8de97b13c5d9170576fa4f03 +# Contact: sip:bOCJ6FOECYQX4BB7LZI7JYMEDVXE6CZI63W54PZTYPYJ6AFSW@[::1]:38696 +# To: you.uas@example.com;tag=bc7be3626530cd5fe709aaa093227a44 # # v=0 -# o=anonymous 1715680811 1715680811 IN IP6 ::1 +# o=anonymous 1750091440 1750091440 IN IP6 ::1 # s=session # c=IN IP6 ::1 # t=0 0 -# m=audio 4864 RTP/AVP 0 101 +# m=audio 6226 RTP/AVP 0 101 # a=rtpmap:101 telephone-event/8000 # a=fmtp:101 0-16 # << +ok 115 - [uas] (?^:I<.*REQ\(INVITE\) SDP: audio=\S+) +ok 116 - outgoing on UAC must be the same as incoming on proxy +ok 117 - outgoing on proxy must be the same as incoming on UAS +ok 118 - allocated addr:port must be different ([::1]:4402|[::1]:6226) +ok 119 - ranges must stay the same ok 120 - [uas] call created -ok 121 - [uas] (?^i:via\:\ SIP\/2\.0\/udp\ \[\:\:1\]\:42469\;) -ok 122 - [uas] (?^i:via\:\ SIP\/2\.0\/udp\ \[\:\:1\]\:42323\;) -# uac >> I< HASH(0xaaaabe11bb50) RSP(INVITE,100) NO SDP +ok 121 - [uas] (?^i:via\:\ SIP\/2\.0\/udp\ \[\:\:1\]\:38696\;) +ok 122 - [uas] (?^i:via\:\ SIP\/2\.0\/udp\ \[\:\:1\]\:51720\;) +# uac >> I< HASH(0xaaaae3e7dc50) RSP(INVITE,100) NO SDP # << -# uac >> I< HASH(0xaaaabe1169a0) RSP(INVITE,200) SDP: audio=[::1]:8000/2 -# O> [::1]:55733 REQ(ACK) NO SDP +# uac >> I< HASH(0xaaaae3e7dc50) RSP(INVITE,200) SDP: audio=[::1]:3370/2 +# O> [::1]:50181 REQ(ACK) NO SDP # call established # << # uac >> RTP done +# O> [::1]:50181 REQ(BYE) NO SDP # << ok 123 - [uac] RTP done -# uas >> O> [::1]:42469 RSP(INVITE,200) SDP: audio=[::1]:3426/2 -# I< HASH(0xaaaabdf7b8b8) REQ(ACK) NO SDP +# uas >> O> [::1]:38696 RSP(INVITE,200) SDP: audio=[::1]:9100/2 +# I< HASH(0xaaaae3cde828) REQ(ACK) NO SDP # call established # << -# uas >> I< HASH(0xaaaabdf96520) REQ(BYE) NO SDP -# << -# uas >> O> [::1]:42469 RSP(BYE,200) NO SDP -# << -# uas >> call cleaned up -# << -# uas >> received 100/100 packets +# uas >> I< HASH(0xaaaae3cf7060) REQ(BYE) NO SDP +# O> [::1]:38696 RSP(BYE,200) NO SDP +# call cleaned up +# received 100/100 packets # RTP ok # END # << ok 124 - [uas] RTP ok -# uac >> O> [::1]:55733 REQ(BYE) NO SDP -# << -# uac >> I< HASH(0xaaaabe131f50) RSP(BYE,200) NO SDP -# << -# uac >> END +# uac >> I< HASH(0xaaaae3e93f58) RSP(BYE,200) NO SDP +# END # << ok 125 - [uac] END ok 126 - [uas] END # ------- test with family ip4 transport tcp -# UAS on 127.0.0.1:53449 -# UAC on 127.0.0.1:48873 -# PROXY on 127.0.0.1:57989 127.0.0.1:45583 +# UAS on 127.0.0.1:38321 +# UAC on 127.0.0.1:44959 +# PROXY on 127.0.0.1:55171 127.0.0.1:47559 # proxy >> OK +# ready # << ok 127 - [proxy] OK # uas >> OK +# ready # << ok 128 - [uas] OK -# proxy >> ready -# << ok 129 - [proxy] ready -# uas >> ready -# << ok 130 - [uas] ready # uac >> OK +# ready # << ok 131 - [uac] OK -# uac >> ready -# << ok 132 - [uac] ready -# uac >> O> 127.0.0.1:57989 REQ(INVITE) SDP: audio=127.0.0.1:5944/2 +# uac >> O> 127.0.0.1:55171 REQ(INVITE) SDP: audio=127.0.0.1:7682/2 # << ok 133 - [uac] (?^:O>.*REQ\(INVITE\) SDP: audio=\S+) -# proxy >> I< HASH(0xaaaabdf94e98) REQ(INVITE) SDP: audio=127.0.0.1:5944/2 +# proxy >> I< HASH(0xaaaae3cf9038) REQ(INVITE) SDP: audio=127.0.0.1:7682/2 +# O> 127.0.0.1:38321 REQ(INVITE) SDP: audio=127.0.0.1:7682/2 # << ok 134 - [proxy] (?^:I<.*REQ\(INVITE\) SDP: audio=\S+) -# proxy >> O> 127.0.0.1:53449 REQ(INVITE) SDP: audio=127.0.0.1:5944/2 -# << ok 135 - [proxy] (?^:O>.*REQ\(INVITE\) SDP: audio=\S+) -# uas >> I< HASH(0xaaaabdf9bc80) REQ(INVITE) SDP: audio=127.0.0.1:5944/2 -# << -ok 136 - [uas] (?^:I<.*REQ\(INVITE\) SDP: audio=\S+) -ok 137 - outgoing on UAC must be the same as incoming on proxy -ok 138 - outgoing on proxy must be the same as incoming on UAS -ok 139 - SDP must pass unchanged to UAS -# uas >> O> 127.0.0.1:38869 RSP(INVITE,100) NO SDP -# << -# uas >> call created -# << -ok 140 - [uas] call created -# uas >> INVITE you.uas@example.com SIP/2.0 -# Via: SIP/2.0/TCP 127.0.0.1:45583;branch=z9hG4bKeb77737faf599449c6369182af1c21d7813a213f46e3625b5187a2db10c6e2 -# Record-route: -# Via: SIP/2.0/TCP 127.0.0.1:57989;branch=z9hG4bKec25e546a01986eb912c02bf589b9075813a213f46e3625dad4de84d2830de -# Record-route: +# uas >> I< HASH(0xaaaae3cffd30) REQ(INVITE) SDP: audio=127.0.0.1:7682/2 +# O> 127.0.0.1:33233 RSP(INVITE,100) NO SDP +# call created +# INVITE you.uas@example.com SIP/2.0 +# Via: SIP/2.0/TCP 127.0.0.1:47559;branch=z9hG4bKfaf9bf57b6d35193c0e5cee79cbbb40538414972032dba42b1f733f250f88b +# Record-route: +# Via: SIP/2.0/TCP 127.0.0.1:55171;branch=z9hG4bKc8267258f52a0d3cd2ee6962c28d188738414972032dba4e71c1dba9e27956 +# Record-route: # Supported: # Allow: INVITE, ACK, OPTIONS, CANCEL, BYE -# Via: SIP/2.0/TCP 127.0.0.1:48873;branch=z9hG4bK4d9bf4668def8ce942f126700164f5ce813a213f46e36257fa19af6393123a -# Call-id: 7a8ba8517cbc48c8d7d55780a4099f3d +# Via: SIP/2.0/TCP 127.0.0.1:44959;branch=z9hG4bKaa167e72d4fb7ec5bed997bbab4b61b938414972032dba4d7daeb4b0157c30 +# Call-id: 15dd57a077ac7598c3991a00583f84c3 # Cseq: 1 INVITE -# From: me.uac@example.com;tag=496d15aa8d65f9d2d2524ea218df6639 +# From: me.uac@example.com;tag=f6baf2a027a3aea8c399a0c1b6be67aa # Content-type: application/sdp # Content-length: 175 # Max-forwards: 69 -# Contact: sip:bB4WZNAOSZGCAUHZN22MQXXHZ3OQG5AQRVMQHTAOSDNZWCHNCKDBLGMI@127.0.0.1:45583 -# To: you.uas@example.com;tag=52e7c5ee113fd731d3fede4a608b066e +# Contact: sip:bJZSTWKFVDN5IKO6AGR2Y2C3MQ2P4G7Z52XFJGDLEWJH3XXCZHJUXGWA@127.0.0.1:47559 +# To: you.uas@example.com;tag=be4d05af40e7683769bf353f602d2e8c # # v=0 -# o=anonymous 1715680813 1715680813 IN IP4 127.0.0.1 +# o=anonymous 1750091442 1750091442 IN IP4 127.0.0.1 # s=session # c=IN IP4 127.0.0.1 # t=0 0 -# m=audio 5944 RTP/AVP 0 101 +# m=audio 7682 RTP/AVP 0 101 # a=rtpmap:101 telephone-event/8000 # a=fmtp:101 0-16 # << -ok 141 - [uas] (?^i:via\:\ SIP\/2\.0\/tcp\ 127\.0\.0\.1\:45583\;) -ok 142 - [uas] (?^i:via\:\ SIP\/2\.0\/tcp\ 127\.0\.0\.1\:48873\;) -# uac >> I< HASH(0xaaaabe124ba8) RSP(INVITE,100) NO SDP -# << -# uac >> I< HASH(0xaaaabe11fe68) RSP(INVITE,200) SDP: audio=127.0.0.1:3852/2 -# << -# uac >> O> 127.0.0.1:57989 REQ(ACK) NO SDP +ok 136 - [uas] (?^:I<.*REQ\(INVITE\) SDP: audio=\S+) +ok 137 - outgoing on UAC must be the same as incoming on proxy +ok 138 - outgoing on proxy must be the same as incoming on UAS +ok 139 - SDP must pass unchanged to UAS +ok 140 - [uas] call created +ok 141 - [uas] (?^i:via\:\ SIP\/2\.0\/tcp\ 127\.0\.0\.1\:47559\;) +ok 142 - [uas] (?^i:via\:\ SIP\/2\.0\/tcp\ 127\.0\.0\.1\:44959\;) +# uac >> I< HASH(0xaaaae3e848b8) RSP(INVITE,100) NO SDP # << -# uac >> call established +# uac >> I< HASH(0xaaaae35bac88) RSP(INVITE,200) SDP: audio=127.0.0.1:5078/2 +# O> 127.0.0.1:55171 REQ(ACK) NO SDP +# call established # << # uac >> RTP done +# O> 127.0.0.1:55171 REQ(BYE) NO SDP # << ok 143 - [uac] RTP done -# uas >> O> 127.0.0.1:38869 RSP(INVITE,200) SDP: audio=127.0.0.1:3852/2 -# I< HASH(0xaaaabdf9bb48) REQ(ACK) NO SDP +# uas >> O> 127.0.0.1:33233 RSP(INVITE,200) SDP: audio=127.0.0.1:5078/2 +# I< HASH(0xaaaae3cffbf8) REQ(ACK) NO SDP # call established -# << -# uas >> I< HASH(0xaaaabdf9e9d8) REQ(BYE) NO SDP -# << -# uas >> O> 127.0.0.1:38869 RSP(BYE,200) NO SDP -# << -# uas >> call cleaned up +# I< HASH(0xaaaae3d07740) REQ(BYE) NO SDP +# O> 127.0.0.1:33233 RSP(BYE,200) NO SDP +# call cleaned up # << # uas >> received 100/100 packets # RTP ok # END # << ok 144 - [uas] RTP ok -# uac >> O> 127.0.0.1:57989 REQ(BYE) NO SDP -# << -# uac >> I< HASH(0xaaaabe11d448) RSP(BYE,200) NO SDP -# << -# uac >> END +# uac >> I< HASH(0xaaaae3cdea08) RSP(BYE,200) NO SDP +# END # << ok 145 - [uac] END ok 146 - [uas] END # proxy >> OK +# ready # << ok 147 - [proxy] OK # uas >> OK +# ready # << ok 148 - [uas] OK -# proxy >> ready -# << ok 149 - [proxy] ready -# uas >> ready -# << ok 150 - [uas] ready # uac >> OK +# ready # << ok 151 - [uac] OK -# uac >> ready -# << ok 152 - [uac] ready -# uac >> O> 127.0.0.1:57989 REQ(INVITE) SDP: audio=127.0.0.1:11722/2 +# uac >> O> 127.0.0.1:55171 REQ(INVITE) SDP: audio=127.0.0.1:7772/2 # << ok 153 - [uac] (?^:O>.*REQ\(INVITE\) SDP: audio=\S+) -# proxy >> I< HASH(0xaaaabdf99088) REQ(INVITE) SDP: audio=127.0.0.1:11722/2 +# proxy >> I< HASH(0xaaaae3cfd178) REQ(INVITE) SDP: audio=127.0.0.1:7772/2 +# O> 127.0.0.1:38321 REQ(INVITE) SDP: audio=127.0.0.1:10930/2 # << ok 154 - [proxy] (?^:I<.*REQ\(INVITE\) SDP: audio=\S+) -# proxy >> O> 127.0.0.1:53449 REQ(INVITE) SDP: audio=127.0.0.1:8300/2 -# << ok 155 - [proxy] (?^:O>.*REQ\(INVITE\) SDP: audio=\S+) -# uas >> I< HASH(0xaaaabdf9e0f8) REQ(INVITE) SDP: audio=127.0.0.1:8300/2 -# << -ok 156 - [uas] (?^:I<.*REQ\(INVITE\) SDP: audio=\S+) -ok 157 - outgoing on UAC must be the same as incoming on proxy -ok 158 - outgoing on proxy must be the same as incoming on UAS -ok 159 - allocated addr:port must be different (127.0.0.1:11722|127.0.0.1:8300) -ok 160 - ranges must stay the same -# uas >> O> 127.0.0.1:34999 RSP(INVITE,100) NO SDP -# << -# uas >> call created -# << -ok 161 - [uas] call created -# uas >> INVITE you.uas@example.com SIP/2.0 -# Via: SIP/2.0/TCP 127.0.0.1:45583;branch=z9hG4bKeb77737faf599449c6369182af1c21d7355457056e415d9250e7c15095dde1 -# Record-route: -# Via: SIP/2.0/TCP 127.0.0.1:57989;branch=z9hG4bKec25e546a01986eb912c02bf589b9075355457056e415d9455db9682707d7f -# Record-route: +# uas >> I< HASH(0xaaaae3d02028) REQ(INVITE) SDP: audio=127.0.0.1:10930/2 +# O> 127.0.0.1:42913 RSP(INVITE,100) NO SDP +# call created +# INVITE you.uas@example.com SIP/2.0 +# Via: SIP/2.0/TCP 127.0.0.1:47559;branch=z9hG4bKfaf9bf57b6d35193c0e5cee79cbbb4052bc715606c065d71a8eabdf27e4449 +# Record-route: +# Via: SIP/2.0/TCP 127.0.0.1:55171;branch=z9hG4bKc8267258f52a0d3cd2ee6962c28d18872bc715606c065d75aeb5d641ebb474 +# Record-route: # Supported: # Allow: INVITE, ACK, OPTIONS, CANCEL, BYE -# Via: SIP/2.0/TCP 127.0.0.1:48873;branch=z9hG4bK4d9bf4668def8ce942f126700164f5ce355457056e415d9986bbd4abc9efd7 -# Call-id: 61d58dbb649191ee79b0490c15da7428 +# Via: SIP/2.0/TCP 127.0.0.1:44959;branch=z9hG4bKaa167e72d4fb7ec5bed997bbab4b61b92bc715606c065d79ab332e6a215956 +# Call-id: b92d094bcedfc68b51f9148386def509 # Cseq: 1 INVITE -# From: me.uac@example.com;tag=2c49b0d866fa7fadef1bbefdf84878e6 +# From: me.uac@example.com;tag=e9d42d960be55fa18c089fe52c26464d # Content-type: application/sdp # Max-forwards: 69 -# Contact: sip:b52KN6AS7RRES3JC5TQS3F6GYVB4ELKMTHPGZORBESPSAKP2B6BOTXXQ@127.0.0.1:45583 -# Content-length: 175 -# To: you.uas@example.com;tag=bf0a3baa1a49553a3eb8b145fdc662ec +# Contact: sip:bGYVBGD3SR3TTGY4XJLF4PTYVSBHVRSCYUV4UKR4FDCXPVEEYSLW5PAI@127.0.0.1:47559 +# Content-length: 176 +# To: you.uas@example.com;tag=15744b10ed960d4ab6aa5c02db6962bb # # v=0 -# o=anonymous 1715680815 1715680815 IN IP4 127.0.0.1 +# o=anonymous 1750091445 1750091445 IN IP4 127.0.0.1 # s=session # c=IN IP4 127.0.0.1 # t=0 0 -# m=audio 8300 RTP/AVP 0 101 +# m=audio 10930 RTP/AVP 0 101 # a=rtpmap:101 telephone-event/8000 # a=fmtp:101 0-16 # << -ok 162 - [uas] (?^i:via\:\ SIP\/2\.0\/tcp\ 127\.0\.0\.1\:45583\;) -ok 163 - [uas] (?^i:via\:\ SIP\/2\.0\/tcp\ 127\.0\.0\.1\:48873\;) -# uac >> I< HASH(0xaaaabe125810) RSP(INVITE,100) NO SDP -# << -# uac >> I< HASH(0xaaaabe121a70) RSP(INVITE,200) SDP: audio=127.0.0.1:3612/2 -# << -# uac >> O> 127.0.0.1:57989 REQ(ACK) NO SDP +ok 156 - [uas] (?^:I<.*REQ\(INVITE\) SDP: audio=\S+) +ok 157 - outgoing on UAC must be the same as incoming on proxy +ok 158 - outgoing on proxy must be the same as incoming on UAS +ok 159 - allocated addr:port must be different (127.0.0.1:7772|127.0.0.1:10930) +ok 160 - ranges must stay the same +ok 161 - [uas] call created +ok 162 - [uas] (?^i:via\:\ SIP\/2\.0\/tcp\ 127\.0\.0\.1\:47559\;) +ok 163 - [uas] (?^i:via\:\ SIP\/2\.0\/tcp\ 127\.0\.0\.1\:44959\;) +# uac >> I< HASH(0xaaaae3e87550) RSP(INVITE,100) NO SDP # << -# uac >> call established +# uac >> I< HASH(0xaaaae35bac88) RSP(INVITE,200) SDP: audio=127.0.0.1:8216/2 +# O> 127.0.0.1:55171 REQ(ACK) NO SDP +# call established # << # uac >> RTP done +# O> 127.0.0.1:55171 REQ(BYE) NO SDP # << ok 164 - [uac] RTP done -# uas >> O> 127.0.0.1:34999 RSP(INVITE,200) SDP: audio=127.0.0.1:2368/2 -# I< HASH(0xaaaabdf9e0e0) REQ(ACK) NO SDP +# uas >> O> 127.0.0.1:42913 RSP(INVITE,200) SDP: audio=127.0.0.1:4862/2 +# I< HASH(0xaaaae3cff8e8) REQ(ACK) NO SDP # call established # << -# uas >> I< HASH(0xaaaabdf9ef08) REQ(BYE) NO SDP -# << -# uas >> O> 127.0.0.1:34999 RSP(BYE,200) NO SDP -# << -# uas >> call cleaned up -# << -# uas >> received 100/100 packets +# uas >> I< HASH(0xaaaae3d02280) REQ(BYE) NO SDP +# O> 127.0.0.1:42913 RSP(BYE,200) NO SDP +# call cleaned up +# received 100/100 packets # RTP ok # END # << ok 165 - [uas] RTP ok -# uac >> O> 127.0.0.1:57989 REQ(BYE) NO SDP -# << -# uac >> I< HASH(0xaaaabe125858) RSP(BYE,200) NO SDP -# << -# uac >> END +# uac >> I< HASH(0xaaaae3e7ff88) RSP(BYE,200) NO SDP +# END # << ok 166 - [uac] END ok 167 - [uas] END @@ -1452,308 +1384,269 @@ # << ok 168 - [nathelper] OK # proxy >> OK +# ready # << ok 169 - [proxy] OK # uas >> OK +# ready # << ok 170 - [uas] OK -# proxy >> ready -# << ok 171 - [proxy] ready -# uas >> ready -# << ok 172 - [uas] ready # uac >> OK +# ready # << ok 173 - [uac] OK -# uac >> ready -# << ok 174 - [uac] ready -# uac >> O> 127.0.0.1:57989 REQ(INVITE) SDP: audio=127.0.0.1:11966/2 +# uac >> O> 127.0.0.1:55171 REQ(INVITE) SDP: audio=127.0.0.1:9512/2 # << ok 175 - [uac] (?^:O>.*REQ\(INVITE\) SDP: audio=\S+) -# proxy >> I< HASH(0xaaaabdf9eb68) REQ(INVITE) SDP: audio=127.0.0.1:11966/2 +# proxy >> I< HASH(0xaaaae3d02cc8) REQ(INVITE) SDP: audio=127.0.0.1:9512/2 # << ok 176 - [proxy] (?^:I<.*REQ\(INVITE\) SDP: audio=\S+) -# proxy >> O> 127.0.0.1:53449 REQ(INVITE) SDP: audio=127.0.0.1:2918/2 +# proxy >> O> 127.0.0.1:38321 REQ(INVITE) SDP: audio=127.0.0.1:11574/2 # << ok 177 - [proxy] (?^:O>.*REQ\(INVITE\) SDP: audio=\S+) -# uas >> I< HASH(0xaaaabdf9f610) REQ(INVITE) SDP: audio=127.0.0.1:2918/2 -# << -ok 178 - [uas] (?^:I<.*REQ\(INVITE\) SDP: audio=\S+) -ok 179 - outgoing on UAC must be the same as incoming on proxy -ok 180 - outgoing on proxy must be the same as incoming on UAS -ok 181 - allocated addr:port must be different (127.0.0.1:11966|127.0.0.1:2918) -ok 182 - ranges must stay the same -# uas >> O> 127.0.0.1:43309 RSP(INVITE,100) NO SDP -# << -# uas >> call created -# << -ok 183 - [uas] call created -# uas >> INVITE you.uas@example.com SIP/2.0 -# Via: SIP/2.0/TCP 127.0.0.1:45583;branch=z9hG4bKeb77737faf599449c6369182af1c21d766a3e60d60bac837de2633a710c78c -# Record-route: -# Via: SIP/2.0/TCP 127.0.0.1:57989;branch=z9hG4bKec25e546a01986eb912c02bf589b907566a3e60d60bac8357dbcc47f94bc4d -# Record-route: +# uas >> I< HASH(0xaaaae3d03680) REQ(INVITE) SDP: audio=127.0.0.1:11574/2 +# O> 127.0.0.1:37671 RSP(INVITE,100) NO SDP +# call created +# INVITE you.uas@example.com SIP/2.0 +# Via: SIP/2.0/TCP 127.0.0.1:47559;branch=z9hG4bKfaf9bf57b6d35193c0e5cee79cbbb4050a578efd137182786bcb5320acd0ad +# Record-route: +# Via: SIP/2.0/TCP 127.0.0.1:55171;branch=z9hG4bKc8267258f52a0d3cd2ee6962c28d18870a578efd13718275dc1abb718ac105 +# Record-route: # Supported: # Allow: INVITE, ACK, OPTIONS, CANCEL, BYE -# Via: SIP/2.0/TCP 127.0.0.1:48873;branch=z9hG4bK4d9bf4668def8ce942f126700164f5ce66a3e60d60bac8332a867288e57260 -# Call-id: 2b8e3984d973c598e9c81ebd00b60676 +# Via: SIP/2.0/TCP 127.0.0.1:44959;branch=z9hG4bKaa167e72d4fb7ec5bed997bbab4b61b90a578efd13718272eb87f30dd19b61 +# Call-id: d390a1d6d8eac12030c50c5a82950271 # Cseq: 1 INVITE -# From: me.uac@example.com;tag=7795e67d4975db06aef5f16d0bc08262 +# From: me.uac@example.com;tag=29ad47413aae670dc7958e8d28a34aa9 # Content-type: application/sdp # Max-forwards: 69 -# Contact: sip:b3TODMQNT26K7YUGV23EGVGIF5ADSU5VTRLDQB7ZXHT7F7V75IXP36BY@127.0.0.1:45583 -# Content-length: 175 -# To: you.uas@example.com;tag=4abc4395aff46184eaf9dd5141d0862a +# Contact: sip:bIMNEEV67SBPOZXMYPLVENYIOGJ532QM3RZZ63GTKXWUUA3WMLHNNEFA@127.0.0.1:47559 +# Content-length: 176 +# To: you.uas@example.com;tag=a820ac58fa8ce4d7a2ab81fc8f5065a5 # # v=0 -# o=anonymous 1715680817 1715680817 IN IP4 127.0.0.1 +# o=anonymous 1750091447 1750091447 IN IP4 127.0.0.1 # s=session # c=IN IP4 127.0.0.1 # t=0 0 -# m=audio 2918 RTP/AVP 0 101 +# m=audio 11574 RTP/AVP 0 101 # a=rtpmap:101 telephone-event/8000 # a=fmtp:101 0-16 # << -ok 184 - [uas] (?^i:via\:\ SIP\/2\.0\/tcp\ 127\.0\.0\.1\:45583\;) -ok 185 - [uas] (?^i:via\:\ SIP\/2\.0\/tcp\ 127\.0\.0\.1\:48873\;) -# uac >> I< HASH(0xaaaabe12a020) RSP(INVITE,100) NO SDP -# << -# uac >> I< HASH(0xaaaabe124830) RSP(INVITE,200) SDP: audio=127.0.0.1:8998/2 -# << -# uac >> O> 127.0.0.1:57989 REQ(ACK) NO SDP +ok 178 - [uas] (?^:I<.*REQ\(INVITE\) SDP: audio=\S+) +ok 179 - outgoing on UAC must be the same as incoming on proxy +ok 180 - outgoing on proxy must be the same as incoming on UAS +ok 181 - allocated addr:port must be different (127.0.0.1:9512|127.0.0.1:11574) +ok 182 - ranges must stay the same +ok 183 - [uas] call created +ok 184 - [uas] (?^i:via\:\ SIP\/2\.0\/tcp\ 127\.0\.0\.1\:47559\;) +ok 185 - [uas] (?^i:via\:\ SIP\/2\.0\/tcp\ 127\.0\.0\.1\:44959\;) +# uac >> I< HASH(0xaaaae3e8bf50) RSP(INVITE,100) NO SDP # << -# uac >> call established +# uac >> I< HASH(0xaaaae35bac88) RSP(INVITE,200) SDP: audio=127.0.0.1:8934/2 +# O> 127.0.0.1:55171 REQ(ACK) NO SDP +# call established # << # uac >> RTP done +# O> 127.0.0.1:55171 REQ(BYE) NO SDP # << ok 186 - [uac] RTP done -# uas >> O> 127.0.0.1:43309 RSP(INVITE,200) SDP: audio=127.0.0.1:4334/2 -# I< HASH(0xaaaabdf9f5f8) REQ(ACK) NO SDP +# uas >> O> 127.0.0.1:37671 RSP(INVITE,200) SDP: audio=127.0.0.1:5954/2 +# I< HASH(0xaaaae3d03608) REQ(ACK) NO SDP # call established # << -# uas >> I< HASH(0xaaaabdf9ebd8) REQ(BYE) NO SDP -# << -# uas >> O> 127.0.0.1:43309 RSP(BYE,200) NO SDP -# << -# uas >> call cleaned up -# << -# uas >> received 100/100 packets +# uas >> I< HASH(0xaaaae354b680) REQ(BYE) NO SDP +# O> 127.0.0.1:37671 RSP(BYE,200) NO SDP +# call cleaned up +# received 100/100 packets # RTP ok # END # << ok 187 - [uas] RTP ok -# uac >> O> 127.0.0.1:57989 REQ(BYE) NO SDP -# << -# uac >> I< HASH(0xaaaabe129dc8) RSP(BYE,200) NO SDP -# << -# uac >> END +# uac >> I< HASH(0xaaaae3ea5740) RSP(BYE,200) NO SDP +# END # << ok 188 - [uac] END ok 189 - [uas] END # ------- test with family ip6 transport tcp -# UAS on [::1]:51359 -# UAC on [::1]:58983 -# PROXY on [::1]:53581 [::1]:54749 +# UAS on [::1]:44191 +# UAC on [::1]:33251 +# PROXY on [::1]:39713 [::1]:39643 # proxy >> OK +# ready # << ok 190 - [proxy] OK # uas >> OK +# ready # << ok 191 - [uas] OK -# proxy >> ready -# << ok 192 - [proxy] ready -# uas >> ready -# << ok 193 - [uas] ready # uac >> OK +# ready # << ok 194 - [uac] OK -# uac >> ready -# << ok 195 - [uac] ready -# uac >> O> [::1]:53581 REQ(INVITE) SDP: audio=[::1]:8210/2 +# uac >> O> [::1]:39713 REQ(INVITE) SDP: audio=[::1]:4518/2 # << ok 196 - [uac] (?^:O>.*REQ\(INVITE\) SDP: audio=\S+) -# proxy >> I< HASH(0xaaaabdf9edb8) REQ(INVITE) SDP: audio=[::1]:8210/2 +# proxy >> I< HASH(0xaaaae3d02e78) REQ(INVITE) SDP: audio=[::1]:4518/2 +# O> [::1]:44191 REQ(INVITE) SDP: audio=[::1]:4518/2 # << ok 197 - [proxy] (?^:I<.*REQ\(INVITE\) SDP: audio=\S+) -# proxy >> O> [::1]:51359 REQ(INVITE) SDP: audio=[::1]:8210/2 -# << ok 198 - [proxy] (?^:O>.*REQ\(INVITE\) SDP: audio=\S+) -# uas >> I< HASH(0xaaaabdfa16b8) REQ(INVITE) SDP: audio=[::1]:8210/2 -# << -ok 199 - [uas] (?^:I<.*REQ\(INVITE\) SDP: audio=\S+) -ok 200 - outgoing on UAC must be the same as incoming on proxy -ok 201 - outgoing on proxy must be the same as incoming on UAS -ok 202 - SDP must pass unchanged to UAS -# uas >> O> [::1]:43141 RSP(INVITE,100) NO SDP -# << -# uas >> call created -# << -ok 203 - [uas] call created -# uas >> INVITE you.uas@example.com SIP/2.0 -# Via: SIP/2.0/TCP [::1]:54749;branch=z9hG4bK3480f17c36de90a5232deaadf91c5899898db4f7b939fca64db690cfdf830a -# Record-route: -# Via: SIP/2.0/TCP [::1]:53581;branch=z9hG4bKe77c9a6d8c9d97c59c55a90c9183de0d898db4f7b939fcafb339ba11df1b6a -# Record-route: +# uas >> I< HASH(0xaaaae3d057a8) REQ(INVITE) SDP: audio=[::1]:4518/2 +# O> [::1]:45195 RSP(INVITE,100) NO SDP +# call created +# INVITE you.uas@example.com SIP/2.0 +# Via: SIP/2.0/TCP [::1]:39643;branch=z9hG4bKe915dc24cb111f9467961052feeaa1faab1d0de847233fda66c3a163efac1c +# Record-route: +# Via: SIP/2.0/TCP [::1]:39713;branch=z9hG4bK6712f8070580a74b16a910786ec6ff8aab1d0de847233fd2b175b9b1466df8 +# Record-route: # Supported: # Allow: INVITE, ACK, OPTIONS, CANCEL, BYE -# Via: SIP/2.0/TCP [::1]:58983;branch=z9hG4bK4835599cc78a338b10d550cac07f8450898db4f7b939fcaca4703c4bc575ea -# Call-id: 62ceaefc765ee5bb1af0e4a3969fb6fb +# Via: SIP/2.0/TCP [::1]:33251;branch=z9hG4bK5dfc3c2eb1fbdda448464bd28be346d0ab1d0de847233fd816d707f10890d4 +# Call-id: 88b28a964c10f5be84592340e36eb504 # Cseq: 1 INVITE -# From: me.uac@example.com;tag=c190b7a17a3d7410e9836f4cf08ff97b +# From: me.uac@example.com;tag=a6a4374f394657897e5224804e06597f # Content-type: application/sdp # Content-length: 163 # Max-forwards: 69 -# Contact: sip:b4VFLFNIWK7RGFIBBCSC2CV3JUS3YOOF2FKFMDL7MZN6LSYOM@[::1]:54749 -# To: you.uas@example.com;tag=ea6e6e74d2283bfc1b1e25b09234684a +# Contact: sip:bFM4ECGX6OBTDHE3OXHVYTAJHVICCFTB4ZLOPZN6XLRYRN26E@[::1]:39643 +# To: you.uas@example.com;tag=65631f76575e9cf4ce89711223bbd0bf # # v=0 -# o=anonymous 1715680819 1715680819 IN IP6 ::1 +# o=anonymous 1750091449 1750091449 IN IP6 ::1 # s=session # c=IN IP6 ::1 # t=0 0 -# m=audio 8210 RTP/AVP 0 101 +# m=audio 4518 RTP/AVP 0 101 # a=rtpmap:101 telephone-event/8000 # a=fmtp:101 0-16 # << -ok 204 - [uas] (?^i:via\:\ SIP\/2\.0\/tcp\ \[\:\:1\]\:54749\;) -ok 205 - [uas] (?^i:via\:\ SIP\/2\.0\/tcp\ \[\:\:1\]\:58983\;) -# uac >> I< HASH(0xaaaabe12e0e0) RSP(INVITE,100) NO SDP -# << -# uac >> I< HASH(0xaaaabe1290b8) RSP(INVITE,200) SDP: audio=[::1]:6580/2 -# << -# uac >> O> [::1]:53581 REQ(ACK) NO SDP +ok 199 - [uas] (?^:I<.*REQ\(INVITE\) SDP: audio=\S+) +ok 200 - outgoing on UAC must be the same as incoming on proxy +ok 201 - outgoing on proxy must be the same as incoming on UAS +ok 202 - SDP must pass unchanged to UAS +ok 203 - [uas] call created +ok 204 - [uas] (?^i:via\:\ SIP\/2\.0\/tcp\ \[\:\:1\]\:39643\;) +ok 205 - [uas] (?^i:via\:\ SIP\/2\.0\/tcp\ \[\:\:1\]\:33251\;) +# uac >> I< HASH(0xaaaae3e900e0) RSP(INVITE,100) NO SDP # << -# uac >> call established +# uac >> I< HASH(0xaaaae35bac88) RSP(INVITE,200) SDP: audio=[::1]:6368/2 +# O> [::1]:39713 REQ(ACK) NO SDP +# call established # << # uac >> RTP done +# O> [::1]:39713 REQ(BYE) NO SDP # << ok 206 - [uac] RTP done -# uas >> O> [::1]:43141 RSP(INVITE,200) SDP: audio=[::1]:6580/2 -# I< HASH(0xaaaabdfa16a0) REQ(ACK) NO SDP +# uas >> O> [::1]:45195 RSP(INVITE,200) SDP: audio=[::1]:6368/2 +# I< HASH(0xaaaae3d056a0) REQ(ACK) NO SDP # call established # << -# uas >> I< HASH(0xaaaabdf8ea10) REQ(BYE) NO SDP -# << -# uas >> O> [::1]:43141 RSP(BYE,200) NO SDP -# << -# uas >> call cleaned up -# << -# uas >> received 100/100 packets +# uas >> I< HASH(0xaaaae3d056a0) REQ(BYE) NO SDP +# O> [::1]:45195 RSP(BYE,200) NO SDP +# call cleaned up +# received 100/100 packets # RTP ok # END # << ok 207 - [uas] RTP ok -# uac >> O> [::1]:53581 REQ(BYE) NO SDP -# << -# uac >> I< HASH(0xaaaabe12e098) RSP(BYE,200) NO SDP -# << -# uac >> END +# uac >> I< HASH(0xaaaae3cf09d0) RSP(BYE,200) NO SDP +# END # << ok 208 - [uac] END ok 209 - [uas] END # proxy >> OK +# ready # << ok 210 - [proxy] OK # uas >> OK +# ready # << ok 211 - [uas] OK -# proxy >> ready -# << ok 212 - [proxy] ready -# uas >> ready -# << ok 213 - [uas] ready # uac >> OK +# ready # << ok 214 - [uac] OK -# uac >> ready -# << ok 215 - [uac] ready -# uac >> O> [::1]:53581 REQ(INVITE) SDP: audio=[::1]:8588/2 +# uac >> O> [::1]:39713 REQ(INVITE) SDP: audio=[::1]:7484/2 # << ok 216 - [uac] (?^:O>.*REQ\(INVITE\) SDP: audio=\S+) -# proxy >> I< HASH(0xaaaabdfa3d68) REQ(INVITE) SDP: audio=[::1]:8588/2 +# proxy >> I< HASH(0xaaaae3d07dd8) REQ(INVITE) SDP: audio=[::1]:7484/2 # << ok 217 - [proxy] (?^:I<.*REQ\(INVITE\) SDP: audio=\S+) -# proxy >> O> [::1]:51359 REQ(INVITE) SDP: audio=[::1]:5918/2 +# proxy >> O> [::1]:44191 REQ(INVITE) SDP: audio=[::1]:3984/2 # << ok 218 - [proxy] (?^:O>.*REQ\(INVITE\) SDP: audio=\S+) -# uas >> I< HASH(0xaaaabdfa64f0) REQ(INVITE) SDP: audio=[::1]:5918/2 +# uas >> I< HASH(0xaaaae3d0a270) REQ(INVITE) SDP: audio=[::1]:3984/2 # << ok 219 - [uas] (?^:I<.*REQ\(INVITE\) SDP: audio=\S+) ok 220 - outgoing on UAC must be the same as incoming on proxy ok 221 - outgoing on proxy must be the same as incoming on UAS -ok 222 - allocated addr:port must be different ([::1]:8588|[::1]:5918) +ok 222 - allocated addr:port must be different ([::1]:7484|[::1]:3984) ok 223 - ranges must stay the same -# uas >> O> [::1]:42687 RSP(INVITE,100) NO SDP -# << -# uas >> call created -# << -ok 224 - [uas] call created -# uas >> INVITE you.uas@example.com SIP/2.0 -# Via: SIP/2.0/TCP [::1]:54749;branch=z9hG4bK3480f17c36de90a5232deaadf91c589955fe1a0f10b0ee28052444c0570f42 -# Record-route: -# Via: SIP/2.0/TCP [::1]:53581;branch=z9hG4bKe77c9a6d8c9d97c59c55a90c9183de0d55fe1a0f10b0ee2aa969395d08644c -# Record-route: +# uas >> O> [::1]:40251 RSP(INVITE,100) NO SDP +# call created +# INVITE you.uas@example.com SIP/2.0 +# Via: SIP/2.0/TCP [::1]:39643;branch=z9hG4bKe915dc24cb111f9467961052feeaa1fab506ae511dda41a7c8830032b288cd +# Record-route: +# Via: SIP/2.0/TCP [::1]:39713;branch=z9hG4bK6712f8070580a74b16a910786ec6ff8ab506ae511dda41a5467513702ddaf7 +# Record-route: # Supported: # Allow: INVITE, ACK, OPTIONS, CANCEL, BYE -# Via: SIP/2.0/TCP [::1]:58983;branch=z9hG4bK4835599cc78a338b10d550cac07f845055fe1a0f10b0ee2c5587c9164d9d01 -# Call-id: c6b7a1cb1040f9d910150a7b3a6e72dd +# Via: SIP/2.0/TCP [::1]:33251;branch=z9hG4bK5dfc3c2eb1fbdda448464bd28be346d0b506ae511dda41a46ec7ee91ebc4f9 +# Call-id: 1b6e43d7da58ad70358ab35ae10881c2 # Cseq: 1 INVITE -# From: me.uac@example.com;tag=2b687fdfe0810a8a86168b06bd0eee11 +# From: me.uac@example.com;tag=ef0b9876029933f7360b93ba8bfed927 # Content-type: application/sdp # Content-length: 163 # Max-forwards: 69 -# Contact: sip:bCB4F52UFYZ3WII5AECBGOVO3OYC3EOPGLOBTCODOEWH5OT5C@[::1]:54749 -# To: you.uas@example.com;tag=cdc210b7e12a4e2e739351239a63c689 +# Contact: sip:bDQDIMAYSLCF2Y4CAMZRKFGCC6B4ZJ2RSLWJBOM2UNVXXMMJY@[::1]:39643 +# To: you.uas@example.com;tag=d7a461d1596737599ae48ce97c78ca99 # # v=0 -# o=anonymous 1715680821 1715680821 IN IP6 ::1 +# o=anonymous 1750091451 1750091451 IN IP6 ::1 # s=session # c=IN IP6 ::1 # t=0 0 -# m=audio 5918 RTP/AVP 0 101 +# m=audio 3984 RTP/AVP 0 101 # a=rtpmap:101 telephone-event/8000 # a=fmtp:101 0-16 # << -ok 225 - [uas] (?^i:via\:\ SIP\/2\.0\/tcp\ \[\:\:1\]\:54749\;) -ok 226 - [uas] (?^i:via\:\ SIP\/2\.0\/tcp\ \[\:\:1\]\:58983\;) -# uac >> I< HASH(0xaaaabe131f98) RSP(INVITE,100) NO SDP -# << -# uac >> I< HASH(0xaaaabe12c738) RSP(INVITE,200) SDP: audio=[::1]:6328/2 -# << -# uac >> O> [::1]:53581 REQ(ACK) NO SDP +ok 224 - [uas] call created +ok 225 - [uas] (?^i:via\:\ SIP\/2\.0\/tcp\ \[\:\:1\]\:39643\;) +ok 226 - [uas] (?^i:via\:\ SIP\/2\.0\/tcp\ \[\:\:1\]\:33251\;) +# uac >> I< HASH(0xaaaae3e94348) RSP(INVITE,100) NO SDP # << -# uac >> call established +# uac >> I< HASH(0xaaaae35bac88) RSP(INVITE,200) SDP: audio=[::1]:10402/2 +# O> [::1]:39713 REQ(ACK) NO SDP +# call established # << # uac >> RTP done +# O> [::1]:39713 REQ(BYE) NO SDP # << ok 227 - [uac] RTP done -# uas >> O> [::1]:42687 RSP(INVITE,200) SDP: audio=[::1]:11470/2 -# I< HASH(0xaaaabdfa63e8) REQ(ACK) NO SDP +# uas >> O> [::1]:40251 RSP(INVITE,200) SDP: audio=[::1]:4416/2 +# I< HASH(0xaaaae3d0a168) REQ(ACK) NO SDP # call established # << -# uas >> I< HASH(0xaaaabdfaaca0) REQ(BYE) NO SDP -# << -# uas >> O> [::1]:42687 RSP(BYE,200) NO SDP -# << -# uas >> call cleaned up -# << -# uas >> received 100/100 packets +# uas >> I< HASH(0xaaaae3cf8060) REQ(BYE) NO SDP +# O> [::1]:40251 RSP(BYE,200) NO SDP +# call cleaned up +# received 100/100 packets # RTP ok # END # << ok 228 - [uas] RTP ok -# uac >> O> [::1]:53581 REQ(BYE) NO SDP -# << -# uac >> I< HASH(0xaaaabe12cac8) RSP(BYE,200) NO SDP -# << -# uac >> END +# uac >> I< HASH(0xaaaae3cf5d50) RSP(BYE,200) NO SDP +# END # << ok 229 - [uac] END ok 230 - [uas] END @@ -1761,308 +1654,268 @@ # << ok 231 - [nathelper] OK # proxy >> OK +# ready # << ok 232 - [proxy] OK # uas >> OK +# ready # << ok 233 - [uas] OK -# proxy >> ready -# << ok 234 - [proxy] ready -# uas >> ready -# << ok 235 - [uas] ready # uac >> OK +# ready # << ok 236 - [uac] OK -# uac >> ready -# << ok 237 - [uac] ready -# uac >> O> [::1]:53581 REQ(INVITE) SDP: audio=[::1]:8468/2 +# uac >> O> [::1]:39713 REQ(INVITE) SDP: audio=[::1]:5390/2 # << ok 238 - [uac] (?^:O>.*REQ\(INVITE\) SDP: audio=\S+) -# proxy >> I< HASH(0xaaaabdfab178) REQ(INVITE) SDP: audio=[::1]:8468/2 +# proxy >> I< HASH(0xaaaae3d0f4a8) REQ(INVITE) SDP: audio=[::1]:5390/2 # << ok 239 - [proxy] (?^:I<.*REQ\(INVITE\) SDP: audio=\S+) -# proxy >> O> [::1]:51359 REQ(INVITE) SDP: audio=[::1]:3102/2 +# proxy >> O> [::1]:44191 REQ(INVITE) SDP: audio=[::1]:11636/2 # << ok 240 - [proxy] (?^:O>.*REQ\(INVITE\) SDP: audio=\S+) -# uas >> I< HASH(0xaaaabdfaab30) REQ(INVITE) SDP: audio=[::1]:3102/2 -# << -ok 241 - [uas] (?^:I<.*REQ\(INVITE\) SDP: audio=\S+) -ok 242 - outgoing on UAC must be the same as incoming on proxy -ok 243 - outgoing on proxy must be the same as incoming on UAS -ok 244 - allocated addr:port must be different ([::1]:8468|[::1]:3102) -ok 245 - ranges must stay the same -# uas >> O> [::1]:43625 RSP(INVITE,100) NO SDP -# << -# uas >> call created -# << -ok 246 - [uas] call created -# uas >> INVITE you.uas@example.com SIP/2.0 -# Via: SIP/2.0/TCP [::1]:54749;branch=z9hG4bK3480f17c36de90a5232deaadf91c5899545d82c6efc696fea71a05bf1bc58a -# Record-route: -# Via: SIP/2.0/TCP [::1]:53581;branch=z9hG4bKe77c9a6d8c9d97c59c55a90c9183de0d545d82c6efc696fa622381373c3ee8 -# Record-route: +# uas >> I< HASH(0xaaaae3d0ee10) REQ(INVITE) SDP: audio=[::1]:11636/2 +# O> [::1]:45189 RSP(INVITE,100) NO SDP +# call created +# INVITE you.uas@example.com SIP/2.0 +# Via: SIP/2.0/TCP [::1]:39643;branch=z9hG4bKe915dc24cb111f9467961052feeaa1fab78fd1c97e582ab6b1b72b8fdf0fa7 +# Record-route: +# Via: SIP/2.0/TCP [::1]:39713;branch=z9hG4bK6712f8070580a74b16a910786ec6ff8ab78fd1c97e582ab5963ab177a96b9b +# Record-route: # Supported: # Allow: INVITE, ACK, OPTIONS, CANCEL, BYE -# Via: SIP/2.0/TCP [::1]:58983;branch=z9hG4bK4835599cc78a338b10d550cac07f8450545d82c6efc696f8515b500dfa91a6 -# Call-id: 659278d7f0670942d0235bbe5c4f422a +# Via: SIP/2.0/TCP [::1]:33251;branch=z9hG4bK5dfc3c2eb1fbdda448464bd28be346d0b78fd1c97e582ab50942adf16bbbde +# Call-id: a8d760a04e1de250cef3140d7a8ac66f # Cseq: 1 INVITE -# From: me.uac@example.com;tag=01918d8dcb7ffd94d30001417a605aae +# From: me.uac@example.com;tag=0c38eed91162190d56cf2657f1743b0e # Content-type: application/sdp -# Content-length: 163 # Max-forwards: 69 -# Contact: sip:bB2NBYHENRQLNB5DRDHOWAMS55N6V5IHALUTXAIYF6CMDEAS3@[::1]:54749 -# To: you.uas@example.com;tag=1dbe430ed3f82065b6175bb866d5646e +# Contact: sip:bB3LJCGVF7QW6ZSXVK2N4QP43ZKSJLXV45MVTQGVKZ6LCOQYI@[::1]:39643 +# Content-length: 164 +# To: you.uas@example.com;tag=771909d975aa77b7ec0bb44a7168db4d # # v=0 -# o=anonymous 1715680823 1715680823 IN IP6 ::1 +# o=anonymous 1750091454 1750091454 IN IP6 ::1 # s=session # c=IN IP6 ::1 # t=0 0 -# m=audio 3102 RTP/AVP 0 101 +# m=audio 11636 RTP/AVP 0 101 # a=rtpmap:101 telephone-event/8000 # a=fmtp:101 0-16 # << -ok 247 - [uas] (?^i:via\:\ SIP\/2\.0\/tcp\ \[\:\:1\]\:54749\;) -ok 248 - [uas] (?^i:via\:\ SIP\/2\.0\/tcp\ \[\:\:1\]\:58983\;) -# uac >> I< HASH(0xaaaabe135be8) RSP(INVITE,100) NO SDP -# << -# uac >> I< HASH(0xaaaabe131d40) RSP(INVITE,200) SDP: audio=[::1]:10164/2 -# << -# uac >> O> [::1]:53581 REQ(ACK) NO SDP +ok 241 - [uas] (?^:I<.*REQ\(INVITE\) SDP: audio=\S+) +ok 242 - outgoing on UAC must be the same as incoming on proxy +ok 243 - outgoing on proxy must be the same as incoming on UAS +ok 244 - allocated addr:port must be different ([::1]:5390|[::1]:11636) +ok 245 - ranges must stay the same +ok 246 - [uas] call created +ok 247 - [uas] (?^i:via\:\ SIP\/2\.0\/tcp\ \[\:\:1\]\:39643\;) +ok 248 - [uas] (?^i:via\:\ SIP\/2\.0\/tcp\ \[\:\:1\]\:33251\;) +# uac >> I< HASH(0xaaaae3e97238) RSP(INVITE,100) NO SDP # << -# uac >> call established +# uac >> I< HASH(0xaaaae35bac88) RSP(INVITE,200) SDP: audio=[::1]:3826/2 +# O> [::1]:39713 REQ(ACK) NO SDP +# call established # << # uac >> RTP done +# O> [::1]:39713 REQ(BYE) NO SDP # << ok 249 - [uac] RTP done -# uas >> O> [::1]:43625 RSP(INVITE,200) SDP: audio=[::1]:2272/2 -# I< HASH(0xaaaabdfaab18) REQ(ACK) NO SDP +# uas >> O> [::1]:45189 RSP(INVITE,200) SDP: audio=[::1]:10454/2 +# I< HASH(0xaaaae3d0ed98) REQ(ACK) NO SDP # call established # << -# uas >> I< HASH(0xaaaabdf957d8) REQ(BYE) NO SDP -# << -# uas >> O> [::1]:43625 RSP(BYE,200) NO SDP -# << -# uas >> call cleaned up -# << -# uas >> received 100/100 packets +# uas >> I< HASH(0xaaaae354b680) REQ(BYE) NO SDP +# O> [::1]:45189 RSP(BYE,200) NO SDP +# call cleaned up +# received 100/100 packets # RTP ok # END # << ok 250 - [uas] RTP ok -# uac >> O> [::1]:53581 REQ(BYE) NO SDP -# << -# uac >> I< HASH(0xaaaabe135b58) RSP(BYE,200) NO SDP -# << -# uac >> END +# uac >> I< HASH(0xaaaae3e90678) RSP(BYE,200) NO SDP +# END # << ok 251 - [uac] END ok 252 - [uas] END # ------- test with family ip4 transport tls -# UAS on 127.0.0.1:54513 -# UAC on 127.0.0.1:48995 -# PROXY on 127.0.0.1:37227 127.0.0.1:48321 +# UAS on 127.0.0.1:58535 +# UAC on 127.0.0.1:47681 +# PROXY on 127.0.0.1:43025 127.0.0.1:50925 # proxy >> OK +# ready # << ok 253 - [proxy] OK # uas >> OK +# ready # << ok 254 - [uas] OK -# proxy >> ready -# << ok 255 - [proxy] ready -# uas >> ready -# << ok 256 - [uas] ready # uac >> OK +# ready # << ok 257 - [uac] OK -# uac >> ready -# << ok 258 - [uac] ready -# uac >> O> 127.0.0.1:37227 REQ(INVITE) SDP: audio=127.0.0.1:3800/2 +# uac >> O> 127.0.0.1:43025 REQ(INVITE) SDP: audio=127.0.0.1:3712/2 # << ok 259 - [uac] (?^:O>.*REQ\(INVITE\) SDP: audio=\S+) -# proxy >> I< HASH(0xaaaabe2fb850) REQ(INVITE) SDP: audio=127.0.0.1:3800/2 +# proxy >> I< HASH(0xaaaae405f5e0) REQ(INVITE) SDP: audio=127.0.0.1:3712/2 # << ok 260 - [proxy] (?^:I<.*REQ\(INVITE\) SDP: audio=\S+) -# proxy >> O> 127.0.0.1:54513 REQ(INVITE) SDP: audio=127.0.0.1:3800/2 +# proxy >> O> 127.0.0.1:58535 REQ(INVITE) SDP: audio=127.0.0.1:3712/2 # << ok 261 - [proxy] (?^:O>.*REQ\(INVITE\) SDP: audio=\S+) -# uas >> I< HASH(0xaaaabe2fe6f0) REQ(INVITE) SDP: audio=127.0.0.1:3800/2 -# << -ok 262 - [uas] (?^:I<.*REQ\(INVITE\) SDP: audio=\S+) -ok 263 - outgoing on UAC must be the same as incoming on proxy -ok 264 - outgoing on proxy must be the same as incoming on UAS -ok 265 - SDP must pass unchanged to UAS -# uas >> O> 127.0.0.1:35995 RSP(INVITE,100) NO SDP -# << -# uas >> call created -# << -ok 266 - [uas] call created -# uas >> INVITE you.uas@example.com SIP/2.0 -# Via: SIP/2.0/TLS 127.0.0.1:48321;branch=z9hG4bKc9a7d6ab757d1e27bda7badb71f7801b8a89c1425dbb28bbef7beea67dedff -# Record-route: -# Via: SIP/2.0/TLS 127.0.0.1:37227;branch=z9hG4bK51156c8352cb06e9e1f67c1bce7f9f588a89c1425dbb28b4a2947ecca3bc40 -# Record-route: +# uas >> I< HASH(0xaaaae40623b0) REQ(INVITE) SDP: audio=127.0.0.1:3712/2 +# O> 127.0.0.1:43187 RSP(INVITE,100) NO SDP +# call created +# INVITE you.uas@example.com SIP/2.0 +# Via: SIP/2.0/TLS 127.0.0.1:50925;branch=z9hG4bK6be3c04e7a32a9fbd639b5fbe4d5cd59979645212dd6af4358e421aa9ddc27 +# Record-route: +# Via: SIP/2.0/TLS 127.0.0.1:43025;branch=z9hG4bK5aaa44c0550d4945c17549b2b474ce7f979645212dd6af456c34afe46e32bd +# Record-route: # Supported: # Allow: INVITE, ACK, OPTIONS, CANCEL, BYE -# Via: SIP/2.0/TLS 127.0.0.1:48995;branch=z9hG4bK1c2273c710d6d86b15ce7fb9a73749d78a89c1425dbb28b51cfabf278d9155 -# Call-id: 2ae10e7206b5827edffa215db603b510 +# Via: SIP/2.0/TLS 127.0.0.1:47681;branch=z9hG4bKfd7f51030868799cc0942b8805cf446d979645212dd6af4f23d65c2aeaf437 +# Call-id: c17534021a2db188e8a9866359d14bfc # Cseq: 1 INVITE -# From: me.uac@example.com;tag=22f10e7bd00612629405f2f56583ba88 +# From: me.uac@example.com;tag=e49c0f6f9ea9e4a8d66ec760a2cfc508 # Content-type: application/sdp # Content-length: 175 # Max-forwards: 69 -# Contact: sips:b63EHIEL5R2CZDNC2GFZWS3JCSO37GWTI42ROD5LKI2NATI57H2ZSRKI@127.0.0.1:48321 -# To: you.uas@example.com;tag=a6268d4b38c2251c8766122e4bc7d31e +# Contact: sips:bMFFLBTSQRAMNPXZ7IOWREPXNWFSIAC3CQYBNESBEQ7HAHSNUYUPZU6I@127.0.0.1:50925 +# To: you.uas@example.com;tag=8e24610f82f8667b61f3563a5b1d06dc # # v=0 -# o=anonymous 1715680826 1715680826 IN IP4 127.0.0.1 +# o=anonymous 1750091456 1750091456 IN IP4 127.0.0.1 # s=session # c=IN IP4 127.0.0.1 # t=0 0 -# m=audio 3800 RTP/AVP 0 101 +# m=audio 3712 RTP/AVP 0 101 # a=rtpmap:101 telephone-event/8000 # a=fmtp:101 0-16 # << -ok 267 - [uas] (?^i:via\:\ SIP\/2\.0\/tls\ 127\.0\.0\.1\:48321\;) -ok 268 - [uas] (?^i:via\:\ SIP\/2\.0\/tls\ 127\.0\.0\.1\:48995\;) -# uac >> I< HASH(0xaaaabe537f38) RSP(INVITE,100) NO SDP -# << -# uac >> I< HASH(0xaaaabe442020) RSP(INVITE,200) SDP: audio=127.0.0.1:7592/2 -# << -# uac >> O> 127.0.0.1:37227 REQ(ACK) NO SDP -# << -# uac >> call established +ok 262 - [uas] (?^:I<.*REQ\(INVITE\) SDP: audio=\S+) +ok 263 - outgoing on UAC must be the same as incoming on proxy +ok 264 - outgoing on proxy must be the same as incoming on UAS +ok 265 - SDP must pass unchanged to UAS +ok 266 - [uas] call created +ok 267 - [uas] (?^i:via\:\ SIP\/2\.0\/tls\ 127\.0\.0\.1\:50925\;) +ok 268 - [uas] (?^i:via\:\ SIP\/2\.0\/tls\ 127\.0\.0\.1\:47681\;) +# uac >> I< HASH(0xaaaae4299b58) RSP(INVITE,100) NO SDP +# I< HASH(0xaaaae35bac88) RSP(INVITE,200) SDP: audio=127.0.0.1:9206/2 +# O> 127.0.0.1:43025 REQ(ACK) NO SDP +# call established # << # uac >> RTP done +# O> 127.0.0.1:43025 REQ(BYE) NO SDP # << ok 269 - [uac] RTP done -# uas >> O> 127.0.0.1:35995 RSP(INVITE,200) SDP: audio=127.0.0.1:7592/2 -# I< HASH(0xaaaabe2fe6d8) REQ(ACK) NO SDP +# uas >> O> 127.0.0.1:43187 RSP(INVITE,200) SDP: audio=127.0.0.1:9206/2 +# I< HASH(0xaaaae40622d8) REQ(ACK) NO SDP # call established -# << -# uas >> I< HASH(0xaaaabe2fdcb8) REQ(BYE) NO SDP -# << -# uas >> O> 127.0.0.1:35995 RSP(BYE,200) NO SDP +# I< HASH(0xaaaae354b680) REQ(BYE) NO SDP +# O> 127.0.0.1:43187 RSP(BYE,200) NO SDP # << # uas >> call cleaned up -# << -# uas >> received 100/100 packets +# received 100/100 packets # RTP ok # END # << ok 270 - [uas] RTP ok -# uac >> O> 127.0.0.1:37227 REQ(BYE) NO SDP -# << -# uac >> I< HASH(0xaaaabe43c9a8) RSP(BYE,200) NO SDP -# << -# uac >> END +# uac >> I< HASH(0xaaaae41a32d0) RSP(BYE,200) NO SDP +# END # << ok 271 - [uac] END ok 272 - [uas] END # proxy >> OK +# ready # << ok 273 - [proxy] OK # uas >> OK +# ready # << ok 274 - [uas] OK -# proxy >> ready -# << ok 275 - [proxy] ready -# uas >> ready -# << ok 276 - [uas] ready # uac >> OK +# ready # << ok 277 - [uac] OK -# uac >> ready -# << ok 278 - [uac] ready -# uac >> O> 127.0.0.1:37227 REQ(INVITE) SDP: audio=127.0.0.1:3800/2 +# uac >> O> 127.0.0.1:43025 REQ(INVITE) SDP: audio=127.0.0.1:3712/2 # << ok 279 - [uac] (?^:O>.*REQ\(INVITE\) SDP: audio=\S+) -# proxy >> I< HASH(0xaaaabe2ffb20) REQ(INVITE) SDP: audio=127.0.0.1:3800/2 +# proxy >> I< HASH(0xaaaae4064b00) REQ(INVITE) SDP: audio=127.0.0.1:3712/2 # << ok 280 - [proxy] (?^:I<.*REQ\(INVITE\) SDP: audio=\S+) -# proxy >> O> 127.0.0.1:54513 REQ(INVITE) SDP: audio=127.0.0.1:4250/2 +# proxy >> O> 127.0.0.1:58535 REQ(INVITE) SDP: audio=127.0.0.1:10110/2 # << ok 281 - [proxy] (?^:O>.*REQ\(INVITE\) SDP: audio=\S+) -# uas >> I< HASH(0xaaaabe302ed8) REQ(INVITE) SDP: audio=127.0.0.1:4250/2 -# << -ok 282 - [uas] (?^:I<.*REQ\(INVITE\) SDP: audio=\S+) -ok 283 - outgoing on UAC must be the same as incoming on proxy -ok 284 - outgoing on proxy must be the same as incoming on UAS -ok 285 - allocated addr:port must be different (127.0.0.1:3800|127.0.0.1:4250) -ok 286 - ranges must stay the same -# uas >> O> 127.0.0.1:44265 RSP(INVITE,100) NO SDP -# << -# uas >> call created -# << -ok 287 - [uas] call created -# uas >> INVITE you.uas@example.com SIP/2.0 -# Via: SIP/2.0/TLS 127.0.0.1:48321;branch=z9hG4bKc9a7d6ab757d1e27bda7badb71f7801b4c9e5ddde5f7215845b50b4a71b585 -# Record-route: -# Via: SIP/2.0/TLS 127.0.0.1:37227;branch=z9hG4bK51156c8352cb06e9e1f67c1bce7f9f584c9e5ddde5f72159986a97112f0ff6 -# Record-route: +# uas >> I< HASH(0xaaaae40607c8) REQ(INVITE) SDP: audio=127.0.0.1:10110/2 +# O> 127.0.0.1:42547 RSP(INVITE,100) NO SDP +# call created +# INVITE you.uas@example.com SIP/2.0 +# Via: SIP/2.0/TLS 127.0.0.1:50925;branch=z9hG4bK6be3c04e7a32a9fbd639b5fbe4d5cd593adbac81f7c1a3adf6916ee6c7f1d3 +# Record-route: +# Via: SIP/2.0/TLS 127.0.0.1:43025;branch=z9hG4bK5aaa44c0550d4945c17549b2b474ce7f3adbac81f7c1a3a2467de5d1f469a0 +# Record-route: # Supported: # Allow: INVITE, ACK, OPTIONS, CANCEL, BYE -# Via: SIP/2.0/TLS 127.0.0.1:48995;branch=z9hG4bK1c2273c710d6d86b15ce7fb9a73749d74c9e5ddde5f7215332f5267a9eec76 -# Call-id: 4ce2c0cd7306ce3a134b81c87b2252ce +# Via: SIP/2.0/TLS 127.0.0.1:47681;branch=z9hG4bKfd7f51030868799cc0942b8805cf446d3adbac81f7c1a3a7051379c9cdc4c7 +# Call-id: 69971314550862d5a7b5e1d5d9561563 # Cseq: 1 INVITE -# From: me.uac@example.com;tag=50f03dd3404e543cad9edd43ab29c487 +# From: me.uac@example.com;tag=6a05e7f1bb4e8abb7712ff126b9bf20e # Content-type: application/sdp -# Content-length: 175 # Max-forwards: 69 -# Contact: sips:b63EHIEL5R2CZDNC2GFZWS3JCSO37GWTI42ROD5LKI2NATI57H2ZSRKI@127.0.0.1:48321 -# To: you.uas@example.com;tag=a7d6f7d595671049cecbd932b222ff22 +# Contact: sips:bMFFLBTSQRAMNPXZ7IOWREPXNWFSIAC3CQYBNESBEQ7HAHSNUYUPZU6I@127.0.0.1:50925 +# Content-length: 176 +# To: you.uas@example.com;tag=a34acd6f7bd4cb85e719692159bb1a4c # # v=0 -# o=anonymous 1715680828 1715680828 IN IP4 127.0.0.1 +# o=anonymous 1750091458 1750091458 IN IP4 127.0.0.1 # s=session # c=IN IP4 127.0.0.1 # t=0 0 -# m=audio 4250 RTP/AVP 0 101 +# m=audio 10110 RTP/AVP 0 101 # a=rtpmap:101 telephone-event/8000 # a=fmtp:101 0-16 # << -ok 288 - [uas] (?^i:via\:\ SIP\/2\.0\/tls\ 127\.0\.0\.1\:48321\;) -ok 289 - [uas] (?^i:via\:\ SIP\/2\.0\/tls\ 127\.0\.0\.1\:48995\;) -# uac >> I< HASH(0xaaaabe4a0690) RSP(INVITE,100) NO SDP -# << -# uac >> I< HASH(0xaaaabe456bc8) RSP(INVITE,200) SDP: audio=127.0.0.1:7874/2 -# << -# uac >> O> 127.0.0.1:37227 REQ(ACK) NO SDP -# << -# uac >> call established +ok 282 - [uas] (?^:I<.*REQ\(INVITE\) SDP: audio=\S+) +ok 283 - outgoing on UAC must be the same as incoming on proxy +ok 284 - outgoing on proxy must be the same as incoming on UAS +ok 285 - allocated addr:port must be different (127.0.0.1:3712|127.0.0.1:10110) +ok 286 - ranges must stay the same +ok 287 - [uas] call created +ok 288 - [uas] (?^i:via\:\ SIP\/2\.0\/tls\ 127\.0\.0\.1\:50925\;) +ok 289 - [uas] (?^i:via\:\ SIP\/2\.0\/tls\ 127\.0\.0\.1\:47681\;) +# uac >> I< HASH(0xaaaae4202150) RSP(INVITE,100) NO SDP +# I< HASH(0xaaaae35bac88) RSP(INVITE,200) SDP: audio=127.0.0.1:9604/2 +# O> 127.0.0.1:43025 REQ(ACK) NO SDP +# call established # << # uac >> RTP done +# O> 127.0.0.1:43025 REQ(BYE) NO SDP # << ok 290 - [uac] RTP done -# uas >> O> 127.0.0.1:44265 RSP(INVITE,200) SDP: audio=127.0.0.1:7592/2 -# I< HASH(0xaaaabe302ec0) REQ(ACK) NO SDP +# uas >> O> 127.0.0.1:42547 RSP(INVITE,200) SDP: audio=127.0.0.1:9206/2 +# I< HASH(0xaaaae4060750) REQ(ACK) NO SDP # call established # << -# uas >> I< HASH(0xaaaabe2f6d68) REQ(BYE) NO SDP -# << -# uas >> O> 127.0.0.1:44265 RSP(BYE,200) NO SDP -# << -# uas >> call cleaned up +# uas >> I< HASH(0xaaaae354b680) REQ(BYE) NO SDP +# O> 127.0.0.1:42547 RSP(BYE,200) NO SDP +# call cleaned up # << # uas >> received 100/100 packets # RTP ok # END # << ok 291 - [uas] RTP ok -# uac >> O> 127.0.0.1:37227 REQ(BYE) NO SDP -# << -# uac >> I< HASH(0xaaaabe4535e0) RSP(BYE,200) NO SDP -# << -# uac >> END +# uac >> I< HASH(0xaaaae41b5de0) RSP(BYE,200) NO SDP +# END # << ok 292 - [uac] END ok 293 - [uas] END @@ -2070,308 +1923,266 @@ # << ok 294 - [nathelper] OK # proxy >> OK +# ready # << ok 295 - [proxy] OK # uas >> OK +# ready # << ok 296 - [uas] OK -# proxy >> ready -# << ok 297 - [proxy] ready -# uas >> ready -# << ok 298 - [uas] ready # uac >> OK +# ready # << ok 299 - [uac] OK -# uac >> ready -# << ok 300 - [uac] ready -# uac >> O> 127.0.0.1:37227 REQ(INVITE) SDP: audio=127.0.0.1:3800/2 +# uac >> O> 127.0.0.1:43025 REQ(INVITE) SDP: audio=127.0.0.1:3712/2 # << ok 301 - [uac] (?^:O>.*REQ\(INVITE\) SDP: audio=\S+) -# proxy >> I< HASH(0xaaaabe305f90) REQ(INVITE) SDP: audio=127.0.0.1:3800/2 +# proxy >> I< HASH(0xaaaae4064910) REQ(INVITE) SDP: audio=127.0.0.1:3712/2 # << ok 302 - [proxy] (?^:I<.*REQ\(INVITE\) SDP: audio=\S+) -# proxy >> O> 127.0.0.1:54513 REQ(INVITE) SDP: audio=127.0.0.1:7592/2 +# proxy >> O> 127.0.0.1:58535 REQ(INVITE) SDP: audio=127.0.0.1:9206/2 # << ok 303 - [proxy] (?^:O>.*REQ\(INVITE\) SDP: audio=\S+) -# uas >> I< HASH(0xaaaabe302028) REQ(INVITE) SDP: audio=127.0.0.1:7592/2 -# << -ok 304 - [uas] (?^:I<.*REQ\(INVITE\) SDP: audio=\S+) -ok 305 - outgoing on UAC must be the same as incoming on proxy -ok 306 - outgoing on proxy must be the same as incoming on UAS -ok 307 - allocated addr:port must be different (127.0.0.1:3800|127.0.0.1:7592) -ok 308 - ranges must stay the same -# uas >> O> 127.0.0.1:35045 RSP(INVITE,100) NO SDP -# << -# uas >> call created -# << -ok 309 - [uas] call created -# uas >> INVITE you.uas@example.com SIP/2.0 -# Via: SIP/2.0/TLS 127.0.0.1:48321;branch=z9hG4bKc9a7d6ab757d1e27bda7badb71f7801b3fa2aca56969354cf0666e1ffcbfd9 -# Record-route: -# Via: SIP/2.0/TLS 127.0.0.1:37227;branch=z9hG4bK51156c8352cb06e9e1f67c1bce7f9f583fa2aca56969354fbab7ac50165b7d -# Record-route: +# uas >> I< HASH(0xaaaae4065dc8) REQ(INVITE) SDP: audio=127.0.0.1:9206/2 +# O> 127.0.0.1:40071 RSP(INVITE,100) NO SDP +# call created +# INVITE you.uas@example.com SIP/2.0 +# Via: SIP/2.0/TLS 127.0.0.1:50925;branch=z9hG4bK6be3c04e7a32a9fbd639b5fbe4d5cd593e404fe33fe942daa78bc8db6708db +# Record-route: +# Via: SIP/2.0/TLS 127.0.0.1:43025;branch=z9hG4bK5aaa44c0550d4945c17549b2b474ce7f3e404fe33fe942d41d5c63ed888e2b +# Record-route: # Supported: # Allow: INVITE, ACK, OPTIONS, CANCEL, BYE -# Via: SIP/2.0/TLS 127.0.0.1:48995;branch=z9hG4bK1c2273c710d6d86b15ce7fb9a73749d73fa2aca5696935400a85af80d102b0 -# Call-id: bd0cc87898b0a9a3194d13dea0320f66 +# Via: SIP/2.0/TLS 127.0.0.1:47681;branch=z9hG4bKfd7f51030868799cc0942b8805cf446d3e404fe33fe942d0068e236de1fc82 +# Call-id: a334f4005cd09d08359a18b03aa3ac69 # Cseq: 1 INVITE -# From: me.uac@example.com;tag=3a1f01f7d23a0e35be0c4e9290cd7b28 +# From: me.uac@example.com;tag=f470f952e5e468776d8359a8287af2dd # Content-type: application/sdp # Content-length: 175 # Max-forwards: 69 -# Contact: sips:b63EHIEL5R2CZDNC2GFZWS3JCSO37GWTI42ROD5LKI2NATI57H2ZSRKI@127.0.0.1:48321 -# To: you.uas@example.com;tag=b18b8516ce214a55320b8f801b8b7aad +# Contact: sips:bMFFLBTSQRAMNPXZ7IOWREPXNWFSIAC3CQYBNESBEQ7HAHSNUYUPZU6I@127.0.0.1:50925 +# To: you.uas@example.com;tag=1f51167038f622da5fa37f0962d655a4 # # v=0 -# o=anonymous 1715680830 1715680830 IN IP4 127.0.0.1 +# o=anonymous 1750091460 1750091460 IN IP4 127.0.0.1 # s=session # c=IN IP4 127.0.0.1 # t=0 0 -# m=audio 7592 RTP/AVP 0 101 +# m=audio 9206 RTP/AVP 0 101 # a=rtpmap:101 telephone-event/8000 # a=fmtp:101 0-16 # << -ok 310 - [uas] (?^i:via\:\ SIP\/2\.0\/tls\ 127\.0\.0\.1\:48321\;) -ok 311 - [uas] (?^i:via\:\ SIP\/2\.0\/tls\ 127\.0\.0\.1\:48995\;) -# uac >> I< HASH(0xaaaabe4a34e0) RSP(INVITE,100) NO SDP -# << -# uac >> I< HASH(0xaaaabe45c9e8) RSP(INVITE,200) SDP: audio=127.0.0.1:11418/2 -# << -# uac >> O> 127.0.0.1:37227 REQ(ACK) NO SDP +ok 304 - [uas] (?^:I<.*REQ\(INVITE\) SDP: audio=\S+) +ok 305 - outgoing on UAC must be the same as incoming on proxy +ok 306 - outgoing on proxy must be the same as incoming on UAS +ok 307 - allocated addr:port must be different (127.0.0.1:3712|127.0.0.1:9206) +ok 308 - ranges must stay the same +ok 309 - [uas] call created +ok 310 - [uas] (?^i:via\:\ SIP\/2\.0\/tls\ 127\.0\.0\.1\:50925\;) +ok 311 - [uas] (?^i:via\:\ SIP\/2\.0\/tls\ 127\.0\.0\.1\:47681\;) +# uac >> I< HASH(0xaaaae41c5ba0) RSP(INVITE,100) NO SDP +# I< HASH(0xaaaae35bac88) RSP(INVITE,200) SDP: audio=127.0.0.1:3134/2 # << -# uac >> call established +# uac >> O> 127.0.0.1:43025 REQ(ACK) NO SDP +# call established # << # uac >> RTP done +# O> 127.0.0.1:43025 REQ(BYE) NO SDP # << ok 312 - [uac] RTP done -# uas >> O> 127.0.0.1:35045 RSP(INVITE,200) SDP: audio=127.0.0.1:2242/2 -# I< HASH(0xaaaabe302010) REQ(ACK) NO SDP +# uas >> O> 127.0.0.1:40071 RSP(INVITE,200) SDP: audio=127.0.0.1:7646/2 +# I< HASH(0xaaaae4065d20) REQ(ACK) NO SDP # call established # << -# uas >> I< HASH(0xaaaabe304f10) REQ(BYE) NO SDP -# << -# uas >> O> 127.0.0.1:35045 RSP(BYE,200) NO SDP -# << -# uas >> call cleaned up -# << -# uas >> received 100/100 packets +# uas >> I< HASH(0xaaaae354b680) REQ(BYE) NO SDP +# O> 127.0.0.1:40071 RSP(BYE,200) NO SDP +# call cleaned up +# received 100/100 packets # RTP ok # END # << ok 313 - [uas] RTP ok -# uac >> O> 127.0.0.1:37227 REQ(BYE) NO SDP -# << -# uac >> I< HASH(0xaaaabe4582b0) RSP(BYE,200) NO SDP -# << -# uac >> END +# uac >> I< HASH(0xaaaae405c228) RSP(BYE,200) NO SDP +# END # << ok 314 - [uac] END ok 315 - [uas] END # ------- test with family ip6 transport tls -# UAS on [::1]:37021 -# UAC on [::1]:54621 -# PROXY on [::1]:49891 [::1]:58991 +# UAS on [::1]:46197 +# UAC on [::1]:56255 +# PROXY on [::1]:59347 [::1]:36351 # proxy >> OK +# ready # << ok 316 - [proxy] OK # uas >> OK +# ready # << ok 317 - [uas] OK -# proxy >> ready -# << ok 318 - [proxy] ready -# uas >> ready -# << ok 319 - [uas] ready # uac >> OK +# ready # << ok 320 - [uac] OK -# uac >> ready -# << ok 321 - [uac] ready -# uac >> O> [::1]:49891 REQ(INVITE) SDP: audio=[::1]:3800/2 +# uac >> O> [::1]:59347 REQ(INVITE) SDP: audio=[::1]:3712/2 # << ok 322 - [uac] (?^:O>.*REQ\(INVITE\) SDP: audio=\S+) -# proxy >> I< HASH(0xaaaabe300798) REQ(INVITE) SDP: audio=[::1]:3800/2 +# proxy >> I< HASH(0xaaaae40642b8) REQ(INVITE) SDP: audio=[::1]:3712/2 +# O> [::1]:46197 REQ(INVITE) SDP: audio=[::1]:3712/2 # << ok 323 - [proxy] (?^:I<.*REQ\(INVITE\) SDP: audio=\S+) -# proxy >> O> [::1]:37021 REQ(INVITE) SDP: audio=[::1]:3800/2 -# << ok 324 - [proxy] (?^:O>.*REQ\(INVITE\) SDP: audio=\S+) -# uas >> I< HASH(0xaaaabe309d30) REQ(INVITE) SDP: audio=[::1]:3800/2 -# << -ok 325 - [uas] (?^:I<.*REQ\(INVITE\) SDP: audio=\S+) -ok 326 - outgoing on UAC must be the same as incoming on proxy -ok 327 - outgoing on proxy must be the same as incoming on UAS -ok 328 - SDP must pass unchanged to UAS -# uas >> O> [::1]:36659 RSP(INVITE,100) NO SDP -# << -# uas >> call created -# << -ok 329 - [uas] call created -# uas >> INVITE you.uas@example.com SIP/2.0 -# Via: SIP/2.0/TLS [::1]:58991;branch=z9hG4bKe5215e6e81e6ada048c0b7a3ddfb02b7782881f945f108b1226fa948dc77b8 -# Record-route: -# Via: SIP/2.0/TLS [::1]:49891;branch=z9hG4bK6759bb68c177a959653daa39e2e7ca25782881f945f108b68e2b5b9e764ba4 -# Record-route: +# uas >> I< HASH(0xaaaae406dda0) REQ(INVITE) SDP: audio=[::1]:3712/2 +# O> [::1]:37097 RSP(INVITE,100) NO SDP +# call created +# INVITE you.uas@example.com SIP/2.0 +# Via: SIP/2.0/TLS [::1]:36351;branch=z9hG4bKe377c6fdd6b48b20532d9a7bdd482f10626ca0369fd24adf8f110a4aa5c9b1 +# Record-route: +# Via: SIP/2.0/TLS [::1]:59347;branch=z9hG4bK21bf9f63b196528c52da95f597f73620626ca0369fd24ad966ffc6c140bc64 +# Record-route: # Supported: # Allow: INVITE, ACK, OPTIONS, CANCEL, BYE -# Via: SIP/2.0/TLS [::1]:54621;branch=z9hG4bK78043ffc3373cd5186b87d033291b74a782881f945f108b1724bfe9165f40b -# Call-id: 78ac5ec736e6d94ae1f5cea70857ed96 +# Via: SIP/2.0/TLS [::1]:56255;branch=z9hG4bKf4569f00b7f8141a1dc465431a9bdbba626ca0369fd24ada0dd1cae4b571fd +# Call-id: 2c394c9334432ee92bd811dc1a0b936d # Cseq: 1 INVITE -# From: me.uac@example.com;tag=e064ed750a6b2f56251bd65a65251b80 +# From: me.uac@example.com;tag=83bd33d73bc8ae42a910e37b21aa66d7 # Content-type: application/sdp # Content-length: 163 # Max-forwards: 69 -# Contact: sips:b63EHIEL5R2CZDNC2GFZWS3JC7G774RIF6KT7X4TCIMEYTEKK@[::1]:58991 -# To: you.uas@example.com;tag=2a32f37e7773748d9b18a8d937e7ec87 +# Contact: sips:bMFFLBTSQRAMNPXZ7IOWREPXN3NWI2FAPSID4USZLQZZOI3T2@[::1]:36351 +# To: you.uas@example.com;tag=e6159a77c3c232a4bede4526f59d8c5e # # v=0 -# o=anonymous 1715680832 1715680832 IN IP6 ::1 +# o=anonymous 1750091463 1750091463 IN IP6 ::1 # s=session # c=IN IP6 ::1 # t=0 0 -# m=audio 3800 RTP/AVP 0 101 +# m=audio 3712 RTP/AVP 0 101 # a=rtpmap:101 telephone-event/8000 # a=fmtp:101 0-16 # << -ok 330 - [uas] (?^i:via\:\ SIP\/2\.0\/tls\ \[\:\:1\]\:58991\;) -ok 331 - [uas] (?^i:via\:\ SIP\/2\.0\/tls\ \[\:\:1\]\:54621\;) -# uac >> I< HASH(0xaaaabe4b1ad0) RSP(INVITE,100) NO SDP -# << -# uac >> I< HASH(0xaaaabe49ce68) RSP(INVITE,200) SDP: audio=[::1]:7592/2 -# << -# uac >> O> [::1]:49891 REQ(ACK) NO SDP -# << -# uac >> call established +ok 325 - [uas] (?^:I<.*REQ\(INVITE\) SDP: audio=\S+) +ok 326 - outgoing on UAC must be the same as incoming on proxy +ok 327 - outgoing on proxy must be the same as incoming on UAS +ok 328 - SDP must pass unchanged to UAS +ok 329 - [uas] call created +ok 330 - [uas] (?^i:via\:\ SIP\/2\.0\/tls\ \[\:\:1\]\:36351\;) +ok 331 - [uas] (?^i:via\:\ SIP\/2\.0\/tls\ \[\:\:1\]\:56255\;) +# uac >> I< HASH(0xaaaae420bf80) RSP(INVITE,100) NO SDP +# I< HASH(0xaaaae35bac88) RSP(INVITE,200) SDP: audio=[::1]:9206/2 +# O> [::1]:59347 REQ(ACK) NO SDP +# call established # << # uac >> RTP done +# O> [::1]:59347 REQ(BYE) NO SDP # << ok 332 - [uac] RTP done -# uas >> O> [::1]:36659 RSP(INVITE,200) SDP: audio=[::1]:7592/2 -# I< HASH(0xaaaabe309d18) REQ(ACK) NO SDP +# uas >> O> [::1]:37097 RSP(INVITE,200) SDP: audio=[::1]:9206/2 +# I< HASH(0xaaaae406dcf8) REQ(ACK) NO SDP # call established -# << -# uas >> I< HASH(0xaaaabe2ff8c8) REQ(BYE) NO SDP -# << -# uas >> O> [::1]:36659 RSP(BYE,200) NO SDP +# I< HASH(0xaaaae354b680) REQ(BYE) NO SDP +# O> [::1]:37097 RSP(BYE,200) NO SDP # << # uas >> call cleaned up -# << -# uas >> received 100/100 packets +# received 100/100 packets # RTP ok # END # << ok 333 - [uas] RTP ok -# uac >> O> [::1]:49891 REQ(BYE) NO SDP -# << -# uac >> I< HASH(0xaaaabe4b1b48) RSP(BYE,200) NO SDP -# << -# uac >> END +# uac >> I< HASH(0xaaaae41f9560) RSP(BYE,200) NO SDP +# END # << ok 334 - [uac] END ok 335 - [uas] END # proxy >> OK +# ready # << ok 336 - [proxy] OK # uas >> OK +# ready # << ok 337 - [uas] OK -# proxy >> ready -# << ok 338 - [proxy] ready -# uas >> ready -# << ok 339 - [uas] ready # uac >> OK +# ready # << ok 340 - [uac] OK -# uac >> ready -# << ok 341 - [uac] ready -# uac >> O> [::1]:49891 REQ(INVITE) SDP: audio=[::1]:3800/2 +# uac >> O> [::1]:59347 REQ(INVITE) SDP: audio=[::1]:3712/2 # << ok 342 - [uac] (?^:O>.*REQ\(INVITE\) SDP: audio=\S+) -# proxy >> I< HASH(0xaaaabe305d40) REQ(INVITE) SDP: audio=[::1]:3800/2 +# proxy >> I< HASH(0xaaaae4067ff0) REQ(INVITE) SDP: audio=[::1]:3712/2 # << ok 343 - [proxy] (?^:I<.*REQ\(INVITE\) SDP: audio=\S+) -# proxy >> O> [::1]:37021 REQ(INVITE) SDP: audio=[::1]:4250/2 +# proxy >> O> [::1]:46197 REQ(INVITE) SDP: audio=[::1]:10110/2 # << ok 344 - [proxy] (?^:O>.*REQ\(INVITE\) SDP: audio=\S+) -# uas >> I< HASH(0xaaaabe3087a8) REQ(INVITE) SDP: audio=[::1]:4250/2 -# << -ok 345 - [uas] (?^:I<.*REQ\(INVITE\) SDP: audio=\S+) -ok 346 - outgoing on UAC must be the same as incoming on proxy -ok 347 - outgoing on proxy must be the same as incoming on UAS -ok 348 - allocated addr:port must be different ([::1]:3800|[::1]:4250) -ok 349 - ranges must stay the same -# uas >> O> [::1]:45301 RSP(INVITE,100) NO SDP -# << -# uas >> call created -# << -ok 350 - [uas] call created -# uas >> INVITE you.uas@example.com SIP/2.0 -# Via: SIP/2.0/TLS [::1]:58991;branch=z9hG4bKe5215e6e81e6ada048c0b7a3ddfb02b77109d92d7d8c6f216532a62d8d1a0e -# Record-route: -# Via: SIP/2.0/TLS [::1]:49891;branch=z9hG4bK6759bb68c177a959653daa39e2e7ca257109d92d7d8c6f277dd4a87161c230 -# Record-route: +# uas >> I< HASH(0xaaaae4080148) REQ(INVITE) SDP: audio=[::1]:10110/2 +# O> [::1]:35209 RSP(INVITE,100) NO SDP +# call created +# INVITE you.uas@example.com SIP/2.0 +# Via: SIP/2.0/TLS [::1]:36351;branch=z9hG4bKe377c6fdd6b48b20532d9a7bdd482f10c8ae8ff18fc71418f29e517733a71f +# Record-route: +# Via: SIP/2.0/TLS [::1]:59347;branch=z9hG4bK21bf9f63b196528c52da95f597f73620c8ae8ff18fc714121e0d9df8a192c4 +# Record-route: # Supported: # Allow: INVITE, ACK, OPTIONS, CANCEL, BYE -# Via: SIP/2.0/TLS [::1]:54621;branch=z9hG4bK78043ffc3373cd5186b87d033291b74a7109d92d7d8c6f2dfb83177f88ff86 -# Call-id: 89cd42d07e6884565aa6341dc220b997 +# Via: SIP/2.0/TLS [::1]:56255;branch=z9hG4bKf4569f00b7f8141a1dc465431a9bdbbac8ae8ff18fc71415b053cf8e35054e +# Call-id: 3410a375f4259963860a36a3dbdaf9b5 # Cseq: 1 INVITE -# From: me.uac@example.com;tag=f2179d4786437a5dabf8826e33394e9c +# From: me.uac@example.com;tag=33657c105cf49dfb0632dc5fcd84e58a # Content-type: application/sdp -# Content-length: 163 # Max-forwards: 69 -# Contact: sips:b63EHIEL5R2CZDNC2GFZWS3JC7G774RIF6KT7X4TCIMEYTEKK@[::1]:58991 -# To: you.uas@example.com;tag=1bc0d4c40772a47183279ac1bbf714df +# Contact: sips:bMFFLBTSQRAMNPXZ7IOWREPXN3NWI2FAPSID4USZLQZZOI3T2@[::1]:36351 +# Content-length: 164 +# To: you.uas@example.com;tag=b737bcb175775376ec49ba681dcb7298 # # v=0 -# o=anonymous 1715680835 1715680835 IN IP6 ::1 +# o=anonymous 1750091465 1750091465 IN IP6 ::1 # s=session # c=IN IP6 ::1 # t=0 0 -# m=audio 4250 RTP/AVP 0 101 +# m=audio 10110 RTP/AVP 0 101 # a=rtpmap:101 telephone-event/8000 # a=fmtp:101 0-16 # << -ok 351 - [uas] (?^i:via\:\ SIP\/2\.0\/tls\ \[\:\:1\]\:58991\;) -ok 352 - [uas] (?^i:via\:\ SIP\/2\.0\/tls\ \[\:\:1\]\:54621\;) -# uac >> I< HASH(0xaaaabe4fb308) RSP(INVITE,100) NO SDP -# << -# uac >> I< HASH(0xaaaabe4e3530) RSP(INVITE,200) SDP: audio=[::1]:7874/2 -# << -# uac >> O> [::1]:49891 REQ(ACK) NO SDP -# << -# uac >> call established +ok 345 - [uas] (?^:I<.*REQ\(INVITE\) SDP: audio=\S+) +ok 346 - outgoing on UAC must be the same as incoming on proxy +ok 347 - outgoing on proxy must be the same as incoming on UAS +ok 348 - allocated addr:port must be different ([::1]:3712|[::1]:10110) +ok 349 - ranges must stay the same +ok 350 - [uas] call created +ok 351 - [uas] (?^i:via\:\ SIP\/2\.0\/tls\ \[\:\:1\]\:36351\;) +ok 352 - [uas] (?^i:via\:\ SIP\/2\.0\/tls\ \[\:\:1\]\:56255\;) +# uac >> I< HASH(0xaaaae42696d8) RSP(INVITE,100) NO SDP +# I< HASH(0xaaaae35bac88) RSP(INVITE,200) SDP: audio=[::1]:9604/2 +# O> [::1]:59347 REQ(ACK) NO SDP +# call established # << # uac >> RTP done +# O> [::1]:59347 REQ(BYE) NO SDP # << ok 353 - [uac] RTP done -# uas >> O> [::1]:45301 RSP(INVITE,200) SDP: audio=[::1]:7592/2 -# I< HASH(0xaaaabe308700) REQ(ACK) NO SDP +# uas >> O> [::1]:35209 RSP(INVITE,200) SDP: audio=[::1]:9206/2 +# I< HASH(0xaaaae40800d0) REQ(ACK) NO SDP # call established # << -# uas >> I< HASH(0xaaaabe303dd0) REQ(BYE) NO SDP -# << -# uas >> O> [::1]:45301 RSP(BYE,200) NO SDP -# << -# uas >> call cleaned up -# << -# uas >> received 100/100 packets +# uas >> I< HASH(0xaaaae354b680) REQ(BYE) NO SDP +# O> [::1]:35209 RSP(BYE,200) NO SDP +# call cleaned up +# received 100/100 packets # RTP ok # END # << ok 354 - [uas] RTP ok -# uac >> O> [::1]:49891 REQ(BYE) NO SDP -# << -# uac >> I< HASH(0xaaaabe4e3c80) RSP(BYE,200) NO SDP -# << -# uac >> END +# uac >> I< HASH(0xaaaae4060538) RSP(BYE,200) NO SDP +# END # << ok 355 - [uac] END ok 356 - [uas] END @@ -2379,103 +2190,90 @@ # << ok 357 - [nathelper] OK # proxy >> OK +# ready # << ok 358 - [proxy] OK # uas >> OK +# ready # << ok 359 - [uas] OK -# proxy >> ready -# << ok 360 - [proxy] ready -# uas >> ready -# << ok 361 - [uas] ready # uac >> OK +# ready # << ok 362 - [uac] OK -# uac >> ready -# << ok 363 - [uac] ready -# uac >> O> [::1]:49891 REQ(INVITE) SDP: audio=[::1]:3800/2 +# uac >> O> [::1]:59347 REQ(INVITE) SDP: audio=[::1]:3712/2 # << ok 364 - [uac] (?^:O>.*REQ\(INVITE\) SDP: audio=\S+) -# proxy >> I< HASH(0xaaaabe310c98) REQ(INVITE) SDP: audio=[::1]:3800/2 +# proxy >> I< HASH(0xaaaae4074ee8) REQ(INVITE) SDP: audio=[::1]:3712/2 # << ok 365 - [proxy] (?^:I<.*REQ\(INVITE\) SDP: audio=\S+) -# proxy >> O> [::1]:37021 REQ(INVITE) SDP: audio=[::1]:7592/2 +# proxy >> O> [::1]:46197 REQ(INVITE) SDP: audio=[::1]:9206/2 # << ok 366 - [proxy] (?^:O>.*REQ\(INVITE\) SDP: audio=\S+) -# uas >> I< HASH(0xaaaabe312458) REQ(INVITE) SDP: audio=[::1]:7592/2 -# << -ok 367 - [uas] (?^:I<.*REQ\(INVITE\) SDP: audio=\S+) -ok 368 - outgoing on UAC must be the same as incoming on proxy -ok 369 - outgoing on proxy must be the same as incoming on UAS -ok 370 - allocated addr:port must be different ([::1]:3800|[::1]:7592) -ok 371 - ranges must stay the same -# uas >> O> [::1]:40473 RSP(INVITE,100) NO SDP -# << -# uas >> call created -# << -ok 372 - [uas] call created -# uas >> INVITE you.uas@example.com SIP/2.0 -# Via: SIP/2.0/TLS [::1]:58991;branch=z9hG4bKe5215e6e81e6ada048c0b7a3ddfb02b74ceb799e1016cdbb1341f3aa46331d -# Record-route: -# Via: SIP/2.0/TLS [::1]:49891;branch=z9hG4bK6759bb68c177a959653daa39e2e7ca254ceb799e1016cdb24f7326a2857c82 -# Record-route: +# uas >> I< HASH(0xaaaae4071128) REQ(INVITE) SDP: audio=[::1]:9206/2 +# O> [::1]:44731 RSP(INVITE,100) NO SDP +# call created +# INVITE you.uas@example.com SIP/2.0 +# Via: SIP/2.0/TLS [::1]:36351;branch=z9hG4bKe377c6fdd6b48b20532d9a7bdd482f10dddddbc3408a30a3420672826d3b8a +# Record-route: +# Via: SIP/2.0/TLS [::1]:59347;branch=z9hG4bK21bf9f63b196528c52da95f597f73620dddddbc3408a30a2787ea936d8a45e +# Record-route: # Supported: # Allow: INVITE, ACK, OPTIONS, CANCEL, BYE -# Via: SIP/2.0/TLS [::1]:54621;branch=z9hG4bK78043ffc3373cd5186b87d033291b74a4ceb799e1016cdb728b0ba0f4658dc -# Call-id: 678a0d1d36ccbf64abe7f464c9652634 +# Via: SIP/2.0/TLS [::1]:56255;branch=z9hG4bKf4569f00b7f8141a1dc465431a9bdbbadddddbc3408a30aa89f4ca91a96b5c +# Call-id: 7bfcbd6228e169833a63ae05716c8cb1 # Cseq: 1 INVITE -# From: me.uac@example.com;tag=45d785d0d7cab97974d925cd13f10de9 +# From: me.uac@example.com;tag=82f0967800f3d5824521decefa593705 # Content-type: application/sdp # Content-length: 163 # Max-forwards: 69 -# Contact: sips:b63EHIEL5R2CZDNC2GFZWS3JC7G774RIF6KT7X4TCIMEYTEKK@[::1]:58991 -# To: you.uas@example.com;tag=a7053757c0f2b3740bebf655a48a3344 +# Contact: sips:bMFFLBTSQRAMNPXZ7IOWREPXN3NWI2FAPSID4USZLQZZOI3T2@[::1]:36351 +# To: you.uas@example.com;tag=08a1785b0e062c208d78c19dfc4b7452 # # v=0 -# o=anonymous 1715680837 1715680837 IN IP6 ::1 +# o=anonymous 1750091467 1750091467 IN IP6 ::1 # s=session # c=IN IP6 ::1 # t=0 0 -# m=audio 7592 RTP/AVP 0 101 +# m=audio 9206 RTP/AVP 0 101 # a=rtpmap:101 telephone-event/8000 # a=fmtp:101 0-16 # << -ok 373 - [uas] (?^i:via\:\ SIP\/2\.0\/tls\ \[\:\:1\]\:58991\;) -ok 374 - [uas] (?^i:via\:\ SIP\/2\.0\/tls\ \[\:\:1\]\:54621\;) -# uac >> I< HASH(0xaaaabe5005d8) RSP(INVITE,100) NO SDP -# << -# uac >> I< HASH(0xaaaabe4ea760) RSP(INVITE,200) SDP: audio=[::1]:11418/2 -# << -# uac >> O> [::1]:49891 REQ(ACK) NO SDP +ok 367 - [uas] (?^:I<.*REQ\(INVITE\) SDP: audio=\S+) +ok 368 - outgoing on UAC must be the same as incoming on proxy +ok 369 - outgoing on proxy must be the same as incoming on UAS +ok 370 - allocated addr:port must be different ([::1]:3712|[::1]:9206) +ok 371 - ranges must stay the same +ok 372 - [uas] call created +ok 373 - [uas] (?^i:via\:\ SIP\/2\.0\/tls\ \[\:\:1\]\:36351\;) +ok 374 - [uas] (?^i:via\:\ SIP\/2\.0\/tls\ \[\:\:1\]\:56255\;) +# uac >> I< HASH(0xaaaae424c770) RSP(INVITE,100) NO SDP # << -# uac >> call established +# uac >> I< HASH(0xaaaae35bac88) RSP(INVITE,200) SDP: audio=[::1]:3134/2 +# O> [::1]:59347 REQ(ACK) NO SDP +# call established # << # uac >> RTP done +# O> [::1]:59347 REQ(BYE) NO SDP # << ok 375 - [uac] RTP done -# uas >> O> [::1]:40473 RSP(INVITE,200) SDP: audio=[::1]:2242/2 -# I< HASH(0xaaaabe312440) REQ(ACK) NO SDP +# uas >> O> [::1]:44731 RSP(INVITE,200) SDP: audio=[::1]:7646/2 +# I< HASH(0xaaaae40710b0) REQ(ACK) NO SDP # call established # << -# uas >> I< HASH(0xaaaabe30eb98) REQ(BYE) NO SDP -# << -# uas >> O> [::1]:40473 RSP(BYE,200) NO SDP -# << -# uas >> call cleaned up -# << -# uas >> received 100/100 packets +# uas >> I< HASH(0xaaaae4069778) REQ(BYE) NO SDP +# O> [::1]:44731 RSP(BYE,200) NO SDP +# call cleaned up +# received 100/100 packets # RTP ok # END # << ok 376 - [uas] RTP ok -# uac >> O> [::1]:49891 REQ(BYE) NO SDP -# << -# uac >> I< HASH(0xaaaabe4dfa70) RSP(BYE,200) NO SDP -# << -# uac >> END +# uac >> I< HASH(0xaaaae4067600) RSP(BYE,200) NO SDP +# END # << ok 377 - [uac] END ok 378 - [uas] END @@ -2484,16 +2282,14 @@ 1..102 # ------- test with family ip4 transport udp # uas >> OK +# Listening # << ok 1 - [uas] OK -# uas >> Listening -# << ok 2 - [uas] Listening # uac >> OK +# Started # << ok 3 - [uac] OK -# uac >> Started -# << ok 4 - [uac] Started # uas >> Call accepted # << @@ -2533,16 +2329,14 @@ ok 17 - [uac] BYE done # ------- test with family ip6 transport udp # uas >> OK +# Listening # << ok 18 - [uas] OK -# uas >> Listening -# << ok 19 - [uas] Listening # uac >> OK +# Started # << ok 20 - [uac] OK -# uac >> Started -# << ok 21 - [uac] Started # uas >> Call accepted # << @@ -2582,16 +2376,14 @@ ok 34 - [uac] BYE done # ------- test with family ip4 transport tcp # uas >> OK +# Listening # << ok 35 - [uas] OK -# uas >> Listening -# << ok 36 - [uas] Listening # uac >> OK +# Started # << ok 37 - [uac] OK -# uac >> Started -# << ok 38 - [uac] Started # uas >> Call accepted # << @@ -2631,16 +2423,14 @@ ok 51 - [uac] BYE done # ------- test with family ip6 transport tcp # uas >> OK +# Listening # << ok 52 - [uas] OK -# uas >> Listening -# << ok 53 - [uas] Listening # uac >> OK +# Started # << ok 54 - [uac] OK -# uac >> Started -# << ok 55 - [uac] Started # uas >> Call accepted # << @@ -2781,16 +2571,14 @@ 1..96 # ------- test with family ip4 transport udp # uas >> OK +# Listening # << ok 1 - [uas] OK -# uas >> Listening -# << ok 2 - [uas] Listening # uac >> OK +# Started # << ok 3 - [uac] OK -# uac >> Started -# << ok 4 - [uac] Started # uas >> Call accepted # << @@ -2813,31 +2601,27 @@ # << ok 11 - [uas] Start RTP # uas >> RTP#50# +# Received BYE after 0 bytes read # << ok 12 - [uas] RTP\#50\# # uac >> got rtp packet#50 # Send BYE +# BYE done # << ok 13 - [uac] got rtp packet\#50 ok 14 - [uac] Send BYE -# uas >> Received BYE after 0 bytes read -# << ok 15 - [uas] Received BYE after 0 bytes read -# uac >> BYE done -# << ok 16 - [uac] BYE done # ------- test with family ip6 transport udp # uas >> OK +# Listening # << ok 17 - [uas] OK -# uas >> Listening -# << ok 18 - [uas] Listening # uac >> OK +# Started # << ok 19 - [uac] OK -# uac >> Started -# << ok 20 - [uac] Started # uas >> Call accepted # << @@ -2860,31 +2644,27 @@ # << ok 27 - [uas] Start RTP # uas >> RTP#50# +# Received BYE after 0 bytes read # << ok 28 - [uas] RTP\#50\# # uac >> got rtp packet#50 # Send BYE +# BYE done # << ok 29 - [uac] got rtp packet\#50 ok 30 - [uac] Send BYE -# uas >> Received BYE after 0 bytes read -# << ok 31 - [uas] Received BYE after 0 bytes read -# uac >> BYE done -# << ok 32 - [uac] BYE done # ------- test with family ip4 transport tcp # uas >> OK +# Listening # << ok 33 - [uas] OK -# uas >> Listening -# << ok 34 - [uas] Listening # uac >> OK +# Started # << ok 35 - [uac] OK -# uac >> Started -# << ok 36 - [uac] Started # uas >> Call accepted # << @@ -2922,16 +2702,14 @@ ok 48 - [uac] BYE done # ------- test with family ip6 transport tcp # uas >> OK +# Listening # << ok 49 - [uas] OK -# uas >> Listening -# << ok 50 - [uas] Listening # uac >> OK +# Started # << ok 51 - [uac] OK -# uac >> Started -# << ok 52 - [uac] Started # uas >> Call accepted # << @@ -3066,16 +2844,14 @@ 1..42 # ------- test with family ip4 transport udp # registrar >> OK +# Listening # << ok 1 - [registrar] OK -# registrar >> Listening -# << ok 2 - [registrar] Listening # uac >> OK +# Started # << ok 3 - [uac] OK -# uac >> Started -# << ok 4 - [uac] Started # uac >> Registered wolf (REALM.example.com) # << @@ -3088,16 +2864,14 @@ ok 7 - [uac] Registered noauth () # ------- test with family ip6 transport udp # registrar >> OK +# Listening # << ok 8 - [registrar] OK -# registrar >> Listening -# << ok 9 - [registrar] Listening # uac >> OK +# Started # << ok 10 - [uac] OK -# uac >> Started -# << ok 11 - [uac] Started # uac >> Registered wolf (REALM.example.com) # << @@ -3110,16 +2884,14 @@ ok 14 - [uac] Registered noauth () # ------- test with family ip4 transport tcp # registrar >> OK +# Listening # << ok 15 - [registrar] OK -# registrar >> Listening -# << ok 16 - [registrar] Listening # uac >> OK +# Started # << ok 17 - [uac] OK -# uac >> Started -# << ok 18 - [uac] Started # uac >> Registered wolf (REALM.example.com) # << @@ -3132,16 +2904,14 @@ ok 21 - [uac] Registered noauth () # ------- test with family ip6 transport tcp # registrar >> OK +# Listening # << ok 22 - [registrar] OK -# registrar >> Listening -# << ok 23 - [registrar] Listening # uac >> OK +# Started # << ok 24 - [uac] OK -# uac >> Started -# << ok 25 - [uac] Started # uac >> Registered wolf (REALM.example.com) # << @@ -3357,10 +3127,9 @@ t/14_bugfix_0.51.t ...................... 1..12 # proxy >> OK +# Listening # << ok 1 - [proxy] OK -# proxy >> Listening -# << ok 2 - [proxy] Listening # uas >> OK # << @@ -3369,10 +3138,9 @@ # << ok 4 - [uas] Listening # uac >> OK +# Started # << ok 5 - [uac] OK -# uac >> Started -# << ok 6 - [uac] Started # uas >> Call accepted # Starting ReInvite @@ -3380,13 +3148,12 @@ ok 7 - [uas] Call accepted ok 8 - [uas] Starting ReInvite # uac >> Got ReInvite +# Received BYE # << ok 9 - [uac] Got ReInvite # uas >> Send BYE # << ok 10 - [uas] Send BYE -# uac >> Received BYE -# << ok 11 - [uac] Received BYE # uas >> BYE done # << @@ -3422,16 +3189,14 @@ 1..66 # ------- test with family ip4 transport udp # uas >> OK +# Listening # << ok 1 - [uas] OK -# uas >> Listening -# << ok 2 - [uas] Listening # uac >> OK +# Started # << ok 3 - [uac] OK -# uac >> Started -# << ok 4 - [uac] Started # uas >> Call accepted # << @@ -3456,16 +3221,14 @@ ok 11 - [uac] BYE done # ------- test with family ip6 transport udp # uas >> OK +# Listening # << ok 12 - [uas] OK -# uas >> Listening -# << ok 13 - [uas] Listening # uac >> OK +# Started # << ok 14 - [uac] OK -# uac >> Started -# << ok 15 - [uac] Started # uas >> Call accepted # << @@ -3490,16 +3253,14 @@ ok 22 - [uac] BYE done # ------- test with family ip4 transport tcp # uas >> OK +# Listening # << ok 23 - [uas] OK -# uas >> Listening -# << ok 24 - [uas] Listening # uac >> OK +# Started # << ok 25 - [uac] OK -# uac >> Started -# << ok 26 - [uac] Started # uas >> Call accepted # << @@ -3529,10 +3290,9 @@ ok 34 - [uas] OK ok 35 - [uas] Listening # uac >> OK +# Started # << ok 36 - [uac] OK -# uac >> Started -# << ok 37 - [uac] Started # uas >> Call accepted # << @@ -3628,16 +3388,14 @@ 1..48 # ------- test with family ip4 transport udp # registrar >> OK +# Listening # << ok 1 - [registrar] OK -# registrar >> Listening -# << ok 2 - [registrar] Listening # uac >> OK +# Started # << ok 3 - [uac] OK -# uac >> Started -# << ok 4 - [uac] Started # uac >> got 401 response # << @@ -3646,23 +3404,20 @@ # << ok 6 - [uac] Registered wolf (REALM.example.com) # uac >> Registered 007 (REALM.example.com) +# Registered noauth () # << ok 7 - [uac] Registered 007 (REALM.example.com) -# uac >> Registered noauth () -# << ok 8 - [uac] Registered noauth () # ------- test with family ip6 transport udp # registrar >> OK +# Listening # << ok 9 - [registrar] OK -# registrar >> Listening -# << ok 10 - [registrar] Listening # uac >> OK +# Started # << ok 11 - [uac] OK -# uac >> Started -# << ok 12 - [uac] Started # uac >> got 401 response # << @@ -3678,16 +3433,14 @@ ok 16 - [uac] Registered noauth () # ------- test with family ip4 transport tcp # registrar >> OK +# Listening # << ok 17 - [registrar] OK -# registrar >> Listening -# << ok 18 - [registrar] Listening # uac >> OK +# Started # << ok 19 - [uac] OK -# uac >> Started -# << ok 20 - [uac] Started # uac >> got 401 response # << @@ -3703,16 +3456,14 @@ ok 24 - [uac] Registered noauth () # ------- test with family ip6 transport tcp # registrar >> OK +# Listening # << ok 25 - [registrar] OK -# registrar >> Listening -# << ok 26 - [registrar] Listening # uac >> OK +# Started # << ok 27 - [uac] OK -# uac >> Started -# << ok 28 - [uac] Started # uac >> got 401 response # << @@ -3746,10 +3497,9 @@ # << ok 38 - [uac] Registered wolf (REALM.example.com) # uac >> Registered 007 (REALM.example.com) +# Registered noauth () # << ok 39 - [uac] Registered 007 (REALM.example.com) -# uac >> Registered noauth () -# << ok 40 - [uac] Registered noauth () # ------- test with family ip6 transport tls # registrar >> OK @@ -3777,146 +3527,146 @@ # << ok 48 - [uac] Registered noauth () ok -# UAS on 127.0.0.1:35143 -# UAC on 127.0.0.1:34196 +# UAS on 127.0.0.1:54288 +# UAC on 127.0.0.1:35559 # call created # call established # call cleaned up -# received=465 lost=0 expect ca. 467.5 packets, events='1 2 D # 3 4 B *' -# UAS on 127.0.0.1:36060 -# UAC on 127.0.0.1:47391 +# received=467 lost=0 expect ca. 467.5 packets, events='1 2 D # 3 4 B *' +# UAS on 127.0.0.1:33164 +# UAC on 127.0.0.1:38479 # call created # call established # call cleaned up -# received=465 lost=0 expect ca. 467.5 packets, events='1 2 D # 3 4 B *' -# UAS on 127.0.0.1:43460 -# UAC on 127.0.0.1:58942 +# received=466 lost=0 expect ca. 467.5 packets, events='1 2 D # 3 4 B *' +# UAS on 127.0.0.1:45494 +# UAC on 127.0.0.1:39276 # call created # call established # call cleaned up -# received=465 lost=0 expect ca. 467.5 packets, events='1 2 D # 3 4 B *' -# UAS on 127.0.0.1:34730 -# UAC on 127.0.0.1:38818 +# received=464 lost=0 expect ca. 467.5 packets, events='1 2 D # 3 4 B *' +# UAS on 127.0.0.1:60457 +# UAC on 127.0.0.1:39851 # call created # call established # call cleaned up -# received=465 lost=0 expect ca. 467.5 packets, events='1 2 D # 3 4 B *' -# UAS on [::1]:35181 -# UAC on [::1]:52404 +# received=464 lost=0 expect ca. 467.5 packets, events='1 2 D # 3 4 B *' +# UAS on [::1]:52680 +# UAC on [::1]:47216 # call created # call established # call cleaned up -# received=465 lost=0 expect ca. 467.5 packets, events='1 2 D # 3 4 B *' -# UAS on [::1]:45724 -# UAC on [::1]:40235 +# received=462 lost=0 expect ca. 467.5 packets, events='1 2 D # 3 4 B *' +# UAS on [::1]:59247 +# UAC on [::1]:51207 # call created # call established # call cleaned up # received=466 lost=0 expect ca. 467.5 packets, events='1 2 D # 3 4 B *' -# UAS on [::1]:43892 -# UAC on [::1]:46240 +# UAS on [::1]:55073 +# UAC on [::1]:34419 # call created # call established # call cleaned up -# received=466 lost=0 expect ca. 467.5 packets, events='1 2 D # 3 4 B *' -# UAS on [::1]:47399 -# UAC on [::1]:59763 +# received=464 lost=0 expect ca. 467.5 packets, events='1 2 D # 3 4 B *' +# UAS on [::1]:36812 +# UAC on [::1]:42629 # call created # call established # call cleaned up # received=465 lost=0 expect ca. 467.5 packets, events='1 2 D # 3 4 B *' -# UAS on 127.0.0.1:55763 -# UAC on 127.0.0.1:59913 +# UAS on 127.0.0.1:57109 +# UAC on 127.0.0.1:53977 # call created # call established # call cleaned up -# received=463 lost=0 expect ca. 467.5 packets, events='1 2 D # 3 4 B *' -# UAS on 127.0.0.1:38709 -# UAC on 127.0.0.1:42653 +# received=467 lost=0 expect ca. 467.5 packets, events='1 2 D # 3 4 B *' +# UAS on 127.0.0.1:38543 +# UAC on 127.0.0.1:41349 # call created # call established # call cleaned up -# received=466 lost=0 expect ca. 467.5 packets, events='1 2 D # 3 4 B *' -# UAS on 127.0.0.1:40529 -# UAC on 127.0.0.1:42785 +# received=464 lost=0 expect ca. 467.5 packets, events='1 2 D # 3 4 B *' +# UAS on 127.0.0.1:59137 +# UAC on 127.0.0.1:33801 # call created # call established # call cleaned up # received=466 lost=0 expect ca. 467.5 packets, events='1 2 D # 3 4 B *' -# UAS on 127.0.0.1:49251 -# UAC on 127.0.0.1:47019 +# UAS on 127.0.0.1:38687 +# UAC on 127.0.0.1:43343 # call created # call established # call cleaned up -# received=465 lost=0 expect ca. 467.5 packets, events='1 2 D # 3 4 B *' -# UAS on [::1]:47759 -# UAC on [::1]:42987 +# received=466 lost=0 expect ca. 467.5 packets, events='1 2 D # 3 4 B *' +# UAS on [::1]:34915 +# UAC on [::1]:39843 # call created # call established # call cleaned up -# received=466 lost=0 expect ca. 467.5 packets, events='1 2 D # 3 4 B *' -# UAS on [::1]:53479 -# UAC on [::1]:51647 +# received=467 lost=0 expect ca. 467.5 packets, events='1 2 D # 3 4 B *' +# UAS on [::1]:51059 +# UAC on [::1]:53981 # call created # call established # call cleaned up -# received=466 lost=0 expect ca. 467.5 packets, events='1 2 D # 3 4 B *' -# UAS on [::1]:42701 -# UAC on [::1]:56445 +# received=467 lost=0 expect ca. 467.5 packets, events='1 2 D # 3 4 B *' +# UAS on [::1]:49807 +# UAC on [::1]:60219 # call created # call established # call cleaned up -# received=466 lost=0 expect ca. 467.5 packets, events='1 2 D # 3 4 B *' -# UAS on [::1]:47837 -# UAC on [::1]:34147 +# received=463 lost=0 expect ca. 467.5 packets, events='1 2 D # 3 4 B *' +# UAS on [::1]:37469 +# UAC on [::1]:50657 # call created # call established # call cleaned up # received=464 lost=0 expect ca. 467.5 packets, events='1 2 D # 3 4 B *' -# UAS on 127.0.0.1:58495 -# UAC on 127.0.0.1:34255 +# UAS on 127.0.0.1:54973 +# UAC on 127.0.0.1:46123 # call created # call established # call cleaned up -# received=465 lost=0 expect ca. 467.5 packets, events='1 2 D # 3 4 B *' -# UAS on 127.0.0.1:41641 -# UAC on 127.0.0.1:52721 +# received=466 lost=0 expect ca. 467.5 packets, events='1 2 D # 3 4 B *' +# UAS on 127.0.0.1:51213 +# UAC on 127.0.0.1:60949 # call created # call established # call cleaned up # received=465 lost=0 expect ca. 467.5 packets, events='1 2 D # 3 4 B *' -# UAS on 127.0.0.1:52225 -# UAC on 127.0.0.1:56619 +# UAS on 127.0.0.1:45157 +# UAC on 127.0.0.1:36629 # call created # call established # call cleaned up -# received=466 lost=0 expect ca. 467.5 packets, events='1 2 D # 3 4 B *' -# UAS on 127.0.0.1:41005 -# UAC on 127.0.0.1:40343 +# received=467 lost=0 expect ca. 467.5 packets, events='1 2 D # 3 4 B *' +# UAS on 127.0.0.1:50067 +# UAC on 127.0.0.1:49263 # call created # call established # call cleaned up -# received=465 lost=0 expect ca. 467.5 packets, events='1 2 D # 3 4 B *' -# UAS on [::1]:57767 -# UAC on [::1]:38759 +# received=466 lost=0 expect ca. 467.5 packets, events='1 2 D # 3 4 B *' +# UAS on [::1]:41463 +# UAC on [::1]:58895 # call created # call established # call cleaned up -# received=467 lost=0 expect ca. 467.5 packets, events='1 2 D # 3 4 B *' -# UAS on [::1]:44305 -# UAC on [::1]:55625 +# received=466 lost=0 expect ca. 467.5 packets, events='1 2 D # 3 4 B *' +# UAS on [::1]:51761 +# UAC on [::1]:46165 # call created # call established # call cleaned up -# received=467 lost=0 expect ca. 467.5 packets, events='1 2 D # 3 4 B *' -# UAS on [::1]:37275 -# UAC on [::1]:38005 +# received=466 lost=0 expect ca. 467.5 packets, events='1 2 D # 3 4 B *' +# UAS on [::1]:51247 +# UAC on [::1]:52819 # call created # call established # call cleaned up -# received=465 lost=0 expect ca. 467.5 packets, events='1 2 D # 3 4 B *' -# UAS on [::1]:43287 -# UAC on [::1]:50363 +# received=466 lost=0 expect ca. 467.5 packets, events='1 2 D # 3 4 B *' +# UAS on [::1]:59339 +# UAC on [::1]:44953 # call created # call established # call cleaned up @@ -4168,60 +3918,55 @@ 1..72 # ------- test with family ip4 transport udp # uas >> OK +# Listening # << ok 1 - [uas] OK -# uas >> Listening -# << ok 2 - [uas] Listening # uac >> OK +# Started # << ok 3 - [uac] OK -# uac >> Started -# << ok 4 - [uac] Started # uas >> Call created # << ok 5 - [uas] Call created # uas >> Call established +# Start RTP # << ok 6 - [uas] Call established # uac >> Start RTP # << ok 7 - [uac] Start RTP # uac >> RTP#100# +# got rtp packet#100 +# Send BYE # << ok 8 - [uac] RTP\#100\# -# uac >> got rtp packet#100 -# << ok 9 - [uac] got rtp packet\#100 -# uac >> Send BYE -# << ok 10 - [uac] Send BYE # uac >> BYE done (1 1 0 1 -- 1 0 1 1) # << ok 11 - [uac] BYE done (1 1 0 1 -- 1 0 1 1) -# uas >> Start RTP -# RTP#100# +# uas >> RTP#100# # Call done (1 0 1 1 -- 1 1 0 1) # << ok 12 - [uas] Call done (1 0 1 1 -- 1 1 0 1) # ------- test with family ip6 transport udp # uas >> OK +# Listening # << ok 13 - [uas] OK -# uas >> Listening -# << ok 14 - [uas] Listening # uac >> OK +# Started # << ok 15 - [uac] OK -# uac >> Started -# << ok 16 - [uac] Started # uas >> Call created # << ok 17 - [uas] Call created # uas >> Call established +# Start RTP # << ok 18 - [uas] Call established # uac >> Start RTP @@ -4238,28 +3983,26 @@ # uac >> BYE done (1 1 0 1 -- 1 0 1 1) # << ok 23 - [uac] BYE done (1 1 0 1 -- 1 0 1 1) -# uas >> Start RTP -# RTP#100# +# uas >> RTP#100# # Call done (1 0 1 1 -- 1 1 0 1) # << ok 24 - [uas] Call done (1 0 1 1 -- 1 1 0 1) # ------- test with family ip4 transport tcp # uas >> OK +# Listening # << ok 25 - [uas] OK -# uas >> Listening -# << ok 26 - [uas] Listening # uac >> OK +# Started # << ok 27 - [uac] OK -# uac >> Started -# << ok 28 - [uac] Started # uas >> Call created # << ok 29 - [uas] Call created # uas >> Call established +# Start RTP # << ok 30 - [uas] Call established # uac >> Start RTP @@ -4276,28 +4019,26 @@ # uac >> BYE done (1 1 0 1 -- 1 0 1 1) # << ok 35 - [uac] BYE done (1 1 0 1 -- 1 0 1 1) -# uas >> Start RTP -# RTP#100# +# uas >> RTP#100# # Call done (1 0 1 1 -- 1 1 0 1) # << ok 36 - [uas] Call done (1 0 1 1 -- 1 1 0 1) # ------- test with family ip6 transport tcp # uas >> OK +# Listening # << ok 37 - [uas] OK -# uas >> Listening -# << ok 38 - [uas] Listening # uac >> OK +# Started # << ok 39 - [uac] OK -# uac >> Started -# << ok 40 - [uac] Started # uas >> Call created # << ok 41 - [uas] Call created # uas >> Call established +# Start RTP # << ok 42 - [uas] Call established # uac >> Start RTP @@ -4307,16 +4048,14 @@ # << ok 44 - [uac] RTP\#100\# # uac >> got rtp packet#100 +# Send BYE # << ok 45 - [uac] got rtp packet\#100 -# uac >> Send BYE -# << ok 46 - [uac] Send BYE # uac >> BYE done (1 1 0 1 -- 1 0 1 1) # << ok 47 - [uac] BYE done (1 1 0 1 -- 1 0 1 1) -# uas >> Start RTP -# RTP#100# +# uas >> RTP#100# # Call done (1 0 1 1 -- 1 1 0 1) # << ok 48 - [uas] Call done (1 0 1 1 -- 1 1 0 1) @@ -4337,6 +4076,7 @@ # << ok 53 - [uas] Call created # uas >> Call established +# Start RTP # << ok 54 - [uas] Call established # uac >> Start RTP @@ -4346,16 +4086,14 @@ # << ok 56 - [uac] RTP\#100\# # uac >> got rtp packet#100 +# Send BYE # << ok 57 - [uac] got rtp packet\#100 -# uac >> Send BYE -# << ok 58 - [uac] Send BYE # uac >> BYE done (1 1 0 1 -- 1 0 1 1) # << ok 59 - [uac] BYE done (1 1 0 1 -- 1 0 1 1) -# uas >> Start RTP -# RTP#100# +# uas >> RTP#100# # Call done (1 0 1 1 -- 1 1 0 1) # << ok 60 - [uas] Call done (1 0 1 1 -- 1 1 0 1) @@ -4376,6 +4114,7 @@ # << ok 65 - [uas] Call created # uas >> Call established +# Start RTP # << ok 66 - [uas] Call established # uac >> Start RTP @@ -4385,16 +4124,14 @@ # << ok 68 - [uac] RTP\#100\# # uac >> got rtp packet#100 +# Send BYE # << ok 69 - [uac] got rtp packet\#100 -# uac >> Send BYE -# << ok 70 - [uac] Send BYE # uac >> BYE done (1 1 0 1 -- 1 0 1 1) # << ok 71 - [uac] BYE done (1 1 0 1 -- 1 0 1 1) -# uas >> Start RTP -# RTP#100# +# uas >> RTP#100# # Call done (1 0 1 1 -- 1 1 0 1) # << ok 72 - [uas] Call done (1 0 1 1 -- 1 1 0 1) @@ -4402,291 +4139,264 @@ t/21_channel_on_hold_stateless_proxy.t .. 1..360 # ------- test with family ip4 transport udp no-nat -# UAS on 127.0.0.1:48800 -# UAC on 127.0.0.1:60231 -# PROXY on 127.0.0.1:55284 127.0.0.1:39640 +# UAS on 127.0.0.1:34846 +# UAC on 127.0.0.1:40695 +# PROXY on 127.0.0.1:47032 127.0.0.1:38409 ok 1 - no fork nathelper # proxy >> OK +# ready # << ok 2 - [proxy] OK # uas >> OK +# ready # << ok 3 - [uas] OK -# proxy >> ready -# << ok 4 - [proxy] ready -# uas >> ready -# << ok 5 - [uas] ready # uac >> OK +# ready # << ok 6 - [uac] OK -# uac >> ready -# << ok 7 - [uac] ready -# uac >> O> 127.0.0.1:55284 REQ(INVITE) SDP: audio=127.0.0.1:7868/2 audio=127.0.0.1/2 audio=127.0.0.1:9840/2 audio=127.0.0.1:11336/2 +# uac >> O> 127.0.0.1:47032 REQ(INVITE) SDP: audio=127.0.0.1:4824/2 audio=127.0.0.1/2 audio=127.0.0.1:3408/2 audio=127.0.0.1:5016/2 # << ok 8 - [uac] (?^:O>.*REQ\(INVITE\) SDP: audio=\S+) -# proxy >> I< HASH(0xaaaae0f13d30) REQ(INVITE) SDP: audio=127.0.0.1:7868/2 audio=127.0.0.1/2 audio=127.0.0.1:9840/2 audio=127.0.0.1:11336/2 +# proxy >> I< HASH(0xaaaae2021b48) REQ(INVITE) SDP: audio=127.0.0.1:4824/2 audio=127.0.0.1/2 audio=127.0.0.1:3408/2 audio=127.0.0.1:5016/2 +# O> 127.0.0.1:34846 REQ(INVITE) SDP: audio=127.0.0.1:4824/2 audio=127.0.0.1/2 audio=127.0.0.1:3408/2 audio=127.0.0.1:5016/2 # << ok 9 - [proxy] (?^:I<.*REQ\(INVITE\) SDP: audio=\S+) -# proxy >> O> 127.0.0.1:48800 REQ(INVITE) SDP: audio=127.0.0.1:7868/2 audio=127.0.0.1/2 audio=127.0.0.1:9840/2 audio=127.0.0.1:11336/2 -# << ok 10 - [proxy] (?^:O>.*REQ\(INVITE\) SDP: audio=\S+) -# uas >> I< HASH(0xaaaae0f30b18) REQ(INVITE) SDP: audio=127.0.0.1:7868/2 audio=127.0.0.1/2 audio=127.0.0.1:9840/2 audio=127.0.0.1:11336/2 -# << -ok 11 - [uas] (?^:I<.*REQ\(INVITE\) SDP: audio=\S+) -ok 12 - outgoing on UAC must be the same as incoming on proxy -ok 13 - outgoing on proxy must be the same as incoming on UAS -ok 14 - SDP must pass unchanged to UAS -ok 15 - dummy -# uas >> O> 127.0.0.1:39640 RSP(INVITE,100) NO SDP -# << -# uas >> call created -# << -ok 16 - [uas] call created -# uas >> INVITE you.uas@example.com SIP/2.0 -# Via: SIP/2.0/UDP 127.0.0.1:39640;branch=z9hG4bKe5319dd99ca382653874f6f4fa02a99070d1737b5d4bd767bdd20d1f49e52f -# Record-route: -# Via: SIP/2.0/UDP 127.0.0.1:55284;branch=z9hG4bKa0586258763702316560924d351c616670d1737b5d4bd76b077d3a82fa3bbb -# Record-route: +# uas >> I< HASH(0xaaaae202ae28) REQ(INVITE) SDP: audio=127.0.0.1:4824/2 audio=127.0.0.1/2 audio=127.0.0.1:3408/2 audio=127.0.0.1:5016/2 +# O> 127.0.0.1:38409 RSP(INVITE,100) NO SDP +# call created +# INVITE you.uas@example.com SIP/2.0 +# Via: SIP/2.0/UDP 127.0.0.1:38409;branch=z9hG4bK4a83409260f52ef86382e1ab9ec690fe6f7acc3df7910373965bfc3d029b61 +# Record-route: +# Via: SIP/2.0/UDP 127.0.0.1:47032;branch=z9hG4bKad7f5052ed5b0f467cd7688784355a1e6f7acc3df791037270a3693ebc8e2f +# Record-route: # Supported: # Allow: INVITE, ACK, OPTIONS, CANCEL, BYE -# Via: SIP/2.0/UDP 127.0.0.1:60231;branch=z9hG4bKcde6e9b99948d4362078f040bfc4b05970d1737b5d4bd76c4d38a907459fc5 -# Call-id: cc569c7115599d60f9b07a78a5e13d66 +# Via: SIP/2.0/UDP 127.0.0.1:40695;branch=z9hG4bK33ad6720482b125ac05f2e93acd9fb9c6f7acc3df79103781fbd724615afb0 +# Call-id: 00b34d94dd278c66fa482075b408aeba # Cseq: 1 INVITE -# From: me.uac@example.com;tag=e7568c7e3272b8be737c37d9aeb9356d +# From: me.uac@example.com;tag=483f79f0eb8eab0d6104ca1348cd7d27 # Content-type: application/sdp -# Content-length: 189 +# Content-length: 188 # Max-forwards: 69 -# Contact: sip:bFGOWQTGSDBERYQV6WREB4NRG7NQZNOWDJCP7JGSEMJLDJBBM5ZNFAZI@127.0.0.1:39640 -# To: you.uas@example.com;tag=431976e6e713190fee742b4ac95521d6 +# Contact: sip:bZBTRZU75ITWKH7GXY4EYHRN6EL2D2PQLFWW2NVTASJHOCJQDVDFTPTA@127.0.0.1:38409 +# To: you.uas@example.com;tag=4f49bcb93f7ddd438bc2109e983e101a # # v=0 -# o=anonymous 1715681162 1715681162 IN IP4 127.0.0.1 +# o=anonymous 1750091796 1750091796 IN IP4 127.0.0.1 # s=session # c=IN IP4 127.0.0.1 # t=0 0 -# m=audio 7868 RTP/AVP 0 +# m=audio 4824 RTP/AVP 0 # m=audio 0 RTP/AVP 0 -# m=audio 9840 RTP/AVP 0 -# m=audio 11336 RTP/AVP 0 -# << -ok 17 - [uas] (?^i:via\:\ SIP\/2\.0\/udp\ 127\.0\.0\.1\:39640\;) -ok 18 - [uas] (?^i:via\:\ SIP\/2\.0\/udp\ 127\.0\.0\.1\:60231\;) -# uac >> I< HASH(0xaaaae10bbb98) RSP(INVITE,100) NO SDP -# << -# uac >> I< HASH(0xaaaae10bb298) RSP(INVITE,200) SDP: audio=127.0.0.1:8186/2 audio=127.0.0.1:11878/2 audio=127.0.0.1/2 audio=127.0.0.1:2506/2 +# m=audio 3408 RTP/AVP 0 +# m=audio 5016 RTP/AVP 0 # << -# uac >> O> 127.0.0.1:55284 REQ(ACK) NO SDP +ok 11 - [uas] (?^:I<.*REQ\(INVITE\) SDP: audio=\S+) +ok 12 - outgoing on UAC must be the same as incoming on proxy +ok 13 - outgoing on proxy must be the same as incoming on UAS +ok 14 - SDP must pass unchanged to UAS +ok 15 - dummy +ok 16 - [uas] call created +ok 17 - [uas] (?^i:via\:\ SIP\/2\.0\/udp\ 127\.0\.0\.1\:38409\;) +ok 18 - [uas] (?^i:via\:\ SIP\/2\.0\/udp\ 127\.0\.0\.1\:40695\;) +# uac >> I< HASH(0xaaaae21c5598) RSP(INVITE,100) NO SDP # << -# uac >> Start RTP +# uac >> I< HASH(0xaaaae21c5058) RSP(INVITE,200) SDP: audio=127.0.0.1:4740/2 audio=127.0.0.1:9220/2 audio=127.0.0.1/2 audio=127.0.0.1:4708/2 +# O> 127.0.0.1:47032 REQ(ACK) NO SDP +# Start RTP # << # uac >> RTP#100# # << # uac >> got rtp packet#100 # Send BYE # << -# uac >> O> 127.0.0.1:55284 REQ(BYE) NO SDP -# << -# uac >> I< HASH(0xaaaae10b6b08) RSP(BYE,200) NO SDP +# uac >> O> 127.0.0.1:47032 REQ(BYE) NO SDP # << -# uac >> BYE done (1 1 0 1 -- 1 0 1 1) +# uac >> I< HASH(0xaaaae21c07f0) RSP(BYE,200) NO SDP +# BYE done (1 1 0 1 -- 1 0 1 1) # << ok 19 - [uac] BYE done (1 1 0 1 -- 1 0 1 1) -# uas >> O> 127.0.0.1:39640 RSP(INVITE,200) SDP: audio=127.0.0.1:8186/2 audio=127.0.0.1:11878/2 audio=127.0.0.1/2 audio=127.0.0.1:2506/2 -# I< HASH(0xaaaae10da1f8) REQ(ACK) NO SDP +# uas >> O> 127.0.0.1:38409 RSP(INVITE,200) SDP: audio=127.0.0.1:4740/2 audio=127.0.0.1:9220/2 audio=127.0.0.1/2 audio=127.0.0.1:4708/2 +# I< HASH(0xaaaae203fe58) REQ(ACK) NO SDP # call established # Start RTP # RTP#100# -# I< HASH(0xaaaae0f1c6d0) REQ(BYE) NO SDP -# O> 127.0.0.1:39640 RSP(BYE,200) NO SDP +# I< HASH(0xaaaae21ec578) REQ(BYE) NO SDP +# O> 127.0.0.1:38409 RSP(BYE,200) NO SDP # Call done (1 0 1 1 -- 1 1 0 1) # << ok 20 - [uas] Call done (1 0 1 1 -- 1 1 0 1) # ------- test with family ip4 transport udp inline-nat -# UAS on 127.0.0.1:53274 -# UAC on 127.0.0.1:34272 -# PROXY on 127.0.0.1:43147 127.0.0.1:43585 +# UAS on 127.0.0.1:60726 +# UAC on 127.0.0.1:58690 +# PROXY on 127.0.0.1:53557 127.0.0.1:52029 ok 21 - no fork nathelper # proxy >> OK +# ready # << ok 22 - [proxy] OK # uas >> OK +# ready # << ok 23 - [uas] OK -# proxy >> ready -# << ok 24 - [proxy] ready -# uas >> ready -# << ok 25 - [uas] ready # uac >> OK +# ready # << ok 26 - [uac] OK -# uac >> ready -# << ok 27 - [uac] ready -# uac >> O> 127.0.0.1:43147 REQ(INVITE) SDP: audio=127.0.0.1:3902/2 audio=127.0.0.1/2 audio=127.0.0.1:6500/2 audio=127.0.0.1:3910/2 +# uac >> O> 127.0.0.1:53557 REQ(INVITE) SDP: audio=127.0.0.1:10368/2 audio=127.0.0.1/2 audio=127.0.0.1:6098/2 audio=127.0.0.1:6922/2 # << ok 28 - [uac] (?^:O>.*REQ\(INVITE\) SDP: audio=\S+) -# proxy >> I< HASH(0xaaaae0f13648) REQ(INVITE) SDP: audio=127.0.0.1:3902/2 audio=127.0.0.1/2 audio=127.0.0.1:6500/2 audio=127.0.0.1:3910/2 +# proxy >> I< HASH(0xaaaae20223f0) REQ(INVITE) SDP: audio=127.0.0.1:10368/2 audio=127.0.0.1/2 audio=127.0.0.1:6098/2 audio=127.0.0.1:6922/2 # << ok 29 - [proxy] (?^:I<.*REQ\(INVITE\) SDP: audio=\S+) -# proxy >> O> 127.0.0.1:53274 REQ(INVITE) SDP: audio=127.0.0.1:7266/2 audio=127.0.0.1/2 audio=127.0.0.1:11026/2 audio=127.0.0.1:8572/2 +# proxy >> O> 127.0.0.1:60726 REQ(INVITE) SDP: audio=127.0.0.1:7262/2 audio=127.0.0.1/2 audio=127.0.0.1:4496/2 audio=127.0.0.1:6870/2 # << ok 30 - [proxy] (?^:O>.*REQ\(INVITE\) SDP: audio=\S+) -# uas >> I< HASH(0xaaaae0f36970) REQ(INVITE) SDP: audio=127.0.0.1:7266/2 audio=127.0.0.1/2 audio=127.0.0.1:11026/2 audio=127.0.0.1:8572/2 -# << -ok 31 - [uas] (?^:I<.*REQ\(INVITE\) SDP: audio=\S+) -ok 32 - outgoing on UAC must be the same as incoming on proxy -ok 33 - outgoing on proxy must be the same as incoming on UAS -ok 34 - allocated addr:port must be different (127.0.0.1:3902|127.0.0.1:7266) -ok 35 - ranges must stay the same -# uas >> O> 127.0.0.1:43585 RSP(INVITE,100) NO SDP -# << -# uas >> call created -# << -ok 36 - [uas] call created -# uas >> INVITE you.uas@example.com SIP/2.0 -# Via: SIP/2.0/UDP 127.0.0.1:43585;branch=z9hG4bKb23b3580761c34a30156482ce7f542e7bd9167d57e194b7f324cfe617c1486 -# Record-route: -# Via: SIP/2.0/UDP 127.0.0.1:43147;branch=z9hG4bKa2260498355b2351c8222ea4c0ea167bbd9167d57e194b7d877802a12ae512 -# Record-route: +# uas >> I< HASH(0xaaaae2031b70) REQ(INVITE) SDP: audio=127.0.0.1:7262/2 audio=127.0.0.1/2 audio=127.0.0.1:4496/2 audio=127.0.0.1:6870/2 +# O> 127.0.0.1:52029 RSP(INVITE,100) NO SDP +# call created +# INVITE you.uas@example.com SIP/2.0 +# Via: SIP/2.0/UDP 127.0.0.1:52029;branch=z9hG4bK04d6d071c7b5ab4e3cd68f9c6b7fd04bfa246e3a3b16cd3264ca3cdd304ccb +# Record-route: +# Via: SIP/2.0/UDP 127.0.0.1:53557;branch=z9hG4bK77d349455364ec60aa43820c1b02c9bbfa246e3a3b16cd334b7ccc33d660ec +# Record-route: # Supported: # Allow: INVITE, ACK, OPTIONS, CANCEL, BYE -# Via: SIP/2.0/UDP 127.0.0.1:34272;branch=z9hG4bK747143912c75cd7fe324954e9690ea46bd9167d57e194b774f974f428d5535 -# Call-id: 773558938b180f80dc553b47fbfa707b +# Via: SIP/2.0/UDP 127.0.0.1:58690;branch=z9hG4bK3e9a43f3b2657990863027d2825ec4f0fa246e3a3b16cd3bc2d981cfcfd223 +# Call-id: 0c46a1d489d19ab23f8075a1e5c8dd1c # Cseq: 1 INVITE -# From: me.uac@example.com;tag=582674c4c463a61fe7159e0781ddc4ce +# From: me.uac@example.com;tag=638b62e5388b4134142407e79616759c # Content-type: application/sdp # Max-forwards: 69 -# Contact: sip:bCSE2TLOICBW2EN44URM3R4RVVGSE7RKXHVMBF36NM7FVGEPZKIWGHZY@127.0.0.1:43585 -# Content-length: 189 -# To: you.uas@example.com;tag=2ccea744e9542e2858764e04dd6ae4a8 +# Contact: sip:bSR52SWTFEUDNZL2GWLW2NUWLTTKS5CSPKFYOJQMQG6CXVZXCSLRW2SY@127.0.0.1:52029 +# Content-length: 188 +# To: you.uas@example.com;tag=3e05f38b5c1dc5e61b8dc154c7602622 # # v=0 -# o=anonymous 1715681163 1715681163 IN IP4 127.0.0.1 +# o=anonymous 1750091797 1750091797 IN IP4 127.0.0.1 # s=session # c=IN IP4 127.0.0.1 # t=0 0 -# m=audio 7266 RTP/AVP 0 +# m=audio 7262 RTP/AVP 0 # m=audio 0 RTP/AVP 0 -# m=audio 11026 RTP/AVP 0 -# m=audio 8572 RTP/AVP 0 -# << -ok 37 - [uas] (?^i:via\:\ SIP\/2\.0\/udp\ 127\.0\.0\.1\:43585\;) -ok 38 - [uas] (?^i:via\:\ SIP\/2\.0\/udp\ 127\.0\.0\.1\:34272\;) -# uac >> I< HASH(0xaaaae10bea90) RSP(INVITE,100) NO SDP +# m=audio 4496 RTP/AVP 0 +# m=audio 6870 RTP/AVP 0 # << -# uac >> I< HASH(0xaaaae10be0d8) RSP(INVITE,200) SDP: audio=127.0.0.1:9486/2 audio=127.0.0.1:6534/2 audio=127.0.0.1/2 audio=127.0.0.1:7876/2 -# << -# uac >> O> 127.0.0.1:43147 REQ(ACK) NO SDP +ok 31 - [uas] (?^:I<.*REQ\(INVITE\) SDP: audio=\S+) +ok 32 - outgoing on UAC must be the same as incoming on proxy +ok 33 - outgoing on proxy must be the same as incoming on UAS +ok 34 - allocated addr:port must be different (127.0.0.1:10368|127.0.0.1:7262) +ok 35 - ranges must stay the same +ok 36 - [uas] call created +ok 37 - [uas] (?^i:via\:\ SIP\/2\.0\/udp\ 127\.0\.0\.1\:52029\;) +ok 38 - [uas] (?^i:via\:\ SIP\/2\.0\/udp\ 127\.0\.0\.1\:58690\;) +# uac >> I< HASH(0xaaaae21cbb00) RSP(INVITE,100) NO SDP # << -# uac >> Start RTP +# uac >> I< HASH(0xaaaae21cb650) RSP(INVITE,200) SDP: audio=127.0.0.1:11290/2 audio=127.0.0.1:9028/2 audio=127.0.0.1/2 audio=127.0.0.1:8240/2 +# O> 127.0.0.1:53557 REQ(ACK) NO SDP +# Start RTP # << # uac >> RTP#100# # << # uac >> got rtp packet#100 +# Send BYE +# O> 127.0.0.1:53557 REQ(BYE) NO SDP # << -# uac >> Send BYE -# << -# uac >> O> 127.0.0.1:43147 REQ(BYE) NO SDP -# << -# uac >> I< HASH(0xaaaae10b9e08) RSP(BYE,200) NO SDP -# << -# uac >> BYE done (1 1 0 1 -- 1 0 1 1) +# uac >> I< HASH(0xaaaae21e2370) RSP(BYE,200) NO SDP +# BYE done (1 1 0 1 -- 1 0 1 1) # << ok 39 - [uac] BYE done (1 1 0 1 -- 1 0 1 1) -# uas >> O> 127.0.0.1:43585 RSP(INVITE,200) SDP: audio=127.0.0.1:5058/2 audio=127.0.0.1:8630/2 audio=127.0.0.1/2 audio=127.0.0.1:10960/2 -# I< HASH(0xaaaae10ddbd0) REQ(ACK) NO SDP +# uas >> O> 127.0.0.1:52029 RSP(INVITE,200) SDP: audio=127.0.0.1:6540/2 audio=127.0.0.1:4296/2 audio=127.0.0.1/2 audio=127.0.0.1:3830/2 +# I< HASH(0xaaaae2046120) REQ(ACK) NO SDP # call established # Start RTP # RTP#100# -# I< HASH(0xaaaae0f22f78) REQ(BYE) NO SDP -# O> 127.0.0.1:43585 RSP(BYE,200) NO SDP +# I< HASH(0xaaaae21ef538) REQ(BYE) NO SDP +# O> 127.0.0.1:52029 RSP(BYE,200) NO SDP # Call done (1 0 1 1 -- 1 1 0 1) # << ok 40 - [uas] Call done (1 0 1 1 -- 1 1 0 1) # ------- test with family ip4 transport udp remote-nat -# UAS on 127.0.0.1:52650 -# UAC on 127.0.0.1:47458 -# PROXY on 127.0.0.1:48519 127.0.0.1:47773 +# UAS on 127.0.0.1:38975 +# UAC on 127.0.0.1:33010 +# PROXY on 127.0.0.1:44050 127.0.0.1:43605 # nathelper >> OK # << ok 41 - [nathelper] OK # proxy >> OK +# ready # << ok 42 - [proxy] OK # uas >> OK +# ready # << ok 43 - [uas] OK -# proxy >> ready -# << ok 44 - [proxy] ready -# uas >> ready -# << ok 45 - [uas] ready # uac >> OK +# ready # << ok 46 - [uac] OK -# uac >> ready -# << ok 47 - [uac] ready -# uac >> O> 127.0.0.1:48519 REQ(INVITE) SDP: audio=127.0.0.1:6594/2 audio=127.0.0.1/2 audio=127.0.0.1:7732/2 audio=127.0.0.1:9424/2 +# uac >> O> 127.0.0.1:44050 REQ(INVITE) SDP: audio=127.0.0.1:9298/2 audio=127.0.0.1/2 audio=127.0.0.1:7246/2 audio=127.0.0.1:9490/2 # << ok 48 - [uac] (?^:O>.*REQ\(INVITE\) SDP: audio=\S+) -# proxy >> I< HASH(0xaaaae0f213c0) REQ(INVITE) SDP: audio=127.0.0.1:6594/2 audio=127.0.0.1/2 audio=127.0.0.1:7732/2 audio=127.0.0.1:9424/2 +# proxy >> I< HASH(0xaaaae202e7a0) REQ(INVITE) SDP: audio=127.0.0.1:9298/2 audio=127.0.0.1/2 audio=127.0.0.1:7246/2 audio=127.0.0.1:9490/2 # << ok 49 - [proxy] (?^:I<.*REQ\(INVITE\) SDP: audio=\S+) -# proxy >> O> 127.0.0.1:52650 REQ(INVITE) SDP: audio=127.0.0.1:6956/2 audio=127.0.0.1/2 audio=127.0.0.1:6802/2 audio=127.0.0.1:10184/2 +# proxy >> O> 127.0.0.1:38975 REQ(INVITE) SDP: audio=127.0.0.1:10672/2 audio=127.0.0.1/2 audio=127.0.0.1:10456/2 audio=127.0.0.1:2572/2 # << ok 50 - [proxy] (?^:O>.*REQ\(INVITE\) SDP: audio=\S+) -# uas >> I< HASH(0xaaaae0f25070) REQ(INVITE) SDP: audio=127.0.0.1:6956/2 audio=127.0.0.1/2 audio=127.0.0.1:6802/2 audio=127.0.0.1:10184/2 -# << -ok 51 - [uas] (?^:I<.*REQ\(INVITE\) SDP: audio=\S+) -ok 52 - outgoing on UAC must be the same as incoming on proxy -ok 53 - outgoing on proxy must be the same as incoming on UAS -ok 54 - allocated addr:port must be different (127.0.0.1:6594|127.0.0.1:6956) -ok 55 - ranges must stay the same -# uas >> O> 127.0.0.1:47773 RSP(INVITE,100) NO SDP -# << -# uas >> call created +# uas >> I< HASH(0xaaaae20339e0) REQ(INVITE) SDP: audio=127.0.0.1:10672/2 audio=127.0.0.1/2 audio=127.0.0.1:10456/2 audio=127.0.0.1:2572/2 +# O> 127.0.0.1:43605 RSP(INVITE,100) NO SDP +# call created # INVITE you.uas@example.com SIP/2.0 -# Via: SIP/2.0/UDP 127.0.0.1:47773;branch=z9hG4bK9e62b89d9fad74c841d240e380f42e45038e5564057bad66412caf7c0693cd -# Record-route: -# Via: SIP/2.0/UDP 127.0.0.1:48519;branch=z9hG4bK61cb6515cd71674ed3d955c914b0e7b6038e5564057bad65f020fe6271c75d -# Record-route: +# Via: SIP/2.0/UDP 127.0.0.1:43605;branch=z9hG4bK67e39085d50effeecef26101bf2bf2876cc6a51132eb20e3ef7e348613fb2e +# Record-route: +# Via: SIP/2.0/UDP 127.0.0.1:44050;branch=z9hG4bK8bb75a570157b2c7bab5718f8b6c3bf56cc6a51132eb20ed125eb9e2c208c8 +# Record-route: # Supported: # Allow: INVITE, ACK, OPTIONS, CANCEL, BYE -# Via: SIP/2.0/UDP 127.0.0.1:47458;branch=z9hG4bKe504982b66550b8c82d54c1b074e9bea038e5564057bad633a86313bb72ba0 -# Call-id: e5f8b9cf00e69c47404eac3c4266ef16 +# Via: SIP/2.0/UDP 127.0.0.1:33010;branch=z9hG4bK173edb3e777d21a37b0234dd208d442c6cc6a51132eb20e563d4d689653f3a +# Call-id: f6b93299e5fbc9349bec6d8409764443 # Cseq: 1 INVITE -# From: me.uac@example.com;tag=5978d2f1b4bcb1b83217c542482fcd79 +# From: me.uac@example.com;tag=0754dea230c4ba2c713ad2ad7f6cefd3 # Content-type: application/sdp # Max-forwards: 69 -# Contact: sip:bVWCVS2YTJN4Q57GBIP5LKBDNTJQMOKW6LCDKZXYCDQCLPGXP7QTFMYY@127.0.0.1:47773 -# Content-length: 189 -# To: you.uas@example.com;tag=a5ea9d78a0ea0d46f30837f0bf385361 +# Contact: sip:b3RDW4QKC4I37QF4KKBCMZCDOJ53FIG7ALIGOMWO3IRGE64NB5LFEPMI@127.0.0.1:43605 +# Content-length: 190 +# To: you.uas@example.com;tag=112084f4d04ea99b8bcd4936a1ae2ec6 # # v=0 -# o=anonymous 1715681164 1715681164 IN IP4 127.0.0.1 +# o=anonymous 1750091798 1750091798 IN IP4 127.0.0.1 # s=session # c=IN IP4 127.0.0.1 # t=0 0 -# m=audio 6956 RTP/AVP 0 +# m=audio 10672 RTP/AVP 0 # m=audio 0 RTP/AVP 0 -# m=audio 6802 RTP/AVP 0 -# m=audio 10184 RTP/AVP 0 +# m=audio 10456 RTP/AVP 0 +# m=audio 2572 RTP/AVP 0 # << +ok 51 - [uas] (?^:I<.*REQ\(INVITE\) SDP: audio=\S+) +ok 52 - outgoing on UAC must be the same as incoming on proxy +ok 53 - outgoing on proxy must be the same as incoming on UAS +ok 54 - allocated addr:port must be different (127.0.0.1:9298|127.0.0.1:10672) +ok 55 - ranges must stay the same ok 56 - [uas] call created -ok 57 - [uas] (?^i:via\:\ SIP\/2\.0\/udp\ 127\.0\.0\.1\:47773\;) -ok 58 - [uas] (?^i:via\:\ SIP\/2\.0\/udp\ 127\.0\.0\.1\:47458\;) -# uac >> I< HASH(0xaaaae10c3e30) RSP(INVITE,100) NO SDP -# << -# uac >> I< HASH(0xaaaae10c2448) RSP(INVITE,200) SDP: audio=127.0.0.1:3270/2 audio=127.0.0.1:6634/2 audio=127.0.0.1/2 audio=127.0.0.1:10950/2 +ok 57 - [uas] (?^i:via\:\ SIP\/2\.0\/udp\ 127\.0\.0\.1\:43605\;) +ok 58 - [uas] (?^i:via\:\ SIP\/2\.0\/udp\ 127\.0\.0\.1\:33010\;) +# uac >> I< HASH(0xaaaae21d0660) RSP(INVITE,100) NO SDP # << -# uac >> O> 127.0.0.1:48519 REQ(ACK) NO SDP +# uac >> I< HASH(0xaaaae21d0660) RSP(INVITE,200) SDP: audio=127.0.0.1:6656/2 audio=127.0.0.1:3678/2 audio=127.0.0.1/2 audio=127.0.0.1:11040/2 +# O> 127.0.0.1:44050 REQ(ACK) NO SDP # << # uac >> Start RTP # << @@ -4694,1265 +4404,1146 @@ # << # uac >> got rtp packet#100 # Send BYE -# O> 127.0.0.1:48519 REQ(BYE) NO SDP +# O> 127.0.0.1:44050 REQ(BYE) NO SDP # << -# uac >> I< HASH(0xaaaae10bf178) RSP(BYE,200) NO SDP -# << -# uac >> BYE done (1 1 0 1 -- 1 0 1 1) +# uac >> I< HASH(0xaaaae21e71b0) RSP(BYE,200) NO SDP +# BYE done (1 1 0 1 -- 1 0 1 1) # << ok 59 - [uac] BYE done (1 1 0 1 -- 1 0 1 1) -# uas >> O> 127.0.0.1:47773 RSP(INVITE,200) SDP: audio=127.0.0.1:10788/2 audio=127.0.0.1:6858/2 audio=127.0.0.1/2 audio=127.0.0.1:4348/2 -# I< HASH(0xaaaae0f25d78) REQ(ACK) NO SDP +# uas >> O> 127.0.0.1:43605 RSP(INVITE,200) SDP: audio=127.0.0.1:5188/2 audio=127.0.0.1:7092/2 audio=127.0.0.1/2 audio=127.0.0.1:2902/2 +# I< HASH(0xaaaae2049200) REQ(ACK) NO SDP # call established # Start RTP # RTP#100# -# I< HASH(0xaaaae0f251d8) REQ(BYE) NO SDP -# O> 127.0.0.1:47773 RSP(BYE,200) NO SDP +# I< HASH(0xaaaae21f1828) REQ(BYE) NO SDP +# O> 127.0.0.1:43605 RSP(BYE,200) NO SDP # Call done (1 0 1 1 -- 1 1 0 1) # << ok 60 - [uas] Call done (1 0 1 1 -- 1 1 0 1) # ------- test with family ip6 transport udp no-nat -# UAS on [::1]:40605 -# UAC on [::1]:39222 -# PROXY on [::1]:53560 [::1]:41264 +# UAS on [::1]:58748 +# UAC on [::1]:55956 +# PROXY on [::1]:49366 [::1]:46710 ok 61 - no fork nathelper # proxy >> OK +# ready # << ok 62 - [proxy] OK # uas >> OK +# ready # << ok 63 - [uas] OK -# proxy >> ready -# << ok 64 - [proxy] ready -# uas >> ready -# << ok 65 - [uas] ready # uac >> OK +# ready # << ok 66 - [uac] OK -# uac >> ready -# << ok 67 - [uac] ready -# uac >> O> [::1]:53560 REQ(INVITE) SDP: audio=[::1]:3348/2 audio=::1/2 audio=[::1]:5706/2 audio=[::1]:11758/2 +# uac >> O> [::1]:49366 REQ(INVITE) SDP: audio=[::1]:6938/2 audio=::1/2 audio=[::1]:8206/2 audio=[::1]:9000/2 # << ok 68 - [uac] (?^:O>.*REQ\(INVITE\) SDP: audio=\S+) -# proxy >> I< HASH(0xaaaae0f1d2b0) REQ(INVITE) SDP: audio=[::1]:3348/2 audio=::1/2 audio=[::1]:5706/2 audio=[::1]:11758/2 +# proxy >> I< HASH(0xaaaae202a628) REQ(INVITE) SDP: audio=[::1]:6938/2 audio=::1/2 audio=[::1]:8206/2 audio=[::1]:9000/2 +# O> [::1]:58748 REQ(INVITE) SDP: audio=[::1]:6938/2 audio=::1/2 audio=[::1]:8206/2 audio=[::1]:9000/2 # << ok 69 - [proxy] (?^:I<.*REQ\(INVITE\) SDP: audio=\S+) -# proxy >> O> [::1]:40605 REQ(INVITE) SDP: audio=[::1]:3348/2 audio=::1/2 audio=[::1]:5706/2 audio=[::1]:11758/2 -# << ok 70 - [proxy] (?^:O>.*REQ\(INVITE\) SDP: audio=\S+) -# uas >> I< HASH(0xaaaae0f28358) REQ(INVITE) SDP: audio=[::1]:3348/2 audio=::1/2 audio=[::1]:5706/2 audio=[::1]:11758/2 -# << -ok 71 - [uas] (?^:I<.*REQ\(INVITE\) SDP: audio=\S+) -ok 72 - outgoing on UAC must be the same as incoming on proxy -ok 73 - outgoing on proxy must be the same as incoming on UAS -ok 74 - SDP must pass unchanged to UAS -ok 75 - dummy -# uas >> O> [::1]:41264 RSP(INVITE,100) NO SDP -# << -# uas >> call created -# << -ok 76 - [uas] call created -# uas >> INVITE you.uas@example.com SIP/2.0 -# Via: SIP/2.0/UDP [::1]:41264;branch=z9hG4bKd90132065b956c59c77b63657dcab0b0332a12fd3c8a43f45cfa945510b6bf -# Record-route: -# Via: SIP/2.0/UDP [::1]:53560;branch=z9hG4bKa7b87ed64d85f4d4c5c47eb7ef9dd3f7332a12fd3c8a43f81eae10ac256149 -# Record-route: +# uas >> I< HASH(0xaaaae20368c8) REQ(INVITE) SDP: audio=[::1]:6938/2 audio=::1/2 audio=[::1]:8206/2 audio=[::1]:9000/2 +# O> [::1]:46710 RSP(INVITE,100) NO SDP +# call created +# INVITE you.uas@example.com SIP/2.0 +# Via: SIP/2.0/UDP [::1]:46710;branch=z9hG4bKeac1d500ac9c1053014f0ff17d62e19b319f2bf9be2af8390816e6d895086f +# Record-route: +# Via: SIP/2.0/UDP [::1]:49366;branch=z9hG4bK03ccb97c2e978b615aa31972c3c3c900319f2bf9be2af83098d8d340a5a5c0 +# Record-route: # Supported: # Allow: INVITE, ACK, OPTIONS, CANCEL, BYE -# Via: SIP/2.0/UDP [::1]:39222;branch=z9hG4bK8035573288798b5bd958dd028dd8f9ad332a12fd3c8a43ff0ec3d2175a4537 -# Call-id: 544942ff8c5f747b450c762a5fe9c79b +# Via: SIP/2.0/UDP [::1]:55956;branch=z9hG4bK94a815a649f3dc75169c5da0ab5a50cd319f2bf9be2af83131a9d535dbc9c3 +# Call-id: 820daf4c26d09baebad4777a3e20a991 # Cseq: 1 INVITE -# From: me.uac@example.com;tag=101e7e980092fb0858e1a5fe8e0b1e63 +# From: me.uac@example.com;tag=f01bb9b633f8e796ed0109d45a6566b6 # Content-type: application/sdp -# Content-length: 177 +# Content-length: 176 # Max-forwards: 69 -# Contact: sip:bMD5VV7SHTZOSYTLI53WBKNIJMQUYUDPRMTZMIMUGGQVJGK3V@[::1]:41264 -# To: you.uas@example.com;tag=3b7c7160978d687509a25c2e661fa81b +# Contact: sip:bZENG2NU37EKP3PJPX7VC3JIXQUF4363GACEAVD57E2EUCAGZ@[::1]:46710 +# To: you.uas@example.com;tag=540350134a1b1c286623e44ae4efc839 # # v=0 -# o=anonymous 1715681164 1715681164 IN IP6 ::1 +# o=anonymous 1750091799 1750091799 IN IP6 ::1 # s=session # c=IN IP6 ::1 # t=0 0 -# m=audio 3348 RTP/AVP 0 +# m=audio 6938 RTP/AVP 0 # m=audio 0 RTP/AVP 0 -# m=audio 5706 RTP/AVP 0 -# m=audio 11758 RTP/AVP 0 -# << -ok 77 - [uas] (?^i:via\:\ SIP\/2\.0\/udp\ \[\:\:1\]\:41264\;) -ok 78 - [uas] (?^i:via\:\ SIP\/2\.0\/udp\ \[\:\:1\]\:39222\;) -# uac >> I< HASH(0xaaaae10c4640) RSP(INVITE,100) NO SDP +# m=audio 8206 RTP/AVP 0 +# m=audio 9000 RTP/AVP 0 # << -# uac >> I< HASH(0xaaaae10c3010) RSP(INVITE,200) SDP: audio=[::1]:11588/2 audio=[::1]:5140/2 audio=::1/2 audio=[::1]:5752/2 -# << -# uac >> O> [::1]:53560 REQ(ACK) NO SDP +ok 71 - [uas] (?^:I<.*REQ\(INVITE\) SDP: audio=\S+) +ok 72 - outgoing on UAC must be the same as incoming on proxy +ok 73 - outgoing on proxy must be the same as incoming on UAS +ok 74 - SDP must pass unchanged to UAS +ok 75 - dummy +ok 76 - [uas] call created +ok 77 - [uas] (?^i:via\:\ SIP\/2\.0\/udp\ \[\:\:1\]\:46710\;) +ok 78 - [uas] (?^i:via\:\ SIP\/2\.0\/udp\ \[\:\:1\]\:55956\;) +# uac >> I< HASH(0xaaaae21d1638) RSP(INVITE,100) NO SDP # << -# uac >> Start RTP +# uac >> I< HASH(0xaaaae21d1638) RSP(INVITE,200) SDP: audio=[::1]:5490/2 audio=[::1]:3542/2 audio=::1/2 audio=[::1]:8578/2 +# O> [::1]:49366 REQ(ACK) NO SDP +# Start RTP # << # uac >> RTP#100# # << # uac >> got rtp packet#100 +# Send BYE +# O> [::1]:49366 REQ(BYE) NO SDP # << -# uac >> Send BYE -# << -# uac >> O> [::1]:53560 REQ(BYE) NO SDP -# << -# uac >> I< HASH(0xaaaae10beb30) RSP(BYE,200) NO SDP -# << -# uac >> BYE done (1 1 0 1 -- 1 0 1 1) +# uac >> I< HASH(0xaaaae1abedc8) RSP(BYE,200) NO SDP +# BYE done (1 1 0 1 -- 1 0 1 1) # << ok 79 - [uac] BYE done (1 1 0 1 -- 1 0 1 1) -# uas >> O> [::1]:41264 RSP(INVITE,200) SDP: audio=[::1]:11588/2 audio=[::1]:5140/2 audio=::1/2 audio=[::1]:5752/2 -# I< HASH(0xaaaae10e32d8) REQ(ACK) NO SDP +# uas >> O> [::1]:46710 RSP(INVITE,200) SDP: audio=[::1]:5490/2 audio=[::1]:3542/2 audio=::1/2 audio=[::1]:8578/2 +# I< HASH(0xaaaae204e0b0) REQ(ACK) NO SDP # call established # Start RTP # RTP#100# -# I< HASH(0xaaaae0982308) REQ(BYE) NO SDP -# O> [::1]:41264 RSP(BYE,200) NO SDP +# I< HASH(0xaaaae21f55b0) REQ(BYE) NO SDP +# O> [::1]:46710 RSP(BYE,200) NO SDP # Call done (1 0 1 1 -- 1 1 0 1) # << ok 80 - [uas] Call done (1 0 1 1 -- 1 1 0 1) # ------- test with family ip6 transport udp inline-nat -# UAS on [::1]:47342 -# UAC on [::1]:36562 -# PROXY on [::1]:43420 [::1]:49647 +# UAS on [::1]:55684 +# UAC on [::1]:43198 +# PROXY on [::1]:43403 [::1]:50877 ok 81 - no fork nathelper # proxy >> OK +# ready # << ok 82 - [proxy] OK # uas >> OK +# ready # << ok 83 - [uas] OK -# proxy >> ready -# << ok 84 - [proxy] ready -# uas >> ready -# << ok 85 - [uas] ready # uac >> OK +# ready # << ok 86 - [uac] OK -# uac >> ready -# << ok 87 - [uac] ready -# uac >> O> [::1]:43420 REQ(INVITE) SDP: audio=[::1]:6618/2 audio=::1/2 audio=[::1]:2602/2 audio=[::1]:3978/2 +# uac >> O> [::1]:43403 REQ(INVITE) SDP: audio=[::1]:2804/2 audio=::1/2 audio=[::1]:5954/2 audio=[::1]:2480/2 # << ok 88 - [uac] (?^:O>.*REQ\(INVITE\) SDP: audio=\S+) -# proxy >> I< HASH(0xaaaae0f1d988) REQ(INVITE) SDP: audio=[::1]:6618/2 audio=::1/2 audio=[::1]:2602/2 audio=[::1]:3978/2 +# proxy >> I< HASH(0xaaaae2031a70) REQ(INVITE) SDP: audio=[::1]:2804/2 audio=::1/2 audio=[::1]:5954/2 audio=[::1]:2480/2 # << ok 89 - [proxy] (?^:I<.*REQ\(INVITE\) SDP: audio=\S+) -# proxy >> O> [::1]:47342 REQ(INVITE) SDP: audio=[::1]:3108/2 audio=::1/2 audio=[::1]:3200/2 audio=[::1]:10404/2 +# proxy >> O> [::1]:55684 REQ(INVITE) SDP: audio=[::1]:10798/2 audio=::1/2 audio=[::1]:8978/2 audio=[::1]:7848/2 # << ok 90 - [proxy] (?^:O>.*REQ\(INVITE\) SDP: audio=\S+) -# uas >> I< HASH(0xaaaae0f3eb20) REQ(INVITE) SDP: audio=[::1]:3108/2 audio=::1/2 audio=[::1]:3200/2 audio=[::1]:10404/2 -# << -ok 91 - [uas] (?^:I<.*REQ\(INVITE\) SDP: audio=\S+) -ok 92 - outgoing on UAC must be the same as incoming on proxy -ok 93 - outgoing on proxy must be the same as incoming on UAS -ok 94 - allocated addr:port must be different ([::1]:6618|[::1]:3108) -ok 95 - ranges must stay the same -# uas >> O> [::1]:49647 RSP(INVITE,100) NO SDP -# << -# uas >> call created -# << -ok 96 - [uas] call created -# uas >> INVITE you.uas@example.com SIP/2.0 -# Via: SIP/2.0/UDP [::1]:49647;branch=z9hG4bK0c228e0a26cee329aa40a46541072517c3991fe76ef4de32a046fd315de184 -# Record-route: -# Via: SIP/2.0/UDP [::1]:43420;branch=z9hG4bK3bf9993cb9ab55509582e788a343d1e5c3991fe76ef4de31dcf524baf64c85 -# Record-route: +# uas >> I< HASH(0xaaaae203b440) REQ(INVITE) SDP: audio=[::1]:10798/2 audio=::1/2 audio=[::1]:8978/2 audio=[::1]:7848/2 +# O> [::1]:50877 RSP(INVITE,100) NO SDP +# call created +# INVITE you.uas@example.com SIP/2.0 +# Via: SIP/2.0/UDP [::1]:50877;branch=z9hG4bKc59c09cf53ae347c5356d0facb3a7068f6596f438ad311825a5ff3beb05ec4 +# Record-route: +# Via: SIP/2.0/UDP [::1]:43403;branch=z9hG4bKd01e6c9620b43eef166a024a99ee1411f6596f438ad31181b6e6562bd9721c +# Record-route: # Supported: # Allow: INVITE, ACK, OPTIONS, CANCEL, BYE -# Via: SIP/2.0/UDP [::1]:36562;branch=z9hG4bK07a259c16ba0e8322bf36e18beadd47ac3991fe76ef4de3956013a87469579 -# Call-id: 77cd182f19425902eb71898b33f23089 +# Via: SIP/2.0/UDP [::1]:43198;branch=z9hG4bK2f6caac9d6a48cfab7bd3e1e0b4c6d72f6596f438ad3118c2c03f1f6a3dbeb +# Call-id: 05148f5b71df266f9671e0daabb23610 # Cseq: 1 INVITE -# From: me.uac@example.com;tag=fa7cb422148e475689c3a50ba2df4410 +# From: me.uac@example.com;tag=a63be65c40d47d48183544941ab75b0d # Content-type: application/sdp # Max-forwards: 69 -# Contact: sip:bMUVVRW5P5WN5OGOVLSSNCNMYZ35KFAIMITKBF6CQ5BCVAJRC@[::1]:49647 +# Contact: sip:bXM6MI656B5B4T5USPX746DH46GPNPXZQFNI76DQ5FNOBTZHJ@[::1]:50877 # Content-length: 177 -# To: you.uas@example.com;tag=ea3634bb5ee8d950aebe3f3bd09703f5 +# To: you.uas@example.com;tag=8d7fa62c834627feec70f372db75a25a # # v=0 -# o=anonymous 1715681165 1715681165 IN IP6 ::1 +# o=anonymous 1750091800 1750091800 IN IP6 ::1 # s=session # c=IN IP6 ::1 # t=0 0 -# m=audio 3108 RTP/AVP 0 +# m=audio 10798 RTP/AVP 0 # m=audio 0 RTP/AVP 0 -# m=audio 3200 RTP/AVP 0 -# m=audio 10404 RTP/AVP 0 +# m=audio 8978 RTP/AVP 0 +# m=audio 7848 RTP/AVP 0 # << -ok 97 - [uas] (?^i:via\:\ SIP\/2\.0\/udp\ \[\:\:1\]\:49647\;) -ok 98 - [uas] (?^i:via\:\ SIP\/2\.0\/udp\ \[\:\:1\]\:36562\;) -# uac >> I< HASH(0xaaaae10c9a28) RSP(INVITE,100) NO SDP -# << -# uac >> I< HASH(0xaaaae10c94d8) RSP(INVITE,200) SDP: audio=[::1]:8952/2 audio=[::1]:5272/2 audio=::1/2 audio=[::1]:4174/2 -# << -# uac >> O> [::1]:43420 REQ(ACK) NO SDP +ok 91 - [uas] (?^:I<.*REQ\(INVITE\) SDP: audio=\S+) +ok 92 - outgoing on UAC must be the same as incoming on proxy +ok 93 - outgoing on proxy must be the same as incoming on UAS +ok 94 - allocated addr:port must be different ([::1]:2804|[::1]:10798) +ok 95 - ranges must stay the same +ok 96 - [uas] call created +ok 97 - [uas] (?^i:via\:\ SIP\/2\.0\/udp\ \[\:\:1\]\:50877\;) +ok 98 - [uas] (?^i:via\:\ SIP\/2\.0\/udp\ \[\:\:1\]\:43198\;) +# uac >> I< HASH(0xaaaae21d6560) RSP(INVITE,100) NO SDP # << -# uac >> Start RTP +# uac >> I< HASH(0xaaaae21d6560) RSP(INVITE,200) SDP: audio=[::1]:10516/2 audio=[::1]:5112/2 audio=::1/2 audio=[::1]:6122/2 +# O> [::1]:43403 REQ(ACK) NO SDP +# Start RTP # << # uac >> RTP#100# # << # uac >> got rtp packet#100 # Send BYE +# O> [::1]:43403 REQ(BYE) NO SDP # << -# uac >> O> [::1]:43420 REQ(BYE) NO SDP -# << -# uac >> I< HASH(0xaaaae10c4b60) RSP(BYE,200) NO SDP -# << -# uac >> BYE done (1 1 0 1 -- 1 0 1 1) +# uac >> I< HASH(0xaaaae1abedc8) RSP(BYE,200) NO SDP +# BYE done (1 1 0 1 -- 1 0 1 1) # << ok 99 - [uac] BYE done (1 1 0 1 -- 1 0 1 1) -# uas >> O> [::1]:49647 RSP(INVITE,200) SDP: audio=[::1]:8570/2 audio=[::1]:8274/2 audio=::1/2 audio=[::1]:7958/2 -# I< HASH(0xaaaae0f2c740) REQ(ACK) NO SDP +# uas >> O> [::1]:50877 RSP(INVITE,200) SDP: audio=[::1]:9816/2 audio=[::1]:10392/2 audio=::1/2 audio=[::1]:9884/2 +# I< HASH(0xaaaae2051d38) REQ(ACK) NO SDP # call established # Start RTP # RTP#100# -# I< HASH(0xaaaae0f2c8a8) REQ(BYE) NO SDP -# O> [::1]:49647 RSP(BYE,200) NO SDP +# I< HASH(0xaaaae21f6ba8) REQ(BYE) NO SDP +# O> [::1]:50877 RSP(BYE,200) NO SDP # Call done (1 0 1 1 -- 1 1 0 1) # << ok 100 - [uas] Call done (1 0 1 1 -- 1 1 0 1) # ------- test with family ip6 transport udp remote-nat -# UAS on [::1]:53339 -# UAC on [::1]:35781 -# PROXY on [::1]:47084 [::1]:37763 +# UAS on [::1]:43154 +# UAC on [::1]:47483 +# PROXY on [::1]:50661 [::1]:34702 # nathelper >> OK # << ok 101 - [nathelper] OK # proxy >> OK +# ready # << ok 102 - [proxy] OK # uas >> OK +# ready # << ok 103 - [uas] OK -# proxy >> ready -# << ok 104 - [proxy] ready -# uas >> ready -# << ok 105 - [uas] ready # uac >> OK +# ready # << ok 106 - [uac] OK -# uac >> ready -# << ok 107 - [uac] ready -# uac >> O> [::1]:47084 REQ(INVITE) SDP: audio=[::1]:9390/2 audio=::1/2 audio=[::1]:7852/2 audio=[::1]:10234/2 +# uac >> O> [::1]:50661 REQ(INVITE) SDP: audio=[::1]:6904/2 audio=::1/2 audio=[::1]:6938/2 audio=[::1]:6608/2 # << ok 108 - [uac] (?^:O>.*REQ\(INVITE\) SDP: audio=\S+) -# proxy >> I< HASH(0xaaaae0f26f60) REQ(INVITE) SDP: audio=[::1]:9390/2 audio=::1/2 audio=[::1]:7852/2 audio=[::1]:10234/2 +# proxy >> I< HASH(0xaaaae20344d8) REQ(INVITE) SDP: audio=[::1]:6904/2 audio=::1/2 audio=[::1]:6938/2 audio=[::1]:6608/2 # << ok 109 - [proxy] (?^:I<.*REQ\(INVITE\) SDP: audio=\S+) -# proxy >> O> [::1]:53339 REQ(INVITE) SDP: audio=[::1]:2850/2 audio=::1/2 audio=[::1]:3782/2 audio=[::1]:2518/2 +# proxy >> O> [::1]:43154 REQ(INVITE) SDP: audio=[::1]:10570/2 audio=::1/2 audio=[::1]:11694/2 audio=[::1]:8390/2 # << ok 110 - [proxy] (?^:O>.*REQ\(INVITE\) SDP: audio=\S+) -# uas >> I< HASH(0xaaaae0f2e590) REQ(INVITE) SDP: audio=[::1]:2850/2 audio=::1/2 audio=[::1]:3782/2 audio=[::1]:2518/2 -# << -ok 111 - [uas] (?^:I<.*REQ\(INVITE\) SDP: audio=\S+) -ok 112 - outgoing on UAC must be the same as incoming on proxy -ok 113 - outgoing on proxy must be the same as incoming on UAS -ok 114 - allocated addr:port must be different ([::1]:9390|[::1]:2850) -ok 115 - ranges must stay the same -# uas >> O> [::1]:37763 RSP(INVITE,100) NO SDP -# << -# uas >> call created -# << -ok 116 - [uas] call created -# uas >> INVITE you.uas@example.com SIP/2.0 -# Via: SIP/2.0/UDP [::1]:37763;branch=z9hG4bKe31afd0a6d7c9feb61ccb4add85d53d7756a3f0dca8dce43f57bf2115caaa3 -# Record-route: -# Via: SIP/2.0/UDP [::1]:47084;branch=z9hG4bKb5f88b2cd221a4e7122ad15de0f0f83c756a3f0dca8dce452bdf5a23a938fb -# Record-route: +# uas >> I< HASH(0xaaaae203d940) REQ(INVITE) SDP: audio=[::1]:10570/2 audio=::1/2 audio=[::1]:11694/2 audio=[::1]:8390/2 +# O> [::1]:34702 RSP(INVITE,100) NO SDP +# call created +# INVITE you.uas@example.com SIP/2.0 +# Via: SIP/2.0/UDP [::1]:34702;branch=z9hG4bKe09a78d3b03d36b5cd7491635450ad3d8a2dad4ee3c8c67f62aadc352281c5 +# Record-route: +# Via: SIP/2.0/UDP [::1]:50661;branch=z9hG4bK7b56470bff25fa9482181a435c9cdfb58a2dad4ee3c8c6709c34d1a951e5c9 +# Record-route: # Supported: # Allow: INVITE, ACK, OPTIONS, CANCEL, BYE -# Via: SIP/2.0/UDP [::1]:35781;branch=z9hG4bKd1fca724df3fb1cd8cc65223950e43b5756a3f0dca8dce42c45f419b7b752c -# Call-id: e0dd1083daf279c915ad11b56f7a5475 +# Via: SIP/2.0/UDP [::1]:47483;branch=z9hG4bKc6b5935bb21e7007d40804a389b01f3c8a2dad4ee3c8c67fa2f05f71a2649f +# Call-id: ceed7c4c8a70a4cc20335285cde8cb7c # Cseq: 1 INVITE -# From: me.uac@example.com;tag=b59a083616a16130c309561b2d0ff782 +# From: me.uac@example.com;tag=53de60ed30a9e15af546b21ba05dcebb # Content-type: application/sdp # Max-forwards: 69 -# Contact: sip:b2KLFKEUWU355EGRSO3W6DULQIP6QDAYTS7IQWLOMEVVMSD7P@[::1]:37763 -# Content-length: 176 -# To: you.uas@example.com;tag=84aa7c771b843b25d53deea2e8fe301f +# Contact: sip:bNLXFDSQ7LZIAFTQIL3QDP5BMIWLH7OH23R4OY66MPTZUU2D7@[::1]:34702 +# Content-length: 178 +# To: you.uas@example.com;tag=5250fefc2843903cfa72c84e39c02ca3 # # v=0 -# o=anonymous 1715681166 1715681166 IN IP6 ::1 +# o=anonymous 1750091800 1750091800 IN IP6 ::1 # s=session # c=IN IP6 ::1 # t=0 0 -# m=audio 2850 RTP/AVP 0 +# m=audio 10570 RTP/AVP 0 # m=audio 0 RTP/AVP 0 -# m=audio 3782 RTP/AVP 0 -# m=audio 2518 RTP/AVP 0 -# << -ok 117 - [uas] (?^i:via\:\ SIP\/2\.0\/udp\ \[\:\:1\]\:37763\;) -ok 118 - [uas] (?^i:via\:\ SIP\/2\.0\/udp\ \[\:\:1\]\:35781\;) -# uac >> I< HASH(0xaaaae10ce368) RSP(INVITE,100) NO SDP -# << -# uac >> I< HASH(0xaaaae10ce200) RSP(INVITE,200) SDP: audio=[::1]:4402/2 audio=[::1]:11162/2 audio=::1/2 audio=[::1]:9660/2 +# m=audio 11694 RTP/AVP 0 +# m=audio 8390 RTP/AVP 0 # << -# uac >> O> [::1]:47084 REQ(ACK) NO SDP +ok 111 - [uas] (?^:I<.*REQ\(INVITE\) SDP: audio=\S+) +ok 112 - outgoing on UAC must be the same as incoming on proxy +ok 113 - outgoing on proxy must be the same as incoming on UAS +ok 114 - allocated addr:port must be different ([::1]:6904|[::1]:10570) +ok 115 - ranges must stay the same +ok 116 - [uas] call created +ok 117 - [uas] (?^i:via\:\ SIP\/2\.0\/udp\ \[\:\:1\]\:34702\;) +ok 118 - [uas] (?^i:via\:\ SIP\/2\.0\/udp\ \[\:\:1\]\:47483\;) +# uac >> I< HASH(0xaaaae21db658) RSP(INVITE,100) NO SDP # << -# uac >> Start RTP +# uac >> I< HASH(0xaaaae21da150) RSP(INVITE,200) SDP: audio=[::1]:5882/2 audio=[::1]:11586/2 audio=::1/2 audio=[::1]:3516/2 +# O> [::1]:50661 REQ(ACK) NO SDP +# Start RTP # << # uac >> RTP#100# # << # uac >> got rtp packet#100 +# Send BYE +# O> [::1]:50661 REQ(BYE) NO SDP # << -# uac >> Send BYE -# << -# uac >> O> [::1]:47084 REQ(BYE) NO SDP -# << -# uac >> I< HASH(0xaaaae10c94a0) RSP(BYE,200) NO SDP -# << -# uac >> BYE done (1 1 0 1 -- 1 0 1 1) +# uac >> I< HASH(0xaaaae21dc240) RSP(BYE,200) NO SDP +# BYE done (1 1 0 1 -- 1 0 1 1) # << ok 119 - [uac] BYE done (1 1 0 1 -- 1 0 1 1) -# uas >> O> [::1]:37763 RSP(INVITE,200) SDP: audio=[::1]:6650/2 audio=[::1]:7088/2 audio=::1/2 audio=[::1]:11204/2 -# I< HASH(0xaaaae0f41d60) REQ(ACK) NO SDP +# uas >> O> [::1]:34702 RSP(INVITE,200) SDP: audio=[::1]:6670/2 audio=[::1]:3098/2 audio=::1/2 audio=[::1]:10808/2 +# I< HASH(0xaaaae2054f88) REQ(ACK) NO SDP # call established # Start RTP # RTP#100# -# I< HASH(0xaaaae10ed028) REQ(BYE) NO SDP -# O> [::1]:37763 RSP(BYE,200) NO SDP +# I< HASH(0xaaaae21fe8e8) REQ(BYE) NO SDP +# O> [::1]:34702 RSP(BYE,200) NO SDP # Call done (1 0 1 1 -- 1 1 0 1) # << ok 120 - [uas] Call done (1 0 1 1 -- 1 1 0 1) # ------- test with family ip4 transport tcp no-nat -# UAS on 127.0.0.1:33673 -# UAC on 127.0.0.1:37213 -# PROXY on 127.0.0.1:41949 127.0.0.1:54837 +# UAS on 127.0.0.1:46591 +# UAC on 127.0.0.1:56509 +# PROXY on 127.0.0.1:44823 127.0.0.1:41631 ok 121 - no fork nathelper # proxy >> OK +# ready # << ok 122 - [proxy] OK # uas >> OK +# ready # << ok 123 - [uas] OK -# proxy >> ready -# << ok 124 - [proxy] ready -# uas >> ready -# << ok 125 - [uas] ready # uac >> OK +# ready # << ok 126 - [uac] OK -# uac >> ready -# << ok 127 - [uac] ready -# uac >> O> 127.0.0.1:41949 REQ(INVITE) SDP: audio=127.0.0.1:10790/2 audio=127.0.0.1/2 audio=127.0.0.1:3028/2 audio=127.0.0.1:11750/2 +# uac >> O> 127.0.0.1:44823 REQ(INVITE) SDP: audio=127.0.0.1:11216/2 audio=127.0.0.1/2 audio=127.0.0.1:2736/2 audio=127.0.0.1:6946/2 # << ok 128 - [uac] (?^:O>.*REQ\(INVITE\) SDP: audio=\S+) -# proxy >> I< HASH(0xaaaae0f41de8) REQ(INVITE) SDP: audio=127.0.0.1:10790/2 audio=127.0.0.1/2 audio=127.0.0.1:3028/2 audio=127.0.0.1:11750/2 +# proxy >> I< HASH(0xaaaae2051148) REQ(INVITE) SDP: audio=127.0.0.1:11216/2 audio=127.0.0.1/2 audio=127.0.0.1:2736/2 audio=127.0.0.1:6946/2 +# O> 127.0.0.1:46591 REQ(INVITE) SDP: audio=127.0.0.1:11216/2 audio=127.0.0.1/2 audio=127.0.0.1:2736/2 audio=127.0.0.1:6946/2 # << ok 129 - [proxy] (?^:I<.*REQ\(INVITE\) SDP: audio=\S+) -# proxy >> O> 127.0.0.1:33673 REQ(INVITE) SDP: audio=127.0.0.1:10790/2 audio=127.0.0.1/2 audio=127.0.0.1:3028/2 audio=127.0.0.1:11750/2 -# << ok 130 - [proxy] (?^:O>.*REQ\(INVITE\) SDP: audio=\S+) -# uas >> I< HASH(0xaaaae0f4ad70) REQ(INVITE) SDP: audio=127.0.0.1:10790/2 audio=127.0.0.1/2 audio=127.0.0.1:3028/2 audio=127.0.0.1:11750/2 -# << -ok 131 - [uas] (?^:I<.*REQ\(INVITE\) SDP: audio=\S+) -ok 132 - outgoing on UAC must be the same as incoming on proxy -ok 133 - outgoing on proxy must be the same as incoming on UAS -ok 134 - SDP must pass unchanged to UAS -ok 135 - dummy -# uas >> O> 127.0.0.1:45915 RSP(INVITE,100) NO SDP -# << -# uas >> call created -# << -ok 136 - [uas] call created -# uas >> INVITE you.uas@example.com SIP/2.0 -# Via: SIP/2.0/TCP 127.0.0.1:54837;branch=z9hG4bKaaa23220f8f92e64dc8175aeae00dc523b8ae815357c646671391c8f80d780 -# Record-route: -# Via: SIP/2.0/TCP 127.0.0.1:41949;branch=z9hG4bK6df6954bc2a6551702926b51c30ade253b8ae815357c646c93f9a91bb14c3f -# Record-route: +# uas >> I< HASH(0xaaaae205a1f0) REQ(INVITE) SDP: audio=127.0.0.1:11216/2 audio=127.0.0.1/2 audio=127.0.0.1:2736/2 audio=127.0.0.1:6946/2 +# O> 127.0.0.1:43243 RSP(INVITE,100) NO SDP +# call created +# INVITE you.uas@example.com SIP/2.0 +# Via: SIP/2.0/TCP 127.0.0.1:41631;branch=z9hG4bK71465029db1bd4d289b0fb176ddc5134883d3f5a444776211abdc63d48a40f +# Record-route: +# Via: SIP/2.0/TCP 127.0.0.1:44823;branch=z9hG4bK4ed9ea68b4bc9bbda9e0c98b8bfecb37883d3f5a444776257e76df514900fa +# Record-route: # Supported: # Allow: INVITE, ACK, OPTIONS, CANCEL, BYE -# Via: SIP/2.0/TCP 127.0.0.1:37213;branch=z9hG4bK7f17fee088a812bca311d8993d9da1693b8ae815357c646bfc7f465e29a84f -# Call-id: f8fb1ca41724d22dbdc263a57f194733 +# Via: SIP/2.0/TCP 127.0.0.1:56509;branch=z9hG4bK42a821ea4c5d26246ef6c361067c5555883d3f5a444776209925239e3faef2 +# Call-id: 0d8e6b1abf37091fb954b2f4c334d62b # Cseq: 1 INVITE -# From: me.uac@example.com;tag=c4287a845524de76b5a4fec980ad0e82 +# From: me.uac@example.com;tag=a153eb3fdb9b861baf718da1e943edff # Content-type: application/sdp -# Content-length: 190 +# Content-length: 189 # Max-forwards: 69 -# Contact: sip:bRAM4FAXRKB22MSNOX2QGA23EXYED4SUWR73X6TGD5T3NTDA6PP6YZJY@127.0.0.1:54837 -# To: you.uas@example.com;tag=f4ab9e01631fb2d310e0130e82b13289 +# Contact: sip:b24HZZI22PXJ7FQZ36XKDQD6AYVJPGPLN5NTODWCL3Z25XA25GMILFEY@127.0.0.1:41631 +# To: you.uas@example.com;tag=a65d7b79883c9a356e5d093b3827e615 # # v=0 -# o=anonymous 1715681167 1715681167 IN IP4 127.0.0.1 +# o=anonymous 1750091801 1750091801 IN IP4 127.0.0.1 # s=session # c=IN IP4 127.0.0.1 # t=0 0 -# m=audio 10790 RTP/AVP 0 +# m=audio 11216 RTP/AVP 0 # m=audio 0 RTP/AVP 0 -# m=audio 3028 RTP/AVP 0 -# m=audio 11750 RTP/AVP 0 -# << -ok 137 - [uas] (?^i:via\:\ SIP\/2\.0\/tcp\ 127\.0\.0\.1\:54837\;) -ok 138 - [uas] (?^i:via\:\ SIP\/2\.0\/tcp\ 127\.0\.0\.1\:37213\;) -# uac >> I< HASH(0xaaaae10d3a40) RSP(INVITE,100) NO SDP +# m=audio 2736 RTP/AVP 0 +# m=audio 6946 RTP/AVP 0 # << -# uac >> I< HASH(0xaaaae08cbae0) RSP(INVITE,200) SDP: audio=127.0.0.1:11484/2 audio=127.0.0.1:11128/2 audio=127.0.0.1/2 audio=127.0.0.1:3142/2 -# << -# uac >> O> 127.0.0.1:41949 REQ(ACK) NO SDP +ok 131 - [uas] (?^:I<.*REQ\(INVITE\) SDP: audio=\S+) +ok 132 - outgoing on UAC must be the same as incoming on proxy +ok 133 - outgoing on proxy must be the same as incoming on UAS +ok 134 - SDP must pass unchanged to UAS +ok 135 - dummy +ok 136 - [uas] call created +ok 137 - [uas] (?^i:via\:\ SIP\/2\.0\/tcp\ 127\.0\.0\.1\:41631\;) +ok 138 - [uas] (?^i:via\:\ SIP\/2\.0\/tcp\ 127\.0\.0\.1\:56509\;) +# uac >> I< HASH(0xaaaae21e0fa0) RSP(INVITE,100) NO SDP # << -# uac >> Start RTP +# uac >> I< HASH(0xaaaae21e1048) RSP(INVITE,200) SDP: audio=127.0.0.1:7526/2 audio=127.0.0.1:8788/2 audio=127.0.0.1/2 audio=127.0.0.1:6650/2 +# O> 127.0.0.1:44823 REQ(ACK) NO SDP +# Start RTP # << # uac >> RTP#100# # << # uac >> got rtp packet#100 # Send BYE +# O> 127.0.0.1:44823 REQ(BYE) NO SDP # << -# uac >> O> 127.0.0.1:41949 REQ(BYE) NO SDP -# << -# uac >> I< HASH(0xaaaae10ce308) RSP(BYE,200) NO SDP -# << -# uac >> BYE done (1 1 0 1 -- 1 0 1 1) +# uac >> I< HASH(0xaaaae2033f80) RSP(BYE,200) NO SDP +# BYE done (1 1 0 1 -- 1 0 1 1) # << ok 139 - [uac] BYE done (1 1 0 1 -- 1 0 1 1) -# uas >> O> 127.0.0.1:45915 RSP(INVITE,200) SDP: audio=127.0.0.1:11484/2 audio=127.0.0.1:11128/2 audio=127.0.0.1/2 audio=127.0.0.1:3142/2 -# I< HASH(0xaaaae0f4acf8) REQ(ACK) NO SDP +# uas >> O> 127.0.0.1:43243 RSP(INVITE,200) SDP: audio=127.0.0.1:7526/2 audio=127.0.0.1:8788/2 audio=127.0.0.1/2 audio=127.0.0.1:6650/2 +# I< HASH(0xaaaae2065878) REQ(ACK) NO SDP # call established # Start RTP # RTP#100# -# I< HASH(0xaaaae0f33618) REQ(BYE) NO SDP -# O> 127.0.0.1:45915 RSP(BYE,200) NO SDP +# I< HASH(0xaaaae205a400) REQ(BYE) NO SDP +# O> 127.0.0.1:43243 RSP(BYE,200) NO SDP # Call done (1 0 1 1 -- 1 1 0 1) # << ok 140 - [uas] Call done (1 0 1 1 -- 1 1 0 1) # ------- test with family ip4 transport tcp inline-nat -# UAS on 127.0.0.1:35851 -# UAC on 127.0.0.1:60343 -# PROXY on 127.0.0.1:36485 127.0.0.1:45463 +# UAS on 127.0.0.1:46189 +# UAC on 127.0.0.1:45813 +# PROXY on 127.0.0.1:45891 127.0.0.1:51901 ok 141 - no fork nathelper # proxy >> OK +# ready # << ok 142 - [proxy] OK # uas >> OK +# ready # << ok 143 - [uas] OK -# proxy >> ready -# << ok 144 - [proxy] ready -# uas >> ready -# << ok 145 - [uas] ready # uac >> OK +# ready # << ok 146 - [uac] OK -# uac >> ready -# << ok 147 - [uac] ready -# uac >> O> 127.0.0.1:36485 REQ(INVITE) SDP: audio=127.0.0.1:9272/2 audio=127.0.0.1/2 audio=127.0.0.1:8934/2 audio=127.0.0.1:11232/2 +# uac >> O> 127.0.0.1:45891 REQ(INVITE) SDP: audio=127.0.0.1:11632/2 audio=127.0.0.1/2 audio=127.0.0.1:10816/2 audio=127.0.0.1:11214/2 # << ok 148 - [uac] (?^:O>.*REQ\(INVITE\) SDP: audio=\S+) -# proxy >> I< HASH(0xaaaae0f45468) REQ(INVITE) SDP: audio=127.0.0.1:9272/2 audio=127.0.0.1/2 audio=127.0.0.1:8934/2 audio=127.0.0.1:11232/2 +# proxy >> I< HASH(0xaaaae2054dd8) REQ(INVITE) SDP: audio=127.0.0.1:11632/2 audio=127.0.0.1/2 audio=127.0.0.1:10816/2 audio=127.0.0.1:11214/2 +# O> 127.0.0.1:46189 REQ(INVITE) SDP: audio=127.0.0.1:7074/2 audio=127.0.0.1/2 audio=127.0.0.1:11840/2 audio=127.0.0.1:3204/2 # << ok 149 - [proxy] (?^:I<.*REQ\(INVITE\) SDP: audio=\S+) -# proxy >> O> 127.0.0.1:35851 REQ(INVITE) SDP: audio=127.0.0.1:11490/2 audio=127.0.0.1/2 audio=127.0.0.1:6692/2 audio=127.0.0.1:7830/2 -# << ok 150 - [proxy] (?^:O>.*REQ\(INVITE\) SDP: audio=\S+) -# uas >> I< HASH(0xaaaae0f4df08) REQ(INVITE) SDP: audio=127.0.0.1:11490/2 audio=127.0.0.1/2 audio=127.0.0.1:6692/2 audio=127.0.0.1:7830/2 -# << -ok 151 - [uas] (?^:I<.*REQ\(INVITE\) SDP: audio=\S+) -ok 152 - outgoing on UAC must be the same as incoming on proxy -ok 153 - outgoing on proxy must be the same as incoming on UAS -ok 154 - allocated addr:port must be different (127.0.0.1:9272|127.0.0.1:11490) -ok 155 - ranges must stay the same -# uas >> O> 127.0.0.1:39793 RSP(INVITE,100) NO SDP -# << -# uas >> call created -# << -ok 156 - [uas] call created -# uas >> INVITE you.uas@example.com SIP/2.0 -# Via: SIP/2.0/TCP 127.0.0.1:45463;branch=z9hG4bK2003b4e1f395630c0b8ba166b8d6f14dd1dc059f74fee79bb94ff06cf93c82 -# Record-route: -# Via: SIP/2.0/TCP 127.0.0.1:36485;branch=z9hG4bK8518596db87c6aa6604565238fbb1090d1dc059f74fee79289be714818a8d9 -# Record-route: +# uas >> I< HASH(0xaaaae205d488) REQ(INVITE) SDP: audio=127.0.0.1:7074/2 audio=127.0.0.1/2 audio=127.0.0.1:11840/2 audio=127.0.0.1:3204/2 +# O> 127.0.0.1:38677 RSP(INVITE,100) NO SDP +# call created +# INVITE you.uas@example.com SIP/2.0 +# Via: SIP/2.0/TCP 127.0.0.1:51901;branch=z9hG4bK92ab268ac5e4cb999d54606bb9019203c951a336521e0dcf800a6cc59012e1 +# Record-route: +# Via: SIP/2.0/TCP 127.0.0.1:45891;branch=z9hG4bK21fb75afd1c869b361676b98933497e5c951a336521e0dc96ef8864d54180a +# Record-route: # Supported: # Allow: INVITE, ACK, OPTIONS, CANCEL, BYE -# Via: SIP/2.0/TCP 127.0.0.1:60343;branch=z9hG4bK1aaf4a0c2fb1e5c7675c20ae6830d28fd1dc059f74fee79f4c96ce316d52fc -# Call-id: 411abb8dae6ed8be25c38d25ce59dc5f +# Via: SIP/2.0/TCP 127.0.0.1:45813;branch=z9hG4bK6a0102b14acf75d38bd20724d4f791eec951a336521e0dc9cdcbadb9293d34 +# Call-id: aa58d25fb1f2bf6162f7df4767870e8e # Cseq: 1 INVITE -# From: me.uac@example.com;tag=f57ee2397eccf58f889f4aaea7f77533 +# From: me.uac@example.com;tag=d816bf511ff3a4726642caa6e49d5be0 # Content-type: application/sdp -# Content-length: 189 # Max-forwards: 69 -# Contact: sip:bDR6Z2OKGCOEMELLDIJABBZ4COMHVUES2T52NQWQWYOBHLOIYRGO4MKQ@127.0.0.1:45463 -# To: you.uas@example.com;tag=30c279e3e5f7b53817e9e285a64af79b +# Contact: sip:bXZXE6DUICRJDO3ZJ65ES6WYG5FXZZFSGGLW7PIVLZCKL53LAE6MGNPY@127.0.0.1:51901 +# Content-length: 189 +# To: you.uas@example.com;tag=80b85d685e4e88b5c3b1b2d9fdfb3e6e # # v=0 -# o=anonymous 1715681168 1715681168 IN IP4 127.0.0.1 +# o=anonymous 1750091802 1750091802 IN IP4 127.0.0.1 # s=session # c=IN IP4 127.0.0.1 # t=0 0 -# m=audio 11490 RTP/AVP 0 +# m=audio 7074 RTP/AVP 0 # m=audio 0 RTP/AVP 0 -# m=audio 6692 RTP/AVP 0 -# m=audio 7830 RTP/AVP 0 -# << -ok 157 - [uas] (?^i:via\:\ SIP\/2\.0\/tcp\ 127\.0\.0\.1\:45463\;) -ok 158 - [uas] (?^i:via\:\ SIP\/2\.0\/tcp\ 127\.0\.0\.1\:60343\;) -# uac >> I< HASH(0xaaaae10e8e78) RSP(INVITE,100) NO SDP +# m=audio 11840 RTP/AVP 0 +# m=audio 3204 RTP/AVP 0 # << -# uac >> I< HASH(0xaaaae08cbae0) RSP(INVITE,200) SDP: audio=127.0.0.1:10638/2 audio=127.0.0.1:11740/2 audio=127.0.0.1/2 audio=127.0.0.1:2068/2 -# << -# uac >> O> 127.0.0.1:36485 REQ(ACK) NO SDP +ok 151 - [uas] (?^:I<.*REQ\(INVITE\) SDP: audio=\S+) +ok 152 - outgoing on UAC must be the same as incoming on proxy +ok 153 - outgoing on proxy must be the same as incoming on UAS +ok 154 - allocated addr:port must be different (127.0.0.1:11632|127.0.0.1:7074) +ok 155 - ranges must stay the same +ok 156 - [uas] call created +ok 157 - [uas] (?^i:via\:\ SIP\/2\.0\/tcp\ 127\.0\.0\.1\:51901\;) +ok 158 - [uas] (?^i:via\:\ SIP\/2\.0\/tcp\ 127\.0\.0\.1\:45813\;) +# uac >> I< HASH(0xaaaae21f6398) RSP(INVITE,100) NO SDP # << -# uac >> Start RTP +# uac >> I< HASH(0xaaaae21f63b0) RSP(INVITE,200) SDP: audio=127.0.0.1:11470/2 audio=127.0.0.1:6302/2 audio=127.0.0.1/2 audio=127.0.0.1:8428/2 +# O> 127.0.0.1:45891 REQ(ACK) NO SDP +# Start RTP # << # uac >> RTP#100# # << # uac >> got rtp packet#100 +# Send BYE +# O> 127.0.0.1:45891 REQ(BYE) NO SDP # << -# uac >> Send BYE -# << -# uac >> O> 127.0.0.1:36485 REQ(BYE) NO SDP -# << -# uac >> I< HASH(0xaaaae0982908) RSP(BYE,200) NO SDP -# << -# uac >> BYE done (1 1 0 1 -- 1 0 1 1) +# uac >> I< HASH(0xaaaae2035870) RSP(BYE,200) NO SDP +# BYE done (1 1 0 1 -- 1 0 1 1) # << ok 159 - [uac] BYE done (1 1 0 1 -- 1 0 1 1) -# uas >> O> 127.0.0.1:39793 RSP(INVITE,200) SDP: audio=127.0.0.1:4604/2 audio=127.0.0.1:8786/2 audio=127.0.0.1/2 audio=127.0.0.1:9004/2 -# I< HASH(0xaaaae0f4ddd0) REQ(ACK) NO SDP +# uas >> O> 127.0.0.1:38677 RSP(INVITE,200) SDP: audio=127.0.0.1:6626/2 audio=127.0.0.1:6832/2 audio=127.0.0.1/2 audio=127.0.0.1:2166/2 +# I< HASH(0xaaaae2068930) REQ(ACK) NO SDP # call established # Start RTP # RTP#100# -# I< HASH(0xaaaae0f37658) REQ(BYE) NO SDP -# O> 127.0.0.1:39793 RSP(BYE,200) NO SDP +# I< HASH(0xaaaae205d698) REQ(BYE) NO SDP +# O> 127.0.0.1:38677 RSP(BYE,200) NO SDP # Call done (1 0 1 1 -- 1 1 0 1) # << ok 160 - [uas] Call done (1 0 1 1 -- 1 1 0 1) # ------- test with family ip4 transport tcp remote-nat -# UAS on 127.0.0.1:44941 -# UAC on 127.0.0.1:43011 -# PROXY on 127.0.0.1:34659 127.0.0.1:59217 +# UAS on 127.0.0.1:57309 +# UAC on 127.0.0.1:43671 +# PROXY on 127.0.0.1:35595 127.0.0.1:56007 # nathelper >> OK # << ok 161 - [nathelper] OK # proxy >> OK +# ready # << ok 162 - [proxy] OK # uas >> OK +# ready # << ok 163 - [uas] OK -# proxy >> ready -# << ok 164 - [proxy] ready -# uas >> ready -# << ok 165 - [uas] ready # uac >> OK +# ready # << ok 166 - [uac] OK -# uac >> ready -# << ok 167 - [uac] ready -# uac >> O> 127.0.0.1:34659 REQ(INVITE) SDP: audio=127.0.0.1:7056/2 audio=127.0.0.1/2 audio=127.0.0.1:10402/2 audio=127.0.0.1:11188/2 +# uac >> O> 127.0.0.1:35595 REQ(INVITE) SDP: audio=127.0.0.1:9174/2 audio=127.0.0.1/2 audio=127.0.0.1:2826/2 audio=127.0.0.1:3112/2 # << ok 168 - [uac] (?^:O>.*REQ\(INVITE\) SDP: audio=\S+) -# proxy >> I< HASH(0xaaaae0f499b8) REQ(INVITE) SDP: audio=127.0.0.1:7056/2 audio=127.0.0.1/2 audio=127.0.0.1:10402/2 audio=127.0.0.1:11188/2 +# proxy >> I< HASH(0xaaaae20592e8) REQ(INVITE) SDP: audio=127.0.0.1:9174/2 audio=127.0.0.1/2 audio=127.0.0.1:2826/2 audio=127.0.0.1:3112/2 # << ok 169 - [proxy] (?^:I<.*REQ\(INVITE\) SDP: audio=\S+) -# proxy >> O> 127.0.0.1:44941 REQ(INVITE) SDP: audio=127.0.0.1:3486/2 audio=127.0.0.1/2 audio=127.0.0.1:7354/2 audio=127.0.0.1:10942/2 +# proxy >> O> 127.0.0.1:57309 REQ(INVITE) SDP: audio=127.0.0.1:4078/2 audio=127.0.0.1/2 audio=127.0.0.1:9594/2 audio=127.0.0.1:4672/2 # << ok 170 - [proxy] (?^:O>.*REQ\(INVITE\) SDP: audio=\S+) -# uas >> I< HASH(0xaaaae0f51f88) REQ(INVITE) SDP: audio=127.0.0.1:3486/2 audio=127.0.0.1/2 audio=127.0.0.1:7354/2 audio=127.0.0.1:10942/2 -# << -ok 171 - [uas] (?^:I<.*REQ\(INVITE\) SDP: audio=\S+) -ok 172 - outgoing on UAC must be the same as incoming on proxy -ok 173 - outgoing on proxy must be the same as incoming on UAS -ok 174 - allocated addr:port must be different (127.0.0.1:7056|127.0.0.1:3486) -ok 175 - ranges must stay the same -# uas >> O> 127.0.0.1:40657 RSP(INVITE,100) NO SDP -# << -# uas >> call created -# << -ok 176 - [uas] call created -# uas >> INVITE you.uas@example.com SIP/2.0 -# Via: SIP/2.0/TCP 127.0.0.1:59217;branch=z9hG4bK845fb6fb04dac9d0cc5011bd59e8162835f53ec8c642cc0bd5dbf31fe94de7 -# Record-route: -# Via: SIP/2.0/TCP 127.0.0.1:34659;branch=z9hG4bK13f59efc90f8ed4530caa4f4737dd8dc35f53ec8c642cc043b4f109e22ca64 -# Record-route: +# uas >> I< HASH(0xaaaae205df40) REQ(INVITE) SDP: audio=127.0.0.1:4078/2 audio=127.0.0.1/2 audio=127.0.0.1:9594/2 audio=127.0.0.1:4672/2 +# O> 127.0.0.1:46731 RSP(INVITE,100) NO SDP +# call created +# INVITE you.uas@example.com SIP/2.0 +# Via: SIP/2.0/TCP 127.0.0.1:56007;branch=z9hG4bK486037fa378c08e69e2dd3d4ec22fba00b406dbb4628ebc26a825531429f97 +# Record-route: +# Via: SIP/2.0/TCP 127.0.0.1:35595;branch=z9hG4bKc54c93bab8e1851d186b0c5f813578160b406dbb4628ebca81c48769691d23 +# Record-route: # Supported: # Allow: INVITE, ACK, OPTIONS, CANCEL, BYE -# Via: SIP/2.0/TCP 127.0.0.1:43011;branch=z9hG4bKbf8cdb35376f07f8e6577cddbfce0aee35f53ec8c642cc0e94dcfe4eb48175 -# Call-id: 579fc4c80b1a3e377699861301ea2c9b +# Via: SIP/2.0/TCP 127.0.0.1:43671;branch=z9hG4bK4530b115e1de74f53415ebc35e41fc900b406dbb4628ebce808565c577dff0 +# Call-id: 699b1384f2fa435199c4c185a79450de # Cseq: 1 INVITE -# From: me.uac@example.com;tag=040c83618c3494afe55e24ce500bcebd +# From: me.uac@example.com;tag=6c981c37850b748b79d2ddf187deb6c3 # Content-type: application/sdp +# Content-length: 188 # Max-forwards: 69 -# Contact: sip:bOG3QGLL4KPASY3BN4DJ6QXX6Z7O35R76TPS2YU6NQM3PBZHX5XAY6OA@127.0.0.1:59217 -# Content-length: 189 -# To: you.uas@example.com;tag=db69b0271f2324d73afa71bc0357ee13 +# Contact: sip:b3A7D3GRJDY6WFWXQTKBCKAT37XIPUDN7HGKEKBVKEOTGO5HVLOSWMFA@127.0.0.1:56007 +# To: you.uas@example.com;tag=d205f01266e5dabc0071d72c23813177 # # v=0 -# o=anonymous 1715681169 1715681169 IN IP4 127.0.0.1 +# o=anonymous 1750091803 1750091803 IN IP4 127.0.0.1 # s=session # c=IN IP4 127.0.0.1 # t=0 0 -# m=audio 3486 RTP/AVP 0 +# m=audio 4078 RTP/AVP 0 # m=audio 0 RTP/AVP 0 -# m=audio 7354 RTP/AVP 0 -# m=audio 10942 RTP/AVP 0 -# << -ok 177 - [uas] (?^i:via\:\ SIP\/2\.0\/tcp\ 127\.0\.0\.1\:59217\;) -ok 178 - [uas] (?^i:via\:\ SIP\/2\.0\/tcp\ 127\.0\.0\.1\:43011\;) -# uac >> I< HASH(0xaaaae10ed098) RSP(INVITE,100) NO SDP +# m=audio 9594 RTP/AVP 0 +# m=audio 4672 RTP/AVP 0 # << -# uac >> I< HASH(0xaaaae0982920) RSP(INVITE,200) SDP: audio=127.0.0.1:11214/2 audio=127.0.0.1:3248/2 audio=127.0.0.1/2 audio=127.0.0.1:9480/2 -# << -# uac >> O> 127.0.0.1:34659 REQ(ACK) NO SDP +ok 171 - [uas] (?^:I<.*REQ\(INVITE\) SDP: audio=\S+) +ok 172 - outgoing on UAC must be the same as incoming on proxy +ok 173 - outgoing on proxy must be the same as incoming on UAS +ok 174 - allocated addr:port must be different (127.0.0.1:9174|127.0.0.1:4078) +ok 175 - ranges must stay the same +ok 176 - [uas] call created +ok 177 - [uas] (?^i:via\:\ SIP\/2\.0\/tcp\ 127\.0\.0\.1\:56007\;) +ok 178 - [uas] (?^i:via\:\ SIP\/2\.0\/tcp\ 127\.0\.0\.1\:43671\;) +# uac >> I< HASH(0xaaaae21fa0d8) RSP(INVITE,100) NO SDP # << -# uac >> Start RTP +# uac >> I< HASH(0xaaaae21e2220) RSP(INVITE,200) SDP: audio=127.0.0.1:10652/2 audio=127.0.0.1:10004/2 audio=127.0.0.1/2 audio=127.0.0.1:4124/2 +# O> 127.0.0.1:35595 REQ(ACK) NO SDP +# Start RTP # << # uac >> RTP#100# # << # uac >> got rtp packet#100 # Send BYE +# O> 127.0.0.1:35595 REQ(BYE) NO SDP # << -# uac >> O> 127.0.0.1:34659 REQ(BYE) NO SDP -# << -# uac >> I< HASH(0xaaaae10d89c0) RSP(BYE,200) NO SDP -# << -# uac >> BYE done (1 1 0 1 -- 1 0 1 1) +# uac >> I< HASH(0xaaaae21e2800) RSP(BYE,200) NO SDP +# BYE done (1 1 0 1 -- 1 0 1 1) # << ok 179 - [uac] BYE done (1 1 0 1 -- 1 0 1 1) -# uas >> O> 127.0.0.1:40657 RSP(INVITE,200) SDP: audio=127.0.0.1:5498/2 audio=127.0.0.1:10922/2 audio=127.0.0.1/2 audio=127.0.0.1:9010/2 -# I< HASH(0xaaaae0f4e708) REQ(ACK) NO SDP +# uas >> O> 127.0.0.1:46731 RSP(INVITE,200) SDP: audio=127.0.0.1:9292/2 audio=127.0.0.1:9632/2 audio=127.0.0.1/2 audio=127.0.0.1:10562/2 +# I< HASH(0xaaaae206c7e0) REQ(ACK) NO SDP # call established # Start RTP # RTP#100# -# I< HASH(0xaaaae0f3a8c8) REQ(BYE) NO SDP -# O> 127.0.0.1:40657 RSP(BYE,200) NO SDP +# I< HASH(0xaaaae2067100) REQ(BYE) NO SDP +# O> 127.0.0.1:46731 RSP(BYE,200) NO SDP # Call done (1 0 1 1 -- 1 1 0 1) # << ok 180 - [uas] Call done (1 0 1 1 -- 1 1 0 1) # ------- test with family ip6 transport tcp no-nat -# UAS on [::1]:50047 -# UAC on [::1]:35041 -# PROXY on [::1]:54323 [::1]:49887 +# UAS on [::1]:59751 +# UAC on [::1]:50589 +# PROXY on [::1]:43471 [::1]:55257 ok 181 - no fork nathelper # proxy >> OK +# ready # << ok 182 - [proxy] OK # uas >> OK +# ready # << ok 183 - [uas] OK -# proxy >> ready -# << ok 184 - [proxy] ready -# uas >> ready -# << ok 185 - [uas] ready # uac >> OK +# ready # << ok 186 - [uac] OK -# uac >> ready -# << ok 187 - [uac] ready -# uac >> O> [::1]:54323 REQ(INVITE) SDP: audio=[::1]:7516/2 audio=::1/2 audio=[::1]:10262/2 audio=[::1]:11906/2 +# uac >> O> [::1]:43471 REQ(INVITE) SDP: audio=[::1]:2372/2 audio=::1/2 audio=[::1]:11110/2 audio=[::1]:2488/2 # << ok 188 - [uac] (?^:O>.*REQ\(INVITE\) SDP: audio=\S+) -# proxy >> I< HASH(0xaaaae0f4bdd0) REQ(INVITE) SDP: audio=[::1]:7516/2 audio=::1/2 audio=[::1]:10262/2 audio=[::1]:11906/2 +# proxy >> I< HASH(0xaaaae205b490) REQ(INVITE) SDP: audio=[::1]:2372/2 audio=::1/2 audio=[::1]:11110/2 audio=[::1]:2488/2 +# O> [::1]:59751 REQ(INVITE) SDP: audio=[::1]:2372/2 audio=::1/2 audio=[::1]:11110/2 audio=[::1]:2488/2 # << ok 189 - [proxy] (?^:I<.*REQ\(INVITE\) SDP: audio=\S+) -# proxy >> O> [::1]:50047 REQ(INVITE) SDP: audio=[::1]:7516/2 audio=::1/2 audio=[::1]:10262/2 audio=[::1]:11906/2 -# << ok 190 - [proxy] (?^:O>.*REQ\(INVITE\) SDP: audio=\S+) -# uas >> I< HASH(0xaaaae0f52910) REQ(INVITE) SDP: audio=[::1]:7516/2 audio=::1/2 audio=[::1]:10262/2 audio=[::1]:11906/2 -# << -ok 191 - [uas] (?^:I<.*REQ\(INVITE\) SDP: audio=\S+) -ok 192 - outgoing on UAC must be the same as incoming on proxy -ok 193 - outgoing on proxy must be the same as incoming on UAS -ok 194 - SDP must pass unchanged to UAS -ok 195 - dummy -# uas >> O> [::1]:44647 RSP(INVITE,100) NO SDP -# << -# uas >> call created -# << -ok 196 - [uas] call created -# uas >> INVITE you.uas@example.com SIP/2.0 -# Via: SIP/2.0/TCP [::1]:49887;branch=z9hG4bKab887e7f6eadf10fef145dcec5d4b82d59d7c84ea4d0226a4a7f5dc4ddbe72 -# Record-route: -# Via: SIP/2.0/TCP [::1]:54323;branch=z9hG4bK98f90a58ca559dddda56b91bc8c83ee159d7c84ea4d022630396a5caa7441a -# Record-route: +# uas >> I< HASH(0xaaaae2061fa0) REQ(INVITE) SDP: audio=[::1]:2372/2 audio=::1/2 audio=[::1]:11110/2 audio=[::1]:2488/2 +# O> [::1]:46343 RSP(INVITE,100) NO SDP +# call created +# INVITE you.uas@example.com SIP/2.0 +# Via: SIP/2.0/TCP [::1]:55257;branch=z9hG4bK44fd9eecdb3ca79b1a24614b6311155c4bd2d3b32c58a7c3fae91fe130dd05 +# Record-route: +# Via: SIP/2.0/TCP [::1]:43471;branch=z9hG4bK252436a807c3b43b47d163c87fd6161b4bd2d3b32c58a7c761427d7afd1850 +# Record-route: # Supported: # Allow: INVITE, ACK, OPTIONS, CANCEL, BYE -# Via: SIP/2.0/TCP [::1]:35041;branch=z9hG4bKd5b03ef6f73f482d3d124522e263a8ae59d7c84ea4d022645f61011dfbb54e -# Call-id: cb637b3d39c5f1011e084181e2426c8a +# Via: SIP/2.0/TCP [::1]:50589;branch=z9hG4bKa21d5294dd810f5f78f7aa1a05f9e7a94bd2d3b32c58a7cc7b74f9b2982557 +# Call-id: 064e453a832dcaa9e8f3fb76c8fba3d5 # Cseq: 1 INVITE -# From: me.uac@example.com;tag=e18d0ed425f88f249efbe29ff9a4743c +# From: me.uac@example.com;tag=e100c79f6716dadf1925cb2cc1750dea # Content-type: application/sdp -# Content-length: 178 +# Content-length: 177 # Max-forwards: 69 -# Contact: sip:bZUGDXLGMJZ33PC4Z625JCMRRWTMY2BLBTA6JXTCUGB2E7VTA@[::1]:49887 -# To: you.uas@example.com;tag=2411b220300c8ef6d3654bdb862f44db +# Contact: sip:bYWAZPBPZKOHOJO2DDCFWYWMCUNJOQL53QNFONEU3TEQIF4GJ@[::1]:55257 +# To: you.uas@example.com;tag=bf67ced8aec9105bb9b04df5fbd55d3e # # v=0 -# o=anonymous 1715681169 1715681169 IN IP6 ::1 +# o=anonymous 1750091804 1750091804 IN IP6 ::1 # s=session # c=IN IP6 ::1 # t=0 0 -# m=audio 7516 RTP/AVP 0 +# m=audio 2372 RTP/AVP 0 # m=audio 0 RTP/AVP 0 -# m=audio 10262 RTP/AVP 0 -# m=audio 11906 RTP/AVP 0 -# << -ok 197 - [uas] (?^i:via\:\ SIP\/2\.0\/tcp\ \[\:\:1\]\:49887\;) -ok 198 - [uas] (?^i:via\:\ SIP\/2\.0\/tcp\ \[\:\:1\]\:35041\;) -# uac >> I< HASH(0xaaaae10db910) RSP(INVITE,100) NO SDP +# m=audio 11110 RTP/AVP 0 +# m=audio 2488 RTP/AVP 0 # << -# uac >> I< HASH(0xaaaae0982920) RSP(INVITE,200) SDP: audio=[::1]:6700/2 audio=[::1]:4004/2 audio=::1/2 audio=[::1]:3368/2 -# << -# uac >> O> [::1]:54323 REQ(ACK) NO SDP +ok 191 - [uas] (?^:I<.*REQ\(INVITE\) SDP: audio=\S+) +ok 192 - outgoing on UAC must be the same as incoming on proxy +ok 193 - outgoing on proxy must be the same as incoming on UAS +ok 194 - SDP must pass unchanged to UAS +ok 195 - dummy +ok 196 - [uas] call created +ok 197 - [uas] (?^i:via\:\ SIP\/2\.0\/tcp\ \[\:\:1\]\:55257\;) +ok 198 - [uas] (?^i:via\:\ SIP\/2\.0\/tcp\ \[\:\:1\]\:50589\;) +# uac >> I< HASH(0xaaaae21e84d0) RSP(INVITE,100) NO SDP # << -# uac >> Start RTP +# uac >> I< HASH(0xaaaae21e8518) RSP(INVITE,200) SDP: audio=[::1]:11972/2 audio=[::1]:2942/2 audio=::1/2 audio=[::1]:6100/2 +# O> [::1]:43471 REQ(ACK) NO SDP +# Start RTP # << # uac >> RTP#100# # << # uac >> got rtp packet#100 # Send BYE +# O> [::1]:43471 REQ(BYE) NO SDP # << -# uac >> O> [::1]:54323 REQ(BYE) NO SDP -# << -# uac >> I< HASH(0xaaaae10da778) RSP(BYE,200) NO SDP -# << -# uac >> BYE done (1 1 0 1 -- 1 0 1 1) +# uac >> I< HASH(0xaaaae21e6a08) RSP(BYE,200) NO SDP +# BYE done (1 1 0 1 -- 1 0 1 1) # << ok 199 - [uac] BYE done (1 1 0 1 -- 1 0 1 1) -# uas >> O> [::1]:44647 RSP(INVITE,200) SDP: audio=[::1]:6700/2 audio=[::1]:4004/2 audio=::1/2 audio=[::1]:3368/2 -# I< HASH(0xaaaae0f527d8) REQ(ACK) NO SDP +# uas >> O> [::1]:46343 RSP(INVITE,200) SDP: audio=[::1]:11972/2 audio=[::1]:2942/2 audio=::1/2 audio=[::1]:6100/2 +# I< HASH(0xaaaae206a820) REQ(ACK) NO SDP # call established # Start RTP # RTP#100# -# I< HASH(0xaaaae0f3e338) REQ(BYE) NO SDP -# O> [::1]:44647 RSP(BYE,200) NO SDP +# I< HASH(0xaaaae2069f68) REQ(BYE) NO SDP +# O> [::1]:46343 RSP(BYE,200) NO SDP # Call done (1 0 1 1 -- 1 1 0 1) # << ok 200 - [uas] Call done (1 0 1 1 -- 1 1 0 1) # ------- test with family ip6 transport tcp inline-nat -# UAS on [::1]:48505 -# UAC on [::1]:34273 -# PROXY on [::1]:37389 [::1]:52125 +# UAS on [::1]:38181 +# UAC on [::1]:52691 +# PROXY on [::1]:37053 [::1]:42813 ok 201 - no fork nathelper # proxy >> OK +# ready # << ok 202 - [proxy] OK # uas >> OK +# ready # << ok 203 - [uas] OK -# proxy >> ready -# << ok 204 - [proxy] ready -# uas >> ready -# << ok 205 - [uas] ready # uac >> OK +# ready # << ok 206 - [uac] OK -# uac >> ready -# << ok 207 - [uac] ready -# uac >> O> [::1]:37389 REQ(INVITE) SDP: audio=[::1]:4522/2 audio=::1/2 audio=[::1]:5940/2 audio=[::1]:3024/2 +# uac >> O> [::1]:37053 REQ(INVITE) SDP: audio=[::1]:3036/2 audio=::1/2 audio=[::1]:6038/2 audio=[::1]:7926/2 # << ok 208 - [uac] (?^:O>.*REQ\(INVITE\) SDP: audio=\S+) -# proxy >> I< HASH(0xaaaae0f4fb90) REQ(INVITE) SDP: audio=[::1]:4522/2 audio=::1/2 audio=[::1]:5940/2 audio=[::1]:3024/2 +# proxy >> I< HASH(0xaaaae205f800) REQ(INVITE) SDP: audio=[::1]:3036/2 audio=::1/2 audio=[::1]:6038/2 audio=[::1]:7926/2 # << ok 209 - [proxy] (?^:I<.*REQ\(INVITE\) SDP: audio=\S+) -# proxy >> O> [::1]:48505 REQ(INVITE) SDP: audio=[::1]:6418/2 audio=::1/2 audio=[::1]:9428/2 audio=[::1]:9878/2 +# proxy >> O> [::1]:38181 REQ(INVITE) SDP: audio=[::1]:4338/2 audio=::1/2 audio=[::1]:8548/2 audio=[::1]:2388/2 # << ok 210 - [proxy] (?^:O>.*REQ\(INVITE\) SDP: audio=\S+) -# uas >> I< HASH(0xaaaae0f56ef8) REQ(INVITE) SDP: audio=[::1]:6418/2 audio=::1/2 audio=[::1]:9428/2 audio=[::1]:9878/2 +# uas >> I< HASH(0xaaaae2066bc8) REQ(INVITE) SDP: audio=[::1]:4338/2 audio=::1/2 audio=[::1]:8548/2 audio=[::1]:2388/2 # << ok 211 - [uas] (?^:I<.*REQ\(INVITE\) SDP: audio=\S+) ok 212 - outgoing on UAC must be the same as incoming on proxy ok 213 - outgoing on proxy must be the same as incoming on UAS -ok 214 - allocated addr:port must be different ([::1]:4522|[::1]:6418) +ok 214 - allocated addr:port must be different ([::1]:3036|[::1]:4338) ok 215 - ranges must stay the same -# uas >> O> [::1]:41355 RSP(INVITE,100) NO SDP -# << -# uas >> call created -# << -ok 216 - [uas] call created -# uas >> INVITE you.uas@example.com SIP/2.0 -# Via: SIP/2.0/TCP [::1]:52125;branch=z9hG4bKc9672628db994402130e60fd9ea43fb0f1d62bced3a42c27fa4054c8679173 -# Record-route: -# Via: SIP/2.0/TCP [::1]:37389;branch=z9hG4bKf17c683d889f4ef972a20c606dc1dff7f1d62bced3a42c20d0df0c35d2bea7 -# Record-route: +# uas >> O> [::1]:46413 RSP(INVITE,100) NO SDP +# call created +# INVITE you.uas@example.com SIP/2.0 +# Via: SIP/2.0/TCP [::1]:42813;branch=z9hG4bK459bf8e23dde5356b0ff131d8ff094158dc8ee19d593a52681e566b26173c2 +# Record-route: +# Via: SIP/2.0/TCP [::1]:37053;branch=z9hG4bK12d8b5117c7ddedf517c15ce2f0aa66e8dc8ee19d593a52549288b9fb35ea6 +# Record-route: # Supported: # Allow: INVITE, ACK, OPTIONS, CANCEL, BYE -# Via: SIP/2.0/TCP [::1]:34273;branch=z9hG4bKd82474992e68db5eb70a41646cb8ab5bf1d62bced3a42c28d42d33ec6b9d60 -# Call-id: 983e5840ebd7a9b232725b5c9f662594 +# Via: SIP/2.0/TCP [::1]:52691;branch=z9hG4bKe71a47da33cdcbb55be3afa7a5e1ad208dc8ee19d593a52f74a2c7ee9a4148 +# Call-id: 1f8e5f9f1db8e057682f5c6f304bbdb3 # Cseq: 1 INVITE -# From: me.uac@example.com;tag=a05ecd82f765c3e129a07dc4b10fa269 +# From: me.uac@example.com;tag=4015671368637d70972429c1d09c8a91 # Content-type: application/sdp # Content-length: 176 # Max-forwards: 69 -# Contact: sip:bMBPJ2URUNVAUD72NLBIOP6KRUEKYWCCJNIL2IRDIZA72GWWP@[::1]:52125 -# To: you.uas@example.com;tag=53030fce3f3d1bbf6cfefda28d7b1b87 +# Contact: sip:bKC45XTGQRIIDZ2E7JHICZ6RQZK67LV3XEZ6CIKKRQHT3P2IE@[::1]:42813 +# To: you.uas@example.com;tag=5989ac32c480d9faa3ab27a6eb624205 # # v=0 -# o=anonymous 1715681170 1715681170 IN IP6 ::1 +# o=anonymous 1750091805 1750091805 IN IP6 ::1 # s=session # c=IN IP6 ::1 # t=0 0 -# m=audio 6418 RTP/AVP 0 +# m=audio 4338 RTP/AVP 0 # m=audio 0 RTP/AVP 0 -# m=audio 9428 RTP/AVP 0 -# m=audio 9878 RTP/AVP 0 +# m=audio 8548 RTP/AVP 0 +# m=audio 2388 RTP/AVP 0 # << -ok 217 - [uas] (?^i:via\:\ SIP\/2\.0\/tcp\ \[\:\:1\]\:52125\;) -ok 218 - [uas] (?^i:via\:\ SIP\/2\.0\/tcp\ \[\:\:1\]\:34273\;) -# uac >> I< HASH(0xaaaae10ddcc8) RSP(INVITE,100) NO SDP -# << -# uac >> I< HASH(0xaaaae08cbae0) RSP(INVITE,200) SDP: audio=[::1]:7578/2 audio=[::1]:11152/2 audio=::1/2 audio=[::1]:9552/2 -# << -# uac >> O> [::1]:37389 REQ(ACK) NO SDP +ok 216 - [uas] call created +ok 217 - [uas] (?^i:via\:\ SIP\/2\.0\/tcp\ \[\:\:1\]\:42813\;) +ok 218 - [uas] (?^i:via\:\ SIP\/2\.0\/tcp\ \[\:\:1\]\:52691\;) +# uac >> I< HASH(0xaaaae21eae68) RSP(INVITE,100) NO SDP # << -# uac >> Start RTP +# uac >> I< HASH(0xaaaae21e6eb0) RSP(INVITE,200) SDP: audio=[::1]:3690/2 audio=[::1]:2818/2 audio=::1/2 audio=[::1]:3160/2 +# O> [::1]:37053 REQ(ACK) NO SDP +# Start RTP # << # uac >> RTP#100# # << # uac >> got rtp packet#100 # Send BYE +# O> [::1]:37053 REQ(BYE) NO SDP # << -# uac >> O> [::1]:37389 REQ(BYE) NO SDP -# << -# uac >> I< HASH(0xaaaae10dcd10) RSP(BYE,200) NO SDP -# << -# uac >> BYE done (1 1 0 1 -- 1 0 1 1) +# uac >> I< HASH(0xaaaae20493e0) RSP(BYE,200) NO SDP +# BYE done (1 1 0 1 -- 1 0 1 1) # << ok 219 - [uac] BYE done (1 1 0 1 -- 1 0 1 1) -# uas >> O> [::1]:41355 RSP(INVITE,200) SDP: audio=[::1]:11276/2 audio=[::1]:2310/2 audio=::1/2 audio=[::1]:5860/2 -# I< HASH(0xaaaae0f56e80) REQ(ACK) NO SDP +# uas >> O> [::1]:46413 RSP(INVITE,200) SDP: audio=[::1]:6400/2 audio=[::1]:5288/2 audio=::1/2 audio=[::1]:11572/2 +# I< HASH(0xaaaae206e0a8) REQ(ACK) NO SDP # call established # Start RTP # RTP#100# -# I< HASH(0xaaaae10fe580) REQ(BYE) NO SDP -# O> [::1]:41355 RSP(BYE,200) NO SDP +# I< HASH(0xaaaae206d7f0) REQ(BYE) NO SDP +# O> [::1]:46413 RSP(BYE,200) NO SDP # Call done (1 0 1 1 -- 1 1 0 1) # << ok 220 - [uas] Call done (1 0 1 1 -- 1 1 0 1) # ------- test with family ip6 transport tcp remote-nat -# UAS on [::1]:54521 -# UAC on [::1]:38753 -# PROXY on [::1]:46079 [::1]:35113 +# UAS on [::1]:45661 +# UAC on [::1]:42453 +# PROXY on [::1]:33539 [::1]:60955 # nathelper >> OK # << ok 221 - [nathelper] OK # proxy >> OK +# ready # << ok 222 - [proxy] OK # uas >> OK +# ready # << ok 223 - [uas] OK -# proxy >> ready -# << ok 224 - [proxy] ready -# uas >> ready -# << ok 225 - [uas] ready # uac >> OK +# ready # << ok 226 - [uac] OK -# uac >> ready -# << ok 227 - [uac] ready -# uac >> O> [::1]:46079 REQ(INVITE) SDP: audio=[::1]:10194/2 audio=::1/2 audio=[::1]:3904/2 audio=[::1]:10004/2 +# uac >> O> [::1]:33539 REQ(INVITE) SDP: audio=[::1]:8900/2 audio=::1/2 audio=[::1]:5954/2 audio=[::1]:4664/2 # << ok 228 - [uac] (?^:O>.*REQ\(INVITE\) SDP: audio=\S+) -# proxy >> I< HASH(0xaaaae0f52f90) REQ(INVITE) SDP: audio=[::1]:10194/2 audio=::1/2 audio=[::1]:3904/2 audio=[::1]:10004/2 +# proxy >> I< HASH(0xaaaae2062950) REQ(INVITE) SDP: audio=[::1]:8900/2 audio=::1/2 audio=[::1]:5954/2 audio=[::1]:4664/2 # << ok 229 - [proxy] (?^:I<.*REQ\(INVITE\) SDP: audio=\S+) -# proxy >> O> [::1]:54521 REQ(INVITE) SDP: audio=[::1]:2254/2 audio=::1/2 audio=[::1]:5196/2 audio=[::1]:11578/2 +# proxy >> O> [::1]:45661 REQ(INVITE) SDP: audio=[::1]:9228/2 audio=::1/2 audio=[::1]:8976/2 audio=[::1]:10546/2 # << ok 230 - [proxy] (?^:O>.*REQ\(INVITE\) SDP: audio=\S+) -# uas >> I< HASH(0xaaaae0f59e48) REQ(INVITE) SDP: audio=[::1]:2254/2 audio=::1/2 audio=[::1]:5196/2 audio=[::1]:11578/2 -# << -ok 231 - [uas] (?^:I<.*REQ\(INVITE\) SDP: audio=\S+) -ok 232 - outgoing on UAC must be the same as incoming on proxy -ok 233 - outgoing on proxy must be the same as incoming on UAS -ok 234 - allocated addr:port must be different ([::1]:10194|[::1]:2254) -ok 235 - ranges must stay the same -# uas >> O> [::1]:33803 RSP(INVITE,100) NO SDP -# << -# uas >> call created -# << -ok 236 - [uas] call created -# uas >> INVITE you.uas@example.com SIP/2.0 -# Via: SIP/2.0/TCP [::1]:35113;branch=z9hG4bK40312e43880931b2fee97a70499382a1c3227cb81d88ff67b2ebea8d17789a -# Record-route: -# Via: SIP/2.0/TCP [::1]:46079;branch=z9hG4bKce9be7906b2691c17faf90405ea9634dc3227cb81d88ff68fc7b2ebb2e7177 -# Record-route: +# uas >> I< HASH(0xaaaae20698f8) REQ(INVITE) SDP: audio=[::1]:9228/2 audio=::1/2 audio=[::1]:8976/2 audio=[::1]:10546/2 +# O> [::1]:46119 RSP(INVITE,100) NO SDP +# call created +# INVITE you.uas@example.com SIP/2.0 +# Via: SIP/2.0/TCP [::1]:60955;branch=z9hG4bKba0be35a9daa1c003cc81a5dca2c54a09ce9e1c82bf43ac358487535e8aca6 +# Record-route: +# Via: SIP/2.0/TCP [::1]:33539;branch=z9hG4bK605f4833abef20605339cff061d9cae69ce9e1c82bf43ace54c7be4741c450 +# Record-route: # Supported: # Allow: INVITE, ACK, OPTIONS, CANCEL, BYE -# Via: SIP/2.0/TCP [::1]:38753;branch=z9hG4bKcaa8e30d4811c55838285a69324b52bac3227cb81d88ff607abc4b4bd967fa -# Call-id: cea03efd81d84943515f3e01d7645ef9 +# Via: SIP/2.0/TCP [::1]:42453;branch=z9hG4bKabd619aec61c1450c85b0bc4f94aa0709ce9e1c82bf43acee81ae80cb2f056 +# Call-id: 15e707e0a84bc78c538da6df966dea70 # Cseq: 1 INVITE -# From: me.uac@example.com;tag=8dfda85c0a13075194573c919e4332b1 +# From: me.uac@example.com;tag=f96ba9d8c6abebfae6870034be68f67e # Content-type: application/sdp # Max-forwards: 69 -# Contact: sip:bBLDNR66BYKIO77GHEORNRED37BQIXVVIMMMJWBP7YX2RFNQ5@[::1]:35113 +# Contact: sip:bKSC7SGBNZWBVFDNREZNYJMA4HV5RRUYT7Z4BUZWTI7JBVLGE@[::1]:60955 # Content-length: 177 -# To: you.uas@example.com;tag=64a47b77cf8435069e7a0a328c9d3790 +# To: you.uas@example.com;tag=97cd3efb2041f72ec6dc8b512102cdd7 # # v=0 -# o=anonymous 1715681171 1715681171 IN IP6 ::1 +# o=anonymous 1750091806 1750091806 IN IP6 ::1 # s=session # c=IN IP6 ::1 # t=0 0 -# m=audio 2254 RTP/AVP 0 +# m=audio 9228 RTP/AVP 0 # m=audio 0 RTP/AVP 0 -# m=audio 5196 RTP/AVP 0 -# m=audio 11578 RTP/AVP 0 -# << -ok 237 - [uas] (?^i:via\:\ SIP\/2\.0\/tcp\ \[\:\:1\]\:35113\;) -ok 238 - [uas] (?^i:via\:\ SIP\/2\.0\/tcp\ \[\:\:1\]\:38753\;) -# uac >> I< HASH(0xaaaae10dfc18) RSP(INVITE,100) NO SDP +# m=audio 8976 RTP/AVP 0 +# m=audio 10546 RTP/AVP 0 # << -# uac >> I< HASH(0xaaaae0982920) RSP(INVITE,200) SDP: audio=[::1]:2934/2 audio=[::1]:8728/2 audio=::1/2 audio=[::1]:3396/2 -# << -# uac >> O> [::1]:46079 REQ(ACK) NO SDP +ok 231 - [uas] (?^:I<.*REQ\(INVITE\) SDP: audio=\S+) +ok 232 - outgoing on UAC must be the same as incoming on proxy +ok 233 - outgoing on proxy must be the same as incoming on UAS +ok 234 - allocated addr:port must be different ([::1]:8900|[::1]:9228) +ok 235 - ranges must stay the same +ok 236 - [uas] call created +ok 237 - [uas] (?^i:via\:\ SIP\/2\.0\/tcp\ \[\:\:1\]\:60955\;) +ok 238 - [uas] (?^i:via\:\ SIP\/2\.0\/tcp\ \[\:\:1\]\:42453\;) +# uac >> I< HASH(0xaaaae21ed7b8) RSP(INVITE,100) NO SDP # << -# uac >> Start RTP +# uac >> I< HASH(0xaaaae21ec318) RSP(INVITE,200) SDP: audio=[::1]:4294/2 audio=[::1]:5342/2 audio=::1/2 audio=[::1]:7628/2 +# O> [::1]:33539 REQ(ACK) NO SDP +# Start RTP # << # uac >> RTP#100# # << # uac >> got rtp packet#100 # Send BYE +# O> [::1]:33539 REQ(BYE) NO SDP # << -# uac >> O> [::1]:46079 REQ(BYE) NO SDP -# << -# uac >> I< HASH(0xaaaae10df540) RSP(BYE,200) NO SDP -# << -# uac >> BYE done (1 1 0 1 -- 1 0 1 1) +# uac >> I< HASH(0xaaaae21ed728) RSP(BYE,200) NO SDP +# BYE done (1 1 0 1 -- 1 0 1 1) # << ok 239 - [uac] BYE done (1 1 0 1 -- 1 0 1 1) -# uas >> O> [::1]:33803 RSP(INVITE,200) SDP: audio=[::1]:2098/2 audio=[::1]:6266/2 audio=::1/2 audio=[::1]:4316/2 -# I< HASH(0xaaaae0f59dd0) REQ(ACK) NO SDP +# uas >> O> [::1]:46119 RSP(INVITE,200) SDP: audio=[::1]:4776/2 audio=[::1]:6242/2 audio=::1/2 audio=[::1]:2266/2 +# I< HASH(0xaaaae2071d08) REQ(ACK) NO SDP # call established # Start RTP # RTP#100# -# I< HASH(0xaaaae0f61348) REQ(BYE) NO SDP -# O> [::1]:33803 RSP(BYE,200) NO SDP +# I< HASH(0xaaaae2218ba0) REQ(BYE) NO SDP +# O> [::1]:46119 RSP(BYE,200) NO SDP # Call done (1 0 1 1 -- 1 1 0 1) # << ok 240 - [uas] Call done (1 0 1 1 -- 1 1 0 1) # ------- test with family ip4 transport tls no-nat -# UAS on 127.0.0.1:36109 -# UAC on 127.0.0.1:52847 -# PROXY on 127.0.0.1:56691 127.0.0.1:50289 +# UAS on 127.0.0.1:35631 +# UAC on 127.0.0.1:50911 +# PROXY on 127.0.0.1:46513 127.0.0.1:33763 ok 241 - no fork nathelper # proxy >> OK +# ready # << ok 242 - [proxy] OK # uas >> OK +# ready # << ok 243 - [uas] OK -# proxy >> ready -# << ok 244 - [proxy] ready -# uas >> ready -# << ok 245 - [uas] ready # uac >> OK +# ready # << ok 246 - [uac] OK -# uac >> ready -# << ok 247 - [uac] ready -# uac >> O> 127.0.0.1:56691 REQ(INVITE) SDP: audio=127.0.0.1:11244/2 audio=127.0.0.1/2 audio=127.0.0.1:7044/2 audio=127.0.0.1:11092/2 +# uac >> O> 127.0.0.1:46513 REQ(INVITE) SDP: audio=127.0.0.1:10828/2 audio=127.0.0.1/2 audio=127.0.0.1:7890/2 audio=127.0.0.1:11166/2 # << ok 248 - [uac] (?^:O>.*REQ\(INVITE\) SDP: audio=\S+) -# proxy >> I< HASH(0xaaaae12c6540) REQ(INVITE) SDP: audio=127.0.0.1:11244/2 audio=127.0.0.1/2 audio=127.0.0.1:7044/2 audio=127.0.0.1:11092/2 +# proxy >> I< HASH(0xaaaae23d5ef0) REQ(INVITE) SDP: audio=127.0.0.1:10828/2 audio=127.0.0.1/2 audio=127.0.0.1:7890/2 audio=127.0.0.1:11166/2 +# O> 127.0.0.1:35631 REQ(INVITE) SDP: audio=127.0.0.1:10828/2 audio=127.0.0.1/2 audio=127.0.0.1:7890/2 audio=127.0.0.1:11166/2 # << ok 249 - [proxy] (?^:I<.*REQ\(INVITE\) SDP: audio=\S+) -# proxy >> O> 127.0.0.1:36109 REQ(INVITE) SDP: audio=127.0.0.1:11244/2 audio=127.0.0.1/2 audio=127.0.0.1:7044/2 audio=127.0.0.1:11092/2 -# << ok 250 - [proxy] (?^:O>.*REQ\(INVITE\) SDP: audio=\S+) -# uas >> I< HASH(0xaaaae12dacf0) REQ(INVITE) SDP: audio=127.0.0.1:11244/2 audio=127.0.0.1/2 audio=127.0.0.1:7044/2 audio=127.0.0.1:11092/2 -# << -ok 251 - [uas] (?^:I<.*REQ\(INVITE\) SDP: audio=\S+) -ok 252 - outgoing on UAC must be the same as incoming on proxy -ok 253 - outgoing on proxy must be the same as incoming on UAS -ok 254 - SDP must pass unchanged to UAS -ok 255 - dummy -# uas >> O> 127.0.0.1:33393 RSP(INVITE,100) NO SDP -# << -# uas >> call created -# << -ok 256 - [uas] call created -# uas >> INVITE you.uas@example.com SIP/2.0 -# Via: SIP/2.0/TLS 127.0.0.1:50289;branch=z9hG4bK95bc6fa9de5dfe61a0f724397cd3ec0d8aede6c83d3d2b7848418649c5f5e2 -# Record-route: -# Via: SIP/2.0/TLS 127.0.0.1:56691;branch=z9hG4bK7c350ffe3db8f1d9d57471d6248befcd8aede6c83d3d2b7fbfaae505eadfbe -# Record-route: +# uas >> I< HASH(0xaaaae23de6c0) REQ(INVITE) SDP: audio=127.0.0.1:10828/2 audio=127.0.0.1/2 audio=127.0.0.1:7890/2 audio=127.0.0.1:11166/2 +# O> 127.0.0.1:39125 RSP(INVITE,100) NO SDP +# call created +# INVITE you.uas@example.com SIP/2.0 +# Via: SIP/2.0/TLS 127.0.0.1:33763;branch=z9hG4bK8cec9af086bc2f2df2b7d45b8be31bb217f28454dacc6f5f4fe51e870460a4 +# Record-route: +# Via: SIP/2.0/TLS 127.0.0.1:46513;branch=z9hG4bK246ff3a893dc6c3921ab1d957cb771bf17f28454dacc6f5b3accf3063e2f50 +# Record-route: # Supported: # Allow: INVITE, ACK, OPTIONS, CANCEL, BYE -# Via: SIP/2.0/TLS 127.0.0.1:52847;branch=z9hG4bKb9573e6636db07f1cddea27b0bfff4c38aede6c83d3d2b7bfde2497eed7163 -# Call-id: 10ad5c25759ec97856a63833832b0bf1 +# Via: SIP/2.0/TLS 127.0.0.1:50911;branch=z9hG4bK0ad81b3f55c249894dd82822624eeb8917f28454dacc6f50656285698881c5 +# Call-id: d475b14b46a81078437f117525619a35 # Cseq: 1 INVITE -# From: me.uac@example.com;tag=bab8aafe4952da886377126cda7dcd2b +# From: me.uac@example.com;tag=9b6f1b9964ef5d8534d326065be7718d # Content-type: application/sdp # Content-length: 190 # Max-forwards: 69 -# Contact: sips:bJDURH4EPATAOE2ZEJ36J4IQMO4JMELASEXNX3MZLIX37DOASG2RNZSQ@127.0.0.1:50289 -# To: you.uas@example.com;tag=6f51d2286d5560af010dba05a36cb2b8 +# Contact: sips:bZOWUCTZCW2ENER3GK3TLGOFYTNXBKJXU55HB4GCDNT3NCCHATMX6RZY@127.0.0.1:33763 +# To: you.uas@example.com;tag=55fdac480822ab0712e937b1c964e766 # # v=0 -# o=anonymous 1715681172 1715681172 IN IP4 127.0.0.1 +# o=anonymous 1750091807 1750091807 IN IP4 127.0.0.1 # s=session # c=IN IP4 127.0.0.1 # t=0 0 -# m=audio 11244 RTP/AVP 0 +# m=audio 10828 RTP/AVP 0 # m=audio 0 RTP/AVP 0 -# m=audio 7044 RTP/AVP 0 -# m=audio 11092 RTP/AVP 0 -# << -ok 257 - [uas] (?^i:via\:\ SIP\/2\.0\/tls\ 127\.0\.0\.1\:50289\;) -ok 258 - [uas] (?^i:via\:\ SIP\/2\.0\/tls\ 127\.0\.0\.1\:52847\;) -# uac >> I< HASH(0xaaaae1462d88) RSP(INVITE,100) NO SDP -# << -# uac >> I< HASH(0xaaaae0982920) RSP(INVITE,200) SDP: audio=127.0.0.1:11130/2 audio=127.0.0.1:6520/2 audio=127.0.0.1/2 audio=127.0.0.1:10646/2 +# m=audio 7890 RTP/AVP 0 +# m=audio 11166 RTP/AVP 0 # << -# uac >> O> 127.0.0.1:56691 REQ(ACK) NO SDP -# << -# uac >> Start RTP +ok 251 - [uas] (?^:I<.*REQ\(INVITE\) SDP: audio=\S+) +ok 252 - outgoing on UAC must be the same as incoming on proxy +ok 253 - outgoing on proxy must be the same as incoming on UAS +ok 254 - SDP must pass unchanged to UAS +ok 255 - dummy +ok 256 - [uas] call created +ok 257 - [uas] (?^i:via\:\ SIP\/2\.0\/tls\ 127\.0\.0\.1\:33763\;) +ok 258 - [uas] (?^i:via\:\ SIP\/2\.0\/tls\ 127\.0\.0\.1\:50911\;) +# uac >> I< HASH(0xaaaae25b5398) RSP(INVITE,100) NO SDP +# I< HASH(0xaaaae25b4ca8) RSP(INVITE,200) SDP: audio=127.0.0.1:5110/2 audio=127.0.0.1:2542/2 audio=127.0.0.1/2 audio=127.0.0.1:11322/2 +# O> 127.0.0.1:46513 REQ(ACK) NO SDP +# Start RTP # << # uac >> RTP#100# # << # uac >> got rtp packet#100 # Send BYE +# O> 127.0.0.1:46513 REQ(BYE) NO SDP # << -# uac >> O> 127.0.0.1:56691 REQ(BYE) NO SDP -# << -# uac >> I< HASH(0xaaaae1462d10) RSP(BYE,200) NO SDP -# << -# uac >> BYE done (1 1 0 1 -- 1 0 1 1) +# uac >> I< HASH(0xaaaae25b5308) RSP(BYE,200) NO SDP +# BYE done (1 1 0 1 -- 1 0 1 1) # << ok 259 - [uac] BYE done (1 1 0 1 -- 1 0 1 1) -# uas >> O> 127.0.0.1:33393 RSP(INVITE,200) SDP: audio=127.0.0.1:11130/2 audio=127.0.0.1:6520/2 audio=127.0.0.1/2 audio=127.0.0.1:10646/2 -# I< HASH(0xaaaae12c9ae8) REQ(ACK) NO SDP +# uas >> O> 127.0.0.1:39125 RSP(INVITE,200) SDP: audio=127.0.0.1:5110/2 audio=127.0.0.1:2542/2 audio=127.0.0.1/2 audio=127.0.0.1:11322/2 +# I< HASH(0xaaaae23dbb50) REQ(ACK) NO SDP # call established # Start RTP # RTP#100# -# I< HASH(0xaaaae12c2f80) REQ(BYE) NO SDP -# O> 127.0.0.1:33393 RSP(BYE,200) NO SDP +# I< HASH(0xaaaae25d3628) REQ(BYE) NO SDP +# O> 127.0.0.1:39125 RSP(BYE,200) NO SDP # Call done (1 0 1 1 -- 1 1 0 1) # << ok 260 - [uas] Call done (1 0 1 1 -- 1 1 0 1) # ------- test with family ip4 transport tls inline-nat -# UAS on 127.0.0.1:38661 -# UAC on 127.0.0.1:35103 -# PROXY on 127.0.0.1:50773 127.0.0.1:54997 +# UAS on 127.0.0.1:56485 +# UAC on 127.0.0.1:41203 +# PROXY on 127.0.0.1:37805 127.0.0.1:60389 ok 261 - no fork nathelper # proxy >> OK +# ready # << ok 262 - [proxy] OK # uas >> OK +# ready # << ok 263 - [uas] OK -# proxy >> ready -# << ok 264 - [proxy] ready -# uas >> ready -# << ok 265 - [uas] ready # uac >> OK +# ready # << ok 266 - [uac] OK -# uac >> ready -# << ok 267 - [uac] ready -# uac >> O> 127.0.0.1:50773 REQ(INVITE) SDP: audio=127.0.0.1:11244/2 audio=127.0.0.1/2 audio=127.0.0.1:7044/2 audio=127.0.0.1:11092/2 +# uac >> O> 127.0.0.1:37805 REQ(INVITE) SDP: audio=127.0.0.1:10828/2 audio=127.0.0.1/2 audio=127.0.0.1:7890/2 audio=127.0.0.1:11166/2 # << ok 268 - [uac] (?^:O>.*REQ\(INVITE\) SDP: audio=\S+) -# proxy >> I< HASH(0xaaaae12d9110) REQ(INVITE) SDP: audio=127.0.0.1:11244/2 audio=127.0.0.1/2 audio=127.0.0.1:7044/2 audio=127.0.0.1:11092/2 +# proxy >> I< HASH(0xaaaae23e7fd0) REQ(INVITE) SDP: audio=127.0.0.1:10828/2 audio=127.0.0.1/2 audio=127.0.0.1:7890/2 audio=127.0.0.1:11166/2 # << ok 269 - [proxy] (?^:I<.*REQ\(INVITE\) SDP: audio=\S+) -# proxy >> O> 127.0.0.1:38661 REQ(INVITE) SDP: audio=127.0.0.1:10258/2 audio=127.0.0.1/2 audio=127.0.0.1:5630/2 audio=127.0.0.1:11224/2 +# proxy >> O> 127.0.0.1:56485 REQ(INVITE) SDP: audio=127.0.0.1:3044/2 audio=127.0.0.1/2 audio=127.0.0.1:6988/2 audio=127.0.0.1:6064/2 # << ok 270 - [proxy] (?^:O>.*REQ\(INVITE\) SDP: audio=\S+) -# uas >> I< HASH(0xaaaae12d32d8) REQ(INVITE) SDP: audio=127.0.0.1:10258/2 audio=127.0.0.1/2 audio=127.0.0.1:5630/2 audio=127.0.0.1:11224/2 -# << -ok 271 - [uas] (?^:I<.*REQ\(INVITE\) SDP: audio=\S+) -ok 272 - outgoing on UAC must be the same as incoming on proxy -ok 273 - outgoing on proxy must be the same as incoming on UAS -ok 274 - allocated addr:port must be different (127.0.0.1:11244|127.0.0.1:10258) -ok 275 - ranges must stay the same -# uas >> O> 127.0.0.1:41401 RSP(INVITE,100) NO SDP -# << -# uas >> call created -# << -ok 276 - [uas] call created -# uas >> INVITE you.uas@example.com SIP/2.0 -# Via: SIP/2.0/TLS 127.0.0.1:54997;branch=z9hG4bK96b3cad92985932838f9c8aa023db7891d57de77f89f05f41fe3ac9d65cb7b -# Record-route: -# Via: SIP/2.0/TLS 127.0.0.1:50773;branch=z9hG4bKb58265fcca0b1922fb258e958bf046c01d57de77f89f05f04a323b16b9037d -# Record-route: +# uas >> I< HASH(0xaaaae23e3608) REQ(INVITE) SDP: audio=127.0.0.1:3044/2 audio=127.0.0.1/2 audio=127.0.0.1:6988/2 audio=127.0.0.1:6064/2 +# O> 127.0.0.1:41341 RSP(INVITE,100) NO SDP +# call created +# INVITE you.uas@example.com SIP/2.0 +# Via: SIP/2.0/TLS 127.0.0.1:60389;branch=z9hG4bKa6478fe9fdb16699b108d5e16413aafc80091126d18a3ea3c80c8ca8c43277 +# Record-route: +# Via: SIP/2.0/TLS 127.0.0.1:37805;branch=z9hG4bK41542989d57a4d3c162796a66937583280091126d18a3ea73013abe46f73cd +# Record-route: # Supported: # Allow: INVITE, ACK, OPTIONS, CANCEL, BYE -# Via: SIP/2.0/TLS 127.0.0.1:35103;branch=z9hG4bKa4f8d77ddf15752dd6345e69762e146b1d57de77f89f05fb666c950c715e4f -# Call-id: c0f7f1757cd54f3838a66761b1c2367d +# Via: SIP/2.0/TLS 127.0.0.1:41203;branch=z9hG4bK7e688ba191d96383cc5a04ef992677eb80091126d18a3eae3646a2bd5a8c07 +# Call-id: c5047f51b0ee6ab0ee274362916ac3ae # Cseq: 1 INVITE -# From: me.uac@example.com;tag=a0ec67744cfd5dd5b2a0287fe4b357a0 +# From: me.uac@example.com;tag=620e70cb1ccbec883e07426bce984ed8 # Content-type: application/sdp -# Content-length: 190 # Max-forwards: 69 -# Contact: sips:bJDURH4EPATAOE2ZEJ36J4IQMO4JMELASEXNX3MZLIPYPRPAWPHSK3HY@127.0.0.1:54997 -# To: you.uas@example.com;tag=32458eb4f6e1fee488e8ed74745b9895 +# Contact: sips:bZOWUCTZCW2ENER3GK3TLGOFYTNXBKJXU55HB4GCDNX35UCPCTTYVFII@127.0.0.1:60389 +# Content-length: 188 +# To: you.uas@example.com;tag=edf2ca10d5b4da4463074489e9e81774 # # v=0 -# o=anonymous 1715681173 1715681173 IN IP4 127.0.0.1 +# o=anonymous 1750091808 1750091808 IN IP4 127.0.0.1 # s=session # c=IN IP4 127.0.0.1 # t=0 0 -# m=audio 10258 RTP/AVP 0 +# m=audio 3044 RTP/AVP 0 # m=audio 0 RTP/AVP 0 -# m=audio 5630 RTP/AVP 0 -# m=audio 11224 RTP/AVP 0 +# m=audio 6988 RTP/AVP 0 +# m=audio 6064 RTP/AVP 0 # << -ok 277 - [uas] (?^i:via\:\ SIP\/2\.0\/tls\ 127\.0\.0\.1\:54997\;) -ok 278 - [uas] (?^i:via\:\ SIP\/2\.0\/tls\ 127\.0\.0\.1\:35103\;) -# uac >> I< HASH(0xaaaae141f6c0) RSP(INVITE,100) NO SDP -# << -# uac >> I< HASH(0xaaaae141b638) RSP(INVITE,200) SDP: audio=127.0.0.1:6738/2 audio=127.0.0.1:8934/2 audio=127.0.0.1/2 audio=127.0.0.1:2288/2 -# << -# uac >> O> 127.0.0.1:50773 REQ(ACK) NO SDP +ok 271 - [uas] (?^:I<.*REQ\(INVITE\) SDP: audio=\S+) +ok 272 - outgoing on UAC must be the same as incoming on proxy +ok 273 - outgoing on proxy must be the same as incoming on UAS +ok 274 - allocated addr:port must be different (127.0.0.1:10828|127.0.0.1:3044) +ok 275 - ranges must stay the same +ok 276 - [uas] call created +ok 277 - [uas] (?^i:via\:\ SIP\/2\.0\/tls\ 127\.0\.0\.1\:60389\;) +ok 278 - [uas] (?^i:via\:\ SIP\/2\.0\/tls\ 127\.0\.0\.1\:41203\;) +# uac >> I< HASH(0xaaaae252d4f0) RSP(INVITE,100) NO SDP # << -# uac >> Start RTP +# uac >> I< HASH(0xaaaae252d568) RSP(INVITE,200) SDP: audio=127.0.0.1:4504/2 audio=127.0.0.1:11332/2 audio=127.0.0.1/2 audio=127.0.0.1:9806/2 +# O> 127.0.0.1:37805 REQ(ACK) NO SDP +# Start RTP # << # uac >> RTP#100# # << # uac >> got rtp packet#100 # Send BYE +# O> 127.0.0.1:37805 REQ(BYE) NO SDP # << -# uac >> O> 127.0.0.1:50773 REQ(BYE) NO SDP -# << -# uac >> I< HASH(0xaaaae141f420) RSP(BYE,200) NO SDP -# << -# uac >> BYE done (1 1 0 1 -- 1 0 1 1) +# uac >> I< HASH(0xaaaae252d2f8) RSP(BYE,200) NO SDP +# BYE done (1 1 0 1 -- 1 0 1 1) # << ok 279 - [uac] BYE done (1 1 0 1 -- 1 0 1 1) -# uas >> O> 127.0.0.1:41401 RSP(INVITE,200) SDP: audio=127.0.0.1:11130/2 audio=127.0.0.1:6520/2 audio=127.0.0.1/2 audio=127.0.0.1:10646/2 -# I< HASH(0xaaaae12ceea0) REQ(ACK) NO SDP +# uas >> O> 127.0.0.1:41341 RSP(INVITE,200) SDP: audio=127.0.0.1:5110/2 audio=127.0.0.1:2542/2 audio=127.0.0.1/2 audio=127.0.0.1:11322/2 +# I< HASH(0xaaaae23f89b8) REQ(ACK) NO SDP # call established # Start RTP # RTP#100# -# I< HASH(0xaaaae12c8a08) REQ(BYE) NO SDP -# O> 127.0.0.1:41401 RSP(BYE,200) NO SDP +# I< HASH(0xaaaae23f80e8) REQ(BYE) NO SDP +# O> 127.0.0.1:41341 RSP(BYE,200) NO SDP # Call done (1 0 1 1 -- 1 1 0 1) # << ok 280 - [uas] Call done (1 0 1 1 -- 1 1 0 1) # ------- test with family ip4 transport tls remote-nat -# UAS on 127.0.0.1:48739 -# UAC on 127.0.0.1:34049 -# PROXY on 127.0.0.1:42233 127.0.0.1:40731 +# UAS on 127.0.0.1:41059 +# UAC on 127.0.0.1:41623 +# PROXY on 127.0.0.1:34845 127.0.0.1:56423 # nathelper >> OK # << ok 281 - [nathelper] OK # proxy >> OK +# ready # << ok 282 - [proxy] OK # uas >> OK # ready # << ok 283 - [uas] OK -# proxy >> ready -# << ok 284 - [proxy] ready ok 285 - [uas] ready # uac >> OK -# ready # << ok 286 - [uac] OK +# uac >> ready +# << ok 287 - [uac] ready -# uac >> O> 127.0.0.1:42233 REQ(INVITE) SDP: audio=127.0.0.1:11244/2 audio=127.0.0.1/2 audio=127.0.0.1:7044/2 audio=127.0.0.1:11092/2 +# uac >> O> 127.0.0.1:34845 REQ(INVITE) SDP: audio=127.0.0.1:10828/2 audio=127.0.0.1/2 audio=127.0.0.1:7890/2 audio=127.0.0.1:11166/2 # << ok 288 - [uac] (?^:O>.*REQ\(INVITE\) SDP: audio=\S+) -# proxy >> I< HASH(0xaaaae12c8b08) REQ(INVITE) SDP: audio=127.0.0.1:11244/2 audio=127.0.0.1/2 audio=127.0.0.1:7044/2 audio=127.0.0.1:11092/2 +# proxy >> I< HASH(0xaaaae23d87a8) REQ(INVITE) SDP: audio=127.0.0.1:10828/2 audio=127.0.0.1/2 audio=127.0.0.1:7890/2 audio=127.0.0.1:11166/2 # << ok 289 - [proxy] (?^:I<.*REQ\(INVITE\) SDP: audio=\S+) -# proxy >> O> 127.0.0.1:48739 REQ(INVITE) SDP: audio=127.0.0.1:5186/2 audio=127.0.0.1/2 audio=127.0.0.1:10798/2 audio=127.0.0.1:11864/2 +# proxy >> O> 127.0.0.1:41059 REQ(INVITE) SDP: audio=127.0.0.1:6562/2 audio=127.0.0.1/2 audio=127.0.0.1:2482/2 audio=127.0.0.1:6842/2 # << ok 290 - [proxy] (?^:O>.*REQ\(INVITE\) SDP: audio=\S+) -# uas >> I< HASH(0xaaaae12e4548) REQ(INVITE) SDP: audio=127.0.0.1:5186/2 audio=127.0.0.1/2 audio=127.0.0.1:10798/2 audio=127.0.0.1:11864/2 -# O> 127.0.0.1:43343 RSP(INVITE,100) NO SDP +# uas >> I< HASH(0xaaaae23f3e68) REQ(INVITE) SDP: audio=127.0.0.1:6562/2 audio=127.0.0.1/2 audio=127.0.0.1:2482/2 audio=127.0.0.1:6842/2 +# O> 127.0.0.1:41467 RSP(INVITE,100) NO SDP # call created # INVITE you.uas@example.com SIP/2.0 -# Via: SIP/2.0/TLS 127.0.0.1:40731;branch=z9hG4bK72fe588783092363bd64034f8a50a77ad4ec1e108e2d6d59ba24d67d763799 -# Record-route: -# Via: SIP/2.0/TLS 127.0.0.1:42233;branch=z9hG4bK707b42176a46690fb08bf07b06f9ddead4ec1e108e2d6d5e98fc2c28234644 -# Record-route: +# Via: SIP/2.0/TLS 127.0.0.1:56423;branch=z9hG4bKb8afbe72a42529a924b7caa084ed521592e270cbc653d19fed4aaef0f009a4 +# Record-route: +# Via: SIP/2.0/TLS 127.0.0.1:34845;branch=z9hG4bKca752f230f1c6760a3993094a951ca1592e270cbc653d19dfa98ddb2f54dce +# Record-route: # Supported: # Allow: INVITE, ACK, OPTIONS, CANCEL, BYE -# Via: SIP/2.0/TLS 127.0.0.1:34049;branch=z9hG4bK93f008751b7275895163e2912d137e4ed4ec1e108e2d6d5685fb17167b0ffb -# Call-id: 0ef7e7edfc15ea09a812c2913690d2b6 +# Via: SIP/2.0/TLS 127.0.0.1:41623;branch=z9hG4bK240b8a3b3dcc1860d4d16ee8375578ef92e270cbc653d19538030833d76422 +# Call-id: 18691bbda0d05c0e671cf938ed74060a # Cseq: 1 INVITE -# From: me.uac@example.com;tag=573691b4cca7869529813e990411628a +# From: me.uac@example.com;tag=c1a2a20c32b0943249a5a100d8ae327a # Content-type: application/sdp -# Content-length: 190 # Max-forwards: 69 -# Contact: sips:bJDURH4EPATAOE2ZEJ36J4IQMO4JMELASEXNX3MZLIPY7TOA4QAENSYY@127.0.0.1:40731 -# To: you.uas@example.com;tag=435d01d8da5f80d76eed1ee90fe30c04 +# Contact: sips:bZOWUCTZCW2ENER3GK3TLGOFYTNXBKJXU55HB4GCDNX354C7CCLQVPFI@127.0.0.1:56423 +# Content-length: 188 +# To: you.uas@example.com;tag=baebf77bb7fcd09dc74915dd597ceb16 # # v=0 -# o=anonymous 1715681174 1715681174 IN IP4 127.0.0.1 +# o=anonymous 1750091809 1750091809 IN IP4 127.0.0.1 # s=session # c=IN IP4 127.0.0.1 # t=0 0 -# m=audio 5186 RTP/AVP 0 +# m=audio 6562 RTP/AVP 0 # m=audio 0 RTP/AVP 0 -# m=audio 10798 RTP/AVP 0 -# m=audio 11864 RTP/AVP 0 +# m=audio 2482 RTP/AVP 0 +# m=audio 6842 RTP/AVP 0 # << ok 291 - [uas] (?^:I<.*REQ\(INVITE\) SDP: audio=\S+) ok 292 - outgoing on UAC must be the same as incoming on proxy ok 293 - outgoing on proxy must be the same as incoming on UAS -ok 294 - allocated addr:port must be different (127.0.0.1:11244|127.0.0.1:5186) +ok 294 - allocated addr:port must be different (127.0.0.1:10828|127.0.0.1:6562) ok 295 - ranges must stay the same ok 296 - [uas] call created -ok 297 - [uas] (?^i:via\:\ SIP\/2\.0\/tls\ 127\.0\.0\.1\:40731\;) -ok 298 - [uas] (?^i:via\:\ SIP\/2\.0\/tls\ 127\.0\.0\.1\:34049\;) -# uac >> I< HASH(0xaaaae14c84a0) RSP(INVITE,100) NO SDP +ok 297 - [uas] (?^i:via\:\ SIP\/2\.0\/tls\ 127\.0\.0\.1\:56423\;) +ok 298 - [uas] (?^i:via\:\ SIP\/2\.0\/tls\ 127\.0\.0\.1\:41623\;) +# uac >> I< HASH(0xaaaae2593380) RSP(INVITE,100) NO SDP # << -# uac >> I< HASH(0xaaaae0982920) RSP(INVITE,200) SDP: audio=127.0.0.1:5860/2 audio=127.0.0.1:2822/2 audio=127.0.0.1/2 audio=127.0.0.1:3116/2 -# O> 127.0.0.1:42233 REQ(ACK) NO SDP +# uac >> I< HASH(0xaaaae2592c60) RSP(INVITE,200) SDP: audio=127.0.0.1:8808/2 audio=127.0.0.1:11442/2 audio=127.0.0.1/2 audio=127.0.0.1:9452/2 +# O> 127.0.0.1:34845 REQ(ACK) NO SDP # Start RTP # << # uac >> RTP#100# # << # uac >> got rtp packet#100 # Send BYE -# O> 127.0.0.1:42233 REQ(BYE) NO SDP +# O> 127.0.0.1:34845 REQ(BYE) NO SDP # << -# uac >> I< HASH(0xaaaae14c8530) RSP(BYE,200) NO SDP +# uac >> I< HASH(0xaaaae23a5498) RSP(BYE,200) NO SDP # BYE done (1 1 0 1 -- 1 0 1 1) # << ok 299 - [uac] BYE done (1 1 0 1 -- 1 0 1 1) -# uas >> O> 127.0.0.1:43343 RSP(INVITE,200) SDP: audio=127.0.0.1:11130/2 audio=127.0.0.1:6520/2 audio=127.0.0.1/2 audio=127.0.0.1:10646/2 -# I< HASH(0xaaaae12d2170) REQ(ACK) NO SDP +# uas >> O> 127.0.0.1:41467 RSP(INVITE,200) SDP: audio=127.0.0.1:5110/2 audio=127.0.0.1:2542/2 audio=127.0.0.1/2 audio=127.0.0.1:11322/2 +# I< HASH(0xaaaae23ff138) REQ(ACK) NO SDP # call established # Start RTP # RTP#100# -# I< HASH(0xaaaae12ccca8) REQ(BYE) NO SDP -# O> 127.0.0.1:43343 RSP(BYE,200) NO SDP +# I< HASH(0xaaaae23e20e0) REQ(BYE) NO SDP +# O> 127.0.0.1:41467 RSP(BYE,200) NO SDP # Call done (1 0 1 1 -- 1 1 0 1) # << ok 300 - [uas] Call done (1 0 1 1 -- 1 1 0 1) # ------- test with family ip6 transport tls no-nat -# UAS on [::1]:47543 -# UAC on [::1]:53075 -# PROXY on [::1]:43479 [::1]:53057 +# UAS on [::1]:41361 +# UAC on [::1]:35467 +# PROXY on [::1]:59527 [::1]:50959 ok 301 - no fork nathelper # proxy >> OK # ready @@ -5969,43 +5560,43 @@ # << ok 306 - [uac] OK ok 307 - [uac] ready -# uac >> O> [::1]:43479 REQ(INVITE) SDP: audio=[::1]:11244/2 audio=::1/2 audio=[::1]:7044/2 audio=[::1]:11092/2 +# uac >> O> [::1]:59527 REQ(INVITE) SDP: audio=[::1]:10828/2 audio=::1/2 audio=[::1]:7890/2 audio=[::1]:11166/2 # << ok 308 - [uac] (?^:O>.*REQ\(INVITE\) SDP: audio=\S+) -# proxy >> I< HASH(0xaaaae12decf0) REQ(INVITE) SDP: audio=[::1]:11244/2 audio=::1/2 audio=[::1]:7044/2 audio=[::1]:11092/2 -# O> [::1]:47543 REQ(INVITE) SDP: audio=[::1]:11244/2 audio=::1/2 audio=[::1]:7044/2 audio=[::1]:11092/2 +# proxy >> I< HASH(0xaaaae23da760) REQ(INVITE) SDP: audio=[::1]:10828/2 audio=::1/2 audio=[::1]:7890/2 audio=[::1]:11166/2 +# O> [::1]:41361 REQ(INVITE) SDP: audio=[::1]:10828/2 audio=::1/2 audio=[::1]:7890/2 audio=[::1]:11166/2 # << ok 309 - [proxy] (?^:I<.*REQ\(INVITE\) SDP: audio=\S+) ok 310 - [proxy] (?^:O>.*REQ\(INVITE\) SDP: audio=\S+) -# uas >> I< HASH(0xaaaae12e68b8) REQ(INVITE) SDP: audio=[::1]:11244/2 audio=::1/2 audio=[::1]:7044/2 audio=[::1]:11092/2 -# O> [::1]:40447 RSP(INVITE,100) NO SDP +# uas >> I< HASH(0xaaaae23f6148) REQ(INVITE) SDP: audio=[::1]:10828/2 audio=::1/2 audio=[::1]:7890/2 audio=[::1]:11166/2 +# O> [::1]:42553 RSP(INVITE,100) NO SDP # call created # INVITE you.uas@example.com SIP/2.0 -# Via: SIP/2.0/TLS [::1]:53057;branch=z9hG4bK0d1b206211eab12e4d8f547f88d40544110177d35f1b4ed660a614d5281fe8 -# Record-route: -# Via: SIP/2.0/TLS [::1]:43479;branch=z9hG4bKda83ddcbad1394dd032ddf0e215cab4e110177d35f1b4ed23b7e236778cc72 -# Record-route: +# Via: SIP/2.0/TLS [::1]:50959;branch=z9hG4bKeaaeab1f496ba9be040620bee785e347fa65378a121fb8459e34219fc449f0 +# Record-route: +# Via: SIP/2.0/TLS [::1]:59527;branch=z9hG4bK6002b0081947032a08398cd3503cc7a0fa65378a121fb843aa2e94f16d34a1 +# Record-route: # Supported: # Allow: INVITE, ACK, OPTIONS, CANCEL, BYE -# Via: SIP/2.0/TLS [::1]:53075;branch=z9hG4bKc61bf77788f36506941da130a23aff61110177d35f1b4edcb05f0d91e74b9f -# Call-id: 3756d4b3c0a42064565b05c972f5aaf4 +# Via: SIP/2.0/TLS [::1]:35467;branch=z9hG4bK035ae392952cdfe66ba50de8224f40a9fa65378a121fb84dd97757dc449fdc +# Call-id: f97c94fffb993afd87bfcaaceb7268c1 # Cseq: 1 INVITE -# From: me.uac@example.com;tag=e83613ea1f9cac8988b12afc36c36f63 +# From: me.uac@example.com;tag=a3fa7c6085f35dd206ec8792498ee3ed # Content-type: application/sdp # Content-length: 178 # Max-forwards: 69 -# Contact: sips:bJDURH4EPATAOE2ZEJ36J4IQMDUNM6M37GHPGBMRGIW7KVDGM@[::1]:53057 -# To: you.uas@example.com;tag=69fcda7a6267f8c93b1e855b0837ae3c +# Contact: sips:bZOWUCTZCW2ENER3GK3TLGOFY6FTBQOMZ7NGQKHKPN2FZFHRF@[::1]:50959 +# To: you.uas@example.com;tag=0c6bee8b88a9cc0c23d366412989cfa2 # # v=0 -# o=anonymous 1715681175 1715681175 IN IP6 ::1 +# o=anonymous 1750091810 1750091810 IN IP6 ::1 # s=session # c=IN IP6 ::1 # t=0 0 -# m=audio 11244 RTP/AVP 0 +# m=audio 10828 RTP/AVP 0 # m=audio 0 RTP/AVP 0 -# m=audio 7044 RTP/AVP 0 -# m=audio 11092 RTP/AVP 0 +# m=audio 7890 RTP/AVP 0 +# m=audio 11166 RTP/AVP 0 # << ok 311 - [uas] (?^:I<.*REQ\(INVITE\) SDP: audio=\S+) ok 312 - outgoing on UAC must be the same as incoming on proxy @@ -6013,242 +5604,220 @@ ok 314 - SDP must pass unchanged to UAS ok 315 - dummy ok 316 - [uas] call created -ok 317 - [uas] (?^i:via\:\ SIP\/2\.0\/tls\ \[\:\:1\]\:53057\;) -ok 318 - [uas] (?^i:via\:\ SIP\/2\.0\/tls\ \[\:\:1\]\:53075\;) -# uac >> I< HASH(0xaaaae1470c60) RSP(INVITE,100) NO SDP -# << -# uac >> I< HASH(0xaaaae0982920) RSP(INVITE,200) SDP: audio=[::1]:11130/2 audio=[::1]:6520/2 audio=::1/2 audio=[::1]:10646/2 -# O> [::1]:43479 REQ(ACK) NO SDP +ok 317 - [uas] (?^i:via\:\ SIP\/2\.0\/tls\ \[\:\:1\]\:50959\;) +ok 318 - [uas] (?^i:via\:\ SIP\/2\.0\/tls\ \[\:\:1\]\:35467\;) +# uac >> I< HASH(0xaaaae25965e0) RSP(INVITE,100) NO SDP +# I< HASH(0xaaaae2596688) RSP(INVITE,200) SDP: audio=[::1]:5110/2 audio=[::1]:2542/2 audio=::1/2 audio=[::1]:11322/2 +# O> [::1]:59527 REQ(ACK) NO SDP # Start RTP # << # uac >> RTP#100# # << # uac >> got rtp packet#100 # Send BYE +# O> [::1]:59527 REQ(BYE) NO SDP # << -# uac >> O> [::1]:43479 REQ(BYE) NO SDP -# << -# uac >> I< HASH(0xaaaae1470618) RSP(BYE,200) NO SDP +# uac >> I< HASH(0xaaaae23db290) RSP(BYE,200) NO SDP # BYE done (1 1 0 1 -- 1 0 1 1) # << ok 319 - [uac] BYE done (1 1 0 1 -- 1 0 1 1) -# uas >> O> [::1]:40447 RSP(INVITE,200) SDP: audio=[::1]:11130/2 audio=[::1]:6520/2 audio=::1/2 audio=[::1]:10646/2 -# I< HASH(0xaaaae12d5488) REQ(ACK) NO SDP +# uas >> O> [::1]:42553 RSP(INVITE,200) SDP: audio=[::1]:5110/2 audio=[::1]:2542/2 audio=::1/2 audio=[::1]:11322/2 +# I< HASH(0xaaaae24039b0) REQ(ACK) NO SDP # call established # Start RTP # RTP#100# -# I< HASH(0xaaaae12d1518) REQ(BYE) NO SDP -# O> [::1]:40447 RSP(BYE,200) NO SDP +# I< HASH(0xaaaae2567aa0) REQ(BYE) NO SDP +# O> [::1]:42553 RSP(BYE,200) NO SDP # Call done (1 0 1 1 -- 1 1 0 1) # << ok 320 - [uas] Call done (1 0 1 1 -- 1 1 0 1) # ------- test with family ip6 transport tls inline-nat -# UAS on [::1]:58001 -# UAC on [::1]:60695 -# PROXY on [::1]:55003 [::1]:39409 +# UAS on [::1]:56107 +# UAC on [::1]:42245 +# PROXY on [::1]:39645 [::1]:59457 ok 321 - no fork nathelper # proxy >> OK +# ready # << ok 322 - [proxy] OK # uas >> OK # << ok 323 - [uas] OK -# proxy >> ready -# << ok 324 - [proxy] ready # uas >> ready # << ok 325 - [uas] ready # uac >> OK +# ready # << ok 326 - [uac] OK -# uac >> ready -# << ok 327 - [uac] ready -# uac >> O> [::1]:55003 REQ(INVITE) SDP: audio=[::1]:11244/2 audio=::1/2 audio=[::1]:7044/2 audio=[::1]:11092/2 +# uac >> O> [::1]:39645 REQ(INVITE) SDP: audio=[::1]:10828/2 audio=::1/2 audio=[::1]:7890/2 audio=[::1]:11166/2 # << ok 328 - [uac] (?^:O>.*REQ\(INVITE\) SDP: audio=\S+) -# proxy >> I< HASH(0xaaaae12cfeb0) REQ(INVITE) SDP: audio=[::1]:11244/2 audio=::1/2 audio=[::1]:7044/2 audio=[::1]:11092/2 +# proxy >> I< HASH(0xaaaae23df560) REQ(INVITE) SDP: audio=[::1]:10828/2 audio=::1/2 audio=[::1]:7890/2 audio=[::1]:11166/2 # << ok 329 - [proxy] (?^:I<.*REQ\(INVITE\) SDP: audio=\S+) -# proxy >> O> [::1]:58001 REQ(INVITE) SDP: audio=[::1]:10258/2 audio=::1/2 audio=[::1]:5630/2 audio=[::1]:11224/2 +# proxy >> O> [::1]:56107 REQ(INVITE) SDP: audio=[::1]:3044/2 audio=::1/2 audio=[::1]:6988/2 audio=[::1]:6064/2 # << ok 330 - [proxy] (?^:O>.*REQ\(INVITE\) SDP: audio=\S+) -# uas >> I< HASH(0xaaaae12dad38) REQ(INVITE) SDP: audio=[::1]:10258/2 audio=::1/2 audio=[::1]:5630/2 audio=[::1]:11224/2 -# << -ok 331 - [uas] (?^:I<.*REQ\(INVITE\) SDP: audio=\S+) -ok 332 - outgoing on UAC must be the same as incoming on proxy -ok 333 - outgoing on proxy must be the same as incoming on UAS -ok 334 - allocated addr:port must be different ([::1]:11244|[::1]:10258) -ok 335 - ranges must stay the same -# uas >> O> [::1]:42461 RSP(INVITE,100) NO SDP -# << -# uas >> call created -# << -ok 336 - [uas] call created -# uas >> INVITE you.uas@example.com SIP/2.0 -# Via: SIP/2.0/TLS [::1]:39409;branch=z9hG4bKca9794544162c7cafe7e907163c09cc205de4053204c5c4a628d7802aef9d4 -# Record-route: -# Via: SIP/2.0/TLS [::1]:55003;branch=z9hG4bK3cf35356647f95892c436a152bea6f1605de4053204c5c41214588fd4f5391 -# Record-route: +# uas >> I< HASH(0xaaaae23ea1c8) REQ(INVITE) SDP: audio=[::1]:3044/2 audio=::1/2 audio=[::1]:6988/2 audio=[::1]:6064/2 +# O> [::1]:42917 RSP(INVITE,100) NO SDP +# call created +# INVITE you.uas@example.com SIP/2.0 +# Via: SIP/2.0/TLS [::1]:59457;branch=z9hG4bK920844f929a487a8a686210eaef4ac69fdb8e2f7283ba9ea96f3f8f71ecc3f +# Record-route: +# Via: SIP/2.0/TLS [::1]:39645;branch=z9hG4bK774504865f634448683afdd8da219dddfdb8e2f7283ba9e8d1c5cd67aaf10a +# Record-route: # Supported: # Allow: INVITE, ACK, OPTIONS, CANCEL, BYE -# Via: SIP/2.0/TLS [::1]:60695;branch=z9hG4bK6f84cbdbce45adfc8d85a471159c97d005de4053204c5c4b2299f5b90e7d9a -# Call-id: 9368c906ea0841fcf77891a7f0503c2e +# Via: SIP/2.0/TLS [::1]:42245;branch=z9hG4bKedecc523cee2aad33453fe690231b6d3fdb8e2f7283ba9e22cda407e7a640d +# Call-id: a5c931a0fca7dc00185e304d878723bf # Cseq: 1 INVITE -# From: me.uac@example.com;tag=43177d04446381b467892e8c21e04788 +# From: me.uac@example.com;tag=2a35835b895ec9a8bbcbbf4519aa4739 # Content-type: application/sdp -# Content-length: 178 # Max-forwards: 69 -# Contact: sips:bJDURH4EPATAOE2ZEJ36J4IQMDUNM6M37GHOWHNBIIVC346WN@[::1]:39409 -# To: you.uas@example.com;tag=dd88a1ff21276440fbc169db6a2fc9f9 +# Contact: sips:bZOWUCTZCW2ENER3GK3TLGOFY6FTBQOMZ7NFAEG2NNR4LYRLN@[::1]:59457 +# Content-length: 176 +# To: you.uas@example.com;tag=850164cd315d03f701d5216d407a2fd0 # # v=0 -# o=anonymous 1715681176 1715681176 IN IP6 ::1 +# o=anonymous 1750091811 1750091811 IN IP6 ::1 # s=session # c=IN IP6 ::1 # t=0 0 -# m=audio 10258 RTP/AVP 0 +# m=audio 3044 RTP/AVP 0 # m=audio 0 RTP/AVP 0 -# m=audio 5630 RTP/AVP 0 -# m=audio 11224 RTP/AVP 0 -# << -ok 337 - [uas] (?^i:via\:\ SIP\/2\.0\/tls\ \[\:\:1\]\:39409\;) -ok 338 - [uas] (?^i:via\:\ SIP\/2\.0\/tls\ \[\:\:1\]\:60695\;) -# uac >> I< HASH(0xaaaae1437bf0) RSP(INVITE,100) NO SDP +# m=audio 6988 RTP/AVP 0 +# m=audio 6064 RTP/AVP 0 # << -# uac >> I< HASH(0xaaaae1420f80) RSP(INVITE,200) SDP: audio=[::1]:6738/2 audio=[::1]:8934/2 audio=::1/2 audio=[::1]:2288/2 -# << -# uac >> O> [::1]:55003 REQ(ACK) NO SDP +ok 331 - [uas] (?^:I<.*REQ\(INVITE\) SDP: audio=\S+) +ok 332 - outgoing on UAC must be the same as incoming on proxy +ok 333 - outgoing on proxy must be the same as incoming on UAS +ok 334 - allocated addr:port must be different ([::1]:10828|[::1]:3044) +ok 335 - ranges must stay the same +ok 336 - [uas] call created +ok 337 - [uas] (?^i:via\:\ SIP\/2\.0\/tls\ \[\:\:1\]\:59457\;) +ok 338 - [uas] (?^i:via\:\ SIP\/2\.0\/tls\ \[\:\:1\]\:42245\;) +# uac >> I< HASH(0xaaaae25473d0) RSP(INVITE,100) NO SDP # << -# uac >> Start RTP +# uac >> I< HASH(0xaaaae2533458) RSP(INVITE,200) SDP: audio=[::1]:4504/2 audio=[::1]:11332/2 audio=::1/2 audio=[::1]:9806/2 +# O> [::1]:39645 REQ(ACK) NO SDP +# Start RTP # << # uac >> RTP#100# # << # uac >> got rtp packet#100 +# Send BYE +# O> [::1]:39645 REQ(BYE) NO SDP # << -# uac >> Send BYE -# << -# uac >> O> [::1]:55003 REQ(BYE) NO SDP -# << -# uac >> I< HASH(0xaaaae1424070) RSP(BYE,200) NO SDP -# << -# uac >> BYE done (1 1 0 1 -- 1 0 1 1) +# uac >> I< HASH(0xaaaae2533260) RSP(BYE,200) NO SDP +# BYE done (1 1 0 1 -- 1 0 1 1) # << ok 339 - [uac] BYE done (1 1 0 1 -- 1 0 1 1) -# uas >> O> [::1]:42461 RSP(INVITE,200) SDP: audio=[::1]:11130/2 audio=[::1]:6520/2 audio=::1/2 audio=[::1]:10646/2 -# I< HASH(0xaaaae12f2c58) REQ(ACK) NO SDP +# uas >> O> [::1]:42917 RSP(INVITE,200) SDP: audio=[::1]:5110/2 audio=[::1]:2542/2 audio=::1/2 audio=[::1]:11322/2 +# I< HASH(0xaaaae2405e40) REQ(ACK) NO SDP # call established # Start RTP # RTP#100# -# I< HASH(0xaaaae1457190) REQ(BYE) NO SDP -# O> [::1]:42461 RSP(BYE,200) NO SDP +# I< HASH(0xaaaae24028c8) REQ(BYE) NO SDP +# O> [::1]:42917 RSP(BYE,200) NO SDP # Call done (1 0 1 1 -- 1 1 0 1) # << ok 340 - [uas] Call done (1 0 1 1 -- 1 1 0 1) # ------- test with family ip6 transport tls remote-nat -# UAS on [::1]:50103 -# UAC on [::1]:41109 -# PROXY on [::1]:43373 [::1]:42457 +# UAS on [::1]:54201 +# UAC on [::1]:34879 +# PROXY on [::1]:50569 [::1]:38975 # nathelper >> OK # << ok 341 - [nathelper] OK # proxy >> OK +# ready # << ok 342 - [proxy] OK # uas >> OK +# ready # << ok 343 - [uas] OK -# proxy >> ready -# << ok 344 - [proxy] ready -# uas >> ready -# << ok 345 - [uas] ready # uac >> OK +# ready # << ok 346 - [uac] OK -# uac >> ready -# << ok 347 - [uac] ready -# uac >> O> [::1]:43373 REQ(INVITE) SDP: audio=[::1]:11244/2 audio=::1/2 audio=[::1]:7044/2 audio=[::1]:11092/2 +# uac >> O> [::1]:50569 REQ(INVITE) SDP: audio=[::1]:10828/2 audio=::1/2 audio=[::1]:7890/2 audio=[::1]:11166/2 # << ok 348 - [uac] (?^:O>.*REQ\(INVITE\) SDP: audio=\S+) -# proxy >> I< HASH(0xaaaae12d2cb0) REQ(INVITE) SDP: audio=[::1]:11244/2 audio=::1/2 audio=[::1]:7044/2 audio=[::1]:11092/2 +# proxy >> I< HASH(0xaaaae23f6080) REQ(INVITE) SDP: audio=[::1]:10828/2 audio=::1/2 audio=[::1]:7890/2 audio=[::1]:11166/2 # << ok 349 - [proxy] (?^:I<.*REQ\(INVITE\) SDP: audio=\S+) -# proxy >> O> [::1]:50103 REQ(INVITE) SDP: audio=[::1]:5186/2 audio=::1/2 audio=[::1]:10798/2 audio=[::1]:11864/2 +# proxy >> O> [::1]:54201 REQ(INVITE) SDP: audio=[::1]:6562/2 audio=::1/2 audio=[::1]:2482/2 audio=[::1]:6842/2 # << ok 350 - [proxy] (?^:O>.*REQ\(INVITE\) SDP: audio=\S+) -# uas >> I< HASH(0xaaaae12da258) REQ(INVITE) SDP: audio=[::1]:5186/2 audio=::1/2 audio=[::1]:10798/2 audio=[::1]:11864/2 -# << -ok 351 - [uas] (?^:I<.*REQ\(INVITE\) SDP: audio=\S+) -ok 352 - outgoing on UAC must be the same as incoming on proxy -ok 353 - outgoing on proxy must be the same as incoming on UAS -ok 354 - allocated addr:port must be different ([::1]:11244|[::1]:5186) -ok 355 - ranges must stay the same -# uas >> O> [::1]:43735 RSP(INVITE,100) NO SDP -# << -# uas >> call created -# << -ok 356 - [uas] call created -# uas >> INVITE you.uas@example.com SIP/2.0 -# Via: SIP/2.0/TLS [::1]:42457;branch=z9hG4bK08121b42bf0d354b0b17327902c73d5860a1cea5aa496f87dfae19b16561cb -# Record-route: -# Via: SIP/2.0/TLS [::1]:43373;branch=z9hG4bK034abbca9696c8d3b68c00d7bd31b80d60a1cea5aa496f8270f8681d3c7d1f -# Record-route: +# uas >> I< HASH(0xaaaae23ef880) REQ(INVITE) SDP: audio=[::1]:6562/2 audio=::1/2 audio=[::1]:2482/2 audio=[::1]:6842/2 +# O> [::1]:37687 RSP(INVITE,100) NO SDP +# call created +# INVITE you.uas@example.com SIP/2.0 +# Via: SIP/2.0/TLS [::1]:38975;branch=z9hG4bK3b40ad5190727ace0462a66ddfefa55e7f0bf5a84adcfce407b1d9965e3636 +# Record-route: +# Via: SIP/2.0/TLS [::1]:50569;branch=z9hG4bK2cda0179e878b3eaf38aa13e27da7bae7f0bf5a84adcfce8e9323a41077312 +# Record-route: # Supported: # Allow: INVITE, ACK, OPTIONS, CANCEL, BYE -# Via: SIP/2.0/TLS [::1]:41109;branch=z9hG4bK4f50db2866bba31c5e6a2ac0d9bab8d060a1cea5aa496f8c21e2f472d48a35 -# Call-id: a186464a432a983eea66c6dcd027835d +# Via: SIP/2.0/TLS [::1]:34879;branch=z9hG4bKc27819a73281b0cc52154aaab4b8941a7f0bf5a84adcfce3b6635cb796f2d6 +# Call-id: 5700d92733fdecf3ae57b6857d85c67e # Cseq: 1 INVITE -# From: me.uac@example.com;tag=97a6c78b5c330d10663645620c9b8d19 +# From: me.uac@example.com;tag=856dc367d85a3ec9154006ad9943ddf3 # Content-type: application/sdp -# Content-length: 178 # Max-forwards: 69 -# Contact: sips:bJDURH4EPATAOE2ZEJ36J4IQMDUNM6M37GHPWFMZBJFQC7XDS@[::1]:42457 -# To: you.uas@example.com;tag=b141bdc2eb8b173c9d608d7c6ff480e3 +# Contact: sips:bZOWUCTZCW2ENER3GK3TLGOFY6FTBQOMZ7NGQIEKOMBPENMNQ@[::1]:38975 +# Content-length: 176 +# To: you.uas@example.com;tag=9f633c6d66a4397cc31da29e24c1d470 # # v=0 -# o=anonymous 1715681176 1715681176 IN IP6 ::1 +# o=anonymous 1750091812 1750091812 IN IP6 ::1 # s=session # c=IN IP6 ::1 # t=0 0 -# m=audio 5186 RTP/AVP 0 +# m=audio 6562 RTP/AVP 0 # m=audio 0 RTP/AVP 0 -# m=audio 10798 RTP/AVP 0 -# m=audio 11864 RTP/AVP 0 -# << -ok 357 - [uas] (?^i:via\:\ SIP\/2\.0\/tls\ \[\:\:1\]\:42457\;) -ok 358 - [uas] (?^i:via\:\ SIP\/2\.0\/tls\ \[\:\:1\]\:41109\;) -# uac >> I< HASH(0xaaaae14c4b60) RSP(INVITE,100) NO SDP +# m=audio 2482 RTP/AVP 0 +# m=audio 6842 RTP/AVP 0 # << -# uac >> I< HASH(0xaaaae14b3890) RSP(INVITE,200) SDP: audio=[::1]:5860/2 audio=[::1]:2822/2 audio=::1/2 audio=[::1]:3116/2 -# << -# uac >> O> [::1]:43373 REQ(ACK) NO SDP +ok 351 - [uas] (?^:I<.*REQ\(INVITE\) SDP: audio=\S+) +ok 352 - outgoing on UAC must be the same as incoming on proxy +ok 353 - outgoing on proxy must be the same as incoming on UAS +ok 354 - allocated addr:port must be different ([::1]:10828|[::1]:6562) +ok 355 - ranges must stay the same +ok 356 - [uas] call created +ok 357 - [uas] (?^i:via\:\ SIP\/2\.0\/tls\ \[\:\:1\]\:38975\;) +ok 358 - [uas] (?^i:via\:\ SIP\/2\.0\/tls\ \[\:\:1\]\:34879\;) +# uac >> I< HASH(0xaaaae25eac60) RSP(INVITE,100) NO SDP # << -# uac >> Start RTP +# uac >> I< HASH(0xaaaae25eacd8) RSP(INVITE,200) SDP: audio=[::1]:8808/2 audio=[::1]:11442/2 audio=::1/2 audio=[::1]:9452/2 +# O> [::1]:50569 REQ(ACK) NO SDP +# Start RTP # << # uac >> RTP#100# # << # uac >> got rtp packet#100 +# Send BYE # << -# uac >> Send BYE -# << -# uac >> O> [::1]:43373 REQ(BYE) NO SDP -# << -# uac >> I< HASH(0xaaaae14b58f0) RSP(BYE,200) NO SDP +# uac >> O> [::1]:50569 REQ(BYE) NO SDP # << -# uac >> BYE done (1 1 0 1 -- 1 0 1 1) +# uac >> I< HASH(0xaaaae23dfd68) RSP(BYE,200) NO SDP +# BYE done (1 1 0 1 -- 1 0 1 1) # << ok 359 - [uac] BYE done (1 1 0 1 -- 1 0 1 1) -# uas >> O> [::1]:43735 RSP(INVITE,200) SDP: audio=[::1]:11130/2 audio=[::1]:6520/2 audio=::1/2 audio=[::1]:10646/2 -# I< HASH(0xaaaae12dd5a8) REQ(ACK) NO SDP +# uas >> O> [::1]:37687 RSP(INVITE,200) SDP: audio=[::1]:5110/2 audio=[::1]:2542/2 audio=::1/2 audio=[::1]:11322/2 +# I< HASH(0xaaaae2409580) REQ(ACK) NO SDP # call established # Start RTP # RTP#100# -# I< HASH(0xaaaae12d44c0) REQ(BYE) NO SDP -# O> [::1]:43735 RSP(BYE,200) NO SDP +# I< HASH(0xaaaae23e9518) REQ(BYE) NO SDP +# O> [::1]:37687 RSP(BYE,200) NO SDP # Call done (1 0 1 1 -- 1 1 0 1) # << ok 360 - [uas] Call done (1 0 1 1 -- 1 1 0 1) @@ -6256,494 +5825,441 @@ t/22_stateless_proxy_ack_on_error.t ..... 1..342 # ------- test with family ip4 transport udp no-nat -# UAS on 127.0.0.1:53362 -# UAC on 127.0.0.1:48324 -# PROXY on 127.0.0.1:48152 127.0.0.1:52330 +# UAS on 127.0.0.1:49131 +# UAC on 127.0.0.1:58397 +# PROXY on 127.0.0.1:33484 127.0.0.1:55987 ok 1 - no fork nathelper # proxy >> OK +# ready # << ok 2 - [proxy] OK # uas >> OK +# UAS created +# ready # << ok 3 - [uas] OK -# proxy >> ready -# << ok 4 - [proxy] ready -# uas >> UAS created -# ready -# << ok 5 - [uas] ready # uac >> OK +# ready # << ok 6 - [uac] OK -# uac >> ready -# << ok 7 - [uac] ready -# uac >> O> 127.0.0.1:48152 REQ(INVITE) SDP: audio=127.0.0.1:6604/2 +# uac >> O> 127.0.0.1:33484 REQ(INVITE) SDP: audio=127.0.0.1:8924/2 # << ok 8 - [uac] (?^:O>.*REQ\(INVITE\) SDP: audio=\S+) -# proxy >> I< HASH(0xaaaae9ad7c40) REQ(INVITE) SDP: audio=127.0.0.1:6604/2 +# proxy >> I< HASH(0xaaaabe2e8ce8) REQ(INVITE) SDP: audio=127.0.0.1:8924/2 +# O> 127.0.0.1:49131 REQ(INVITE) SDP: audio=127.0.0.1:8924/2 # << ok 9 - [proxy] (?^:I<.*REQ\(INVITE\) SDP: audio=\S+) -# proxy >> O> 127.0.0.1:53362 REQ(INVITE) SDP: audio=127.0.0.1:6604/2 -# << ok 10 - [proxy] (?^:O>.*REQ\(INVITE\) SDP: audio=\S+) -# uas >> I< HASH(0xaaaae9af1090) REQ(INVITE) SDP: audio=127.0.0.1:6604/2 +# uas >> I< HASH(0xaaaabe2ec768) REQ(INVITE) SDP: audio=127.0.0.1:8924/2 +# O> 127.0.0.1:55987 RSP(INVITE,100) NO SDP # << ok 11 - [uas] (?^:I<.*REQ\(INVITE\) SDP: audio=\S+) -# uas >> O> 127.0.0.1:52330 RSP(INVITE,100) NO SDP -# << -# uas >> O> 127.0.0.1:52330 RSP(INVITE,404) NO SDP +# uas >> O> 127.0.0.1:55987 RSP(INVITE,404) NO SDP # << ok 12 - [uas] (?^:O>.*RSP\(INVITE,404\)) -# proxy >> I< HASH(0xaaaae9aed308) RSP(INVITE,100) NO SDP -# O> 127.0.0.1:48324 RSP(INVITE,100) NO SDP +# proxy >> I< HASH(0xaaaabe2e9240) RSP(INVITE,100) NO SDP +# O> 127.0.0.1:58397 RSP(INVITE,100) NO SDP # << -# proxy >> I< HASH(0xaaaae91e9808) RSP(INVITE,404) NO SDP +# proxy >> I< HASH(0xaaaabe2e8ee0) RSP(INVITE,404) NO SDP +# O> 127.0.0.1:58397 RSP(INVITE,404) NO SDP # << ok 13 - [proxy] (?^:I<.*RSP\(INVITE,404\)) -# proxy >> O> 127.0.0.1:48324 RSP(INVITE,404) NO SDP -# << ok 14 - [proxy] (?^:O>.*RSP\(INVITE,404\)) -# uac >> I< HASH(0xaaaae9c7a828) RSP(INVITE,100) NO SDP -# << -# uac >> I< HASH(0xaaaae9c7aa98) RSP(INVITE,404) NO SDP +# uac >> I< HASH(0xaaaabe473c80) RSP(INVITE,100) NO SDP +# I< HASH(0xaaaabe473ed8) RSP(INVITE,404) NO SDP +# O> 127.0.0.1:33484 REQ(ACK) NO SDP # << ok 15 - [uac] (?^:I<.*RSP\(INVITE,404\)) -# uac >> O> 127.0.0.1:48152 REQ(ACK) NO SDP -# << ok 16 - [uac] (?^:O>.*REQ\(ACK\)) -# proxy >> I< HASH(0xaaaae9ad7b20) REQ(ACK) NO SDP +# proxy >> I< HASH(0xaaaabe2d3318) REQ(ACK) NO SDP +# O> 127.0.0.1:49131 REQ(ACK) NO SDP # << ok 17 - [proxy] (?^:I<.*REQ\(ACK\)) -# proxy >> O> 127.0.0.1:53362 REQ(ACK) NO SDP -# << ok 18 - [proxy] (?^:O>.*REQ\(ACK\)) -# uas >> I< HASH(0xaaaae9af58d0) REQ(ACK) NO SDP +# uas >> I< HASH(0xaaaabe2f1a28) REQ(ACK) NO SDP # << ok 19 - [uas] (?^:I<.*REQ\(ACK\)) # ------- test with family ip4 transport udp inline-nat -# UAS on 127.0.0.1:33285 -# UAC on 127.0.0.1:52855 -# PROXY on 127.0.0.1:47696 127.0.0.1:48476 +# UAS on 127.0.0.1:54927 +# UAC on 127.0.0.1:54842 +# PROXY on 127.0.0.1:48530 127.0.0.1:41450 ok 20 - no fork nathelper # proxy >> OK +# ready # << ok 21 - [proxy] OK # uas >> OK +# UAS created +# ready # << ok 22 - [uas] OK -# proxy >> ready -# << ok 23 - [proxy] ready -# uas >> UAS created -# ready -# << ok 24 - [uas] ready # uac >> OK +# ready # << ok 25 - [uac] OK -# uac >> ready -# << ok 26 - [uac] ready -# uac >> O> 127.0.0.1:47696 REQ(INVITE) SDP: audio=127.0.0.1:9756/2 +# uac >> O> 127.0.0.1:48530 REQ(INVITE) SDP: audio=127.0.0.1:2432/2 # << ok 27 - [uac] (?^:O>.*REQ\(INVITE\) SDP: audio=\S+) -# proxy >> I< HASH(0xaaaae9ad9ee8) REQ(INVITE) SDP: audio=127.0.0.1:9756/2 +# proxy >> I< HASH(0xaaaabe2f1330) REQ(INVITE) SDP: audio=127.0.0.1:2432/2 # << ok 28 - [proxy] (?^:I<.*REQ\(INVITE\) SDP: audio=\S+) -# proxy >> O> 127.0.0.1:33285 REQ(INVITE) SDP: audio=127.0.0.1:4168/2 +# proxy >> O> 127.0.0.1:54927 REQ(INVITE) SDP: audio=127.0.0.1:3900/2 # << ok 29 - [proxy] (?^:O>.*REQ\(INVITE\) SDP: audio=\S+) -# uas >> I< HASH(0xaaaae9ad9d38) REQ(INVITE) SDP: audio=127.0.0.1:4168/2 +# uas >> I< HASH(0xaaaabe2f0520) REQ(INVITE) SDP: audio=127.0.0.1:3900/2 +# O> 127.0.0.1:41450 RSP(INVITE,100) NO SDP # << ok 30 - [uas] (?^:I<.*REQ\(INVITE\) SDP: audio=\S+) -# uas >> O> 127.0.0.1:48476 RSP(INVITE,100) NO SDP -# << -# uas >> O> 127.0.0.1:48476 RSP(INVITE,404) NO SDP +# uas >> O> 127.0.0.1:41450 RSP(INVITE,404) NO SDP # << ok 31 - [uas] (?^:O>.*RSP\(INVITE,404\)) -# proxy >> I< HASH(0xaaaae9af9748) RSP(INVITE,100) NO SDP -# O> 127.0.0.1:52855 RSP(INVITE,100) NO SDP +# proxy >> I< HASH(0xaaaabe2f1948) RSP(INVITE,100) NO SDP +# O> 127.0.0.1:54842 RSP(INVITE,100) NO SDP # << -# proxy >> I< HASH(0xaaaae9af5be8) RSP(INVITE,404) NO SDP +# proxy >> I< HASH(0xaaaabe2f13f0) RSP(INVITE,404) NO SDP +# O> 127.0.0.1:54842 RSP(INVITE,404) NO SDP # << ok 32 - [proxy] (?^:I<.*RSP\(INVITE,404\)) -# proxy >> O> 127.0.0.1:52855 RSP(INVITE,404) NO SDP -# << ok 33 - [proxy] (?^:O>.*RSP\(INVITE,404\)) -# uac >> I< HASH(0xaaaae9c7e558) RSP(INVITE,100) NO SDP +# uac >> I< HASH(0xaaaabe477948) RSP(INVITE,100) NO SDP # << -# uac >> I< HASH(0xaaaae9c7e7a8) RSP(INVITE,404) NO SDP +# uac >> I< HASH(0xaaaabe477c40) RSP(INVITE,404) NO SDP +# O> 127.0.0.1:48530 REQ(ACK) NO SDP # << ok 34 - [uac] (?^:I<.*RSP\(INVITE,404\)) -# uac >> O> 127.0.0.1:47696 REQ(ACK) NO SDP -# << ok 35 - [uac] (?^:O>.*REQ\(ACK\)) -# proxy >> I< HASH(0xaaaae9afa408) REQ(ACK) NO SDP +# proxy >> I< HASH(0xaaaabe2f18b8) REQ(ACK) NO SDP +# O> 127.0.0.1:54927 REQ(ACK) NO SDP # << ok 36 - [proxy] (?^:I<.*REQ\(ACK\)) -# proxy >> O> 127.0.0.1:33285 REQ(ACK) NO SDP -# << ok 37 - [proxy] (?^:O>.*REQ\(ACK\)) -# uas >> I< HASH(0xaaaae9af9708) REQ(ACK) NO SDP +# uas >> I< HASH(0xaaaabe2f5b50) REQ(ACK) NO SDP # << ok 38 - [uas] (?^:I<.*REQ\(ACK\)) # ------- test with family ip4 transport udp remote-nat -# UAS on 127.0.0.1:44385 -# UAC on 127.0.0.1:43587 -# PROXY on 127.0.0.1:55022 127.0.0.1:50737 +# UAS on 127.0.0.1:41074 +# UAC on 127.0.0.1:36274 +# PROXY on 127.0.0.1:55223 127.0.0.1:34300 # nathelper >> OK # << ok 39 - [nathelper] OK # proxy >> OK +# ready # << ok 40 - [proxy] OK # uas >> OK +# UAS created +# ready # << ok 41 - [uas] OK -# proxy >> ready -# << ok 42 - [proxy] ready -# uas >> UAS created -# ready -# << ok 43 - [uas] ready # uac >> OK +# ready # << ok 44 - [uac] OK -# uac >> ready -# << ok 45 - [uac] ready -# uac >> O> 127.0.0.1:55022 REQ(INVITE) SDP: audio=127.0.0.1:9570/2 +# uac >> O> 127.0.0.1:55223 REQ(INVITE) SDP: audio=127.0.0.1:6042/2 # << ok 46 - [uac] (?^:O>.*REQ\(INVITE\) SDP: audio=\S+) -# proxy >> I< HASH(0xaaaae9ae3bb0) REQ(INVITE) SDP: audio=127.0.0.1:9570/2 +# proxy >> I< HASH(0xaaaabe2f49e0) REQ(INVITE) SDP: audio=127.0.0.1:6042/2 # << ok 47 - [proxy] (?^:I<.*REQ\(INVITE\) SDP: audio=\S+) -# proxy >> O> 127.0.0.1:44385 REQ(INVITE) SDP: audio=127.0.0.1:2026/2 +# proxy >> O> 127.0.0.1:41074 REQ(INVITE) SDP: audio=127.0.0.1:10856/2 # << ok 48 - [proxy] (?^:O>.*REQ\(INVITE\) SDP: audio=\S+) -# uas >> I< HASH(0xaaaae9add170) REQ(INVITE) SDP: audio=127.0.0.1:2026/2 +# uas >> I< HASH(0xaaaabe2f5228) REQ(INVITE) SDP: audio=127.0.0.1:10856/2 +# O> 127.0.0.1:34300 RSP(INVITE,100) NO SDP # << ok 49 - [uas] (?^:I<.*REQ\(INVITE\) SDP: audio=\S+) -# uas >> O> 127.0.0.1:50737 RSP(INVITE,100) NO SDP -# << -# uas >> O> 127.0.0.1:50737 RSP(INVITE,404) NO SDP +# uas >> O> 127.0.0.1:34300 RSP(INVITE,404) NO SDP # << ok 50 - [uas] (?^:O>.*RSP\(INVITE,404\)) -# proxy >> I< HASH(0xaaaae9ae42a0) RSP(INVITE,100) NO SDP -# O> 127.0.0.1:43587 RSP(INVITE,100) NO SDP +# proxy >> I< HASH(0xaaaabe2f4f98) RSP(INVITE,100) NO SDP +# O> 127.0.0.1:36274 RSP(INVITE,100) NO SDP # << -# proxy >> I< HASH(0xaaaae9af8f70) RSP(INVITE,404) NO SDP +# proxy >> I< HASH(0xaaaabe2f4bd8) RSP(INVITE,404) NO SDP # << ok 51 - [proxy] (?^:I<.*RSP\(INVITE,404\)) -# proxy >> O> 127.0.0.1:43587 RSP(INVITE,404) NO SDP +# proxy >> O> 127.0.0.1:36274 RSP(INVITE,404) NO SDP # << ok 52 - [proxy] (?^:O>.*RSP\(INVITE,404\)) -# uac >> I< HASH(0xaaaae9c80de8) RSP(INVITE,100) NO SDP +# uac >> I< HASH(0xaaaabe47ad40) RSP(INVITE,100) NO SDP # << -# uac >> I< HASH(0xaaaae9c80e90) RSP(INVITE,404) NO SDP +# uac >> I< HASH(0xaaaabe47ab00) RSP(INVITE,404) NO SDP +# O> 127.0.0.1:55223 REQ(ACK) NO SDP # << ok 53 - [uac] (?^:I<.*RSP\(INVITE,404\)) -# uac >> O> 127.0.0.1:55022 REQ(ACK) NO SDP -# << ok 54 - [uac] (?^:O>.*REQ\(ACK\)) -# proxy >> I< HASH(0xaaaae9af90d8) REQ(ACK) NO SDP +# proxy >> I< HASH(0xaaaabe2e0860) REQ(ACK) NO SDP # << ok 55 - [proxy] (?^:I<.*REQ\(ACK\)) -# proxy >> O> 127.0.0.1:44385 REQ(ACK) NO SDP +# proxy >> O> 127.0.0.1:41074 REQ(ACK) NO SDP # << ok 56 - [proxy] (?^:O>.*REQ\(ACK\)) -# uas >> I< HASH(0xaaaae9af9fd8) REQ(ACK) NO SDP +# uas >> I< HASH(0xaaaabe2f8868) REQ(ACK) NO SDP # << ok 57 - [uas] (?^:I<.*REQ\(ACK\)) # ------- test with family ip6 transport udp no-nat -# UAS on [::1]:40167 -# UAC on [::1]:47449 -# PROXY on [::1]:33229 [::1]:54888 +# UAS on [::1]:40036 +# UAC on [::1]:46488 +# PROXY on [::1]:59733 [::1]:33674 ok 58 - no fork nathelper # proxy >> OK +# ready # << ok 59 - [proxy] OK # uas >> OK +# UAS created +# ready # << ok 60 - [uas] OK -# proxy >> ready -# << ok 61 - [proxy] ready -# uas >> UAS created -# ready -# << ok 62 - [uas] ready # uac >> OK +# ready # << ok 63 - [uac] OK -# uac >> ready -# << ok 64 - [uac] ready -# uac >> O> [::1]:33229 REQ(INVITE) SDP: audio=[::1]:8452/2 +# uac >> O> [::1]:59733 REQ(INVITE) SDP: audio=[::1]:3204/2 # << ok 65 - [uac] (?^:O>.*REQ\(INVITE\) SDP: audio=\S+) -# proxy >> I< HASH(0xaaaae9ae8980) REQ(INVITE) SDP: audio=[::1]:8452/2 +# proxy >> I< HASH(0xaaaabe2e4c60) REQ(INVITE) SDP: audio=[::1]:3204/2 +# O> [::1]:40036 REQ(INVITE) SDP: audio=[::1]:3204/2 # << ok 66 - [proxy] (?^:I<.*REQ\(INVITE\) SDP: audio=\S+) -# proxy >> O> [::1]:40167 REQ(INVITE) SDP: audio=[::1]:8452/2 -# << ok 67 - [proxy] (?^:O>.*REQ\(INVITE\) SDP: audio=\S+) -# uas >> I< HASH(0xaaaae9ae8c18) REQ(INVITE) SDP: audio=[::1]:8452/2 +# uas >> I< HASH(0xaaaabe2f7df0) REQ(INVITE) SDP: audio=[::1]:3204/2 +# O> [::1]:33674 RSP(INVITE,100) NO SDP # << ok 68 - [uas] (?^:I<.*REQ\(INVITE\) SDP: audio=\S+) -# uas >> O> [::1]:54888 RSP(INVITE,100) NO SDP -# << -# uas >> O> [::1]:54888 RSP(INVITE,404) NO SDP +# uas >> O> [::1]:33674 RSP(INVITE,404) NO SDP # << ok 69 - [uas] (?^:O>.*RSP\(INVITE,404\)) -# proxy >> I< HASH(0xaaaae9ae9130) RSP(INVITE,100) NO SDP -# O> [::1]:47449 RSP(INVITE,100) NO SDP -# I< HASH(0xaaaae9afd4a8) RSP(INVITE,404) NO SDP +# proxy >> I< HASH(0xaaaabe2f8ed0) RSP(INVITE,100) NO SDP +# O> [::1]:46488 RSP(INVITE,100) NO SDP # << -ok 70 - [proxy] (?^:I<.*RSP\(INVITE,404\)) -# proxy >> O> [::1]:47449 RSP(INVITE,404) NO SDP +# proxy >> I< HASH(0xaaaabe2e4d20) RSP(INVITE,404) NO SDP +# O> [::1]:46488 RSP(INVITE,404) NO SDP # << +ok 70 - [proxy] (?^:I<.*RSP\(INVITE,404\)) ok 71 - [proxy] (?^:O>.*RSP\(INVITE,404\)) -# uac >> I< HASH(0xaaaae9c84d20) RSP(INVITE,100) NO SDP +# uac >> I< HASH(0xaaaabe47b638) RSP(INVITE,100) NO SDP # << -# uac >> I< HASH(0xaaaae9c85140) RSP(INVITE,404) NO SDP +# uac >> I< HASH(0xaaaabe47b308) RSP(INVITE,404) NO SDP +# O> [::1]:59733 REQ(ACK) NO SDP # << ok 72 - [uac] (?^:I<.*RSP\(INVITE,404\)) -# uac >> O> [::1]:33229 REQ(ACK) NO SDP -# << ok 73 - [uac] (?^:O>.*REQ\(ACK\)) -# proxy >> I< HASH(0xaaaae9ae8890) REQ(ACK) NO SDP +# proxy >> I< HASH(0xaaaabe2f8e10) REQ(ACK) NO SDP +# O> [::1]:40036 REQ(ACK) NO SDP # << ok 74 - [proxy] (?^:I<.*REQ\(ACK\)) -# proxy >> O> [::1]:40167 REQ(ACK) NO SDP -# << ok 75 - [proxy] (?^:O>.*REQ\(ACK\)) -# uas >> I< HASH(0xaaaae9afce40) REQ(ACK) NO SDP +# uas >> I< HASH(0xaaaabe2fc9e8) REQ(ACK) NO SDP # << ok 76 - [uas] (?^:I<.*REQ\(ACK\)) # ------- test with family ip6 transport udp inline-nat -# UAS on [::1]:38909 -# UAC on [::1]:35394 -# PROXY on [::1]:44540 [::1]:42637 +# UAS on [::1]:38430 +# UAC on [::1]:54502 +# PROXY on [::1]:45940 [::1]:38072 ok 77 - no fork nathelper # proxy >> OK +# ready # << ok 78 - [proxy] OK # uas >> OK +# UAS created +# ready # << ok 79 - [uas] OK -# proxy >> ready -# << ok 80 - [proxy] ready -# uas >> UAS created -# ready -# << ok 81 - [uas] ready # uac >> OK +# ready # << ok 82 - [uac] OK -# uac >> ready -# << ok 83 - [uac] ready -# uac >> O> [::1]:44540 REQ(INVITE) SDP: audio=[::1]:9628/2 +# uac >> O> [::1]:45940 REQ(INVITE) SDP: audio=[::1]:9158/2 # << ok 84 - [uac] (?^:O>.*REQ\(INVITE\) SDP: audio=\S+) -# proxy >> I< HASH(0xaaaae9aee148) REQ(INVITE) SDP: audio=[::1]:9628/2 +# proxy >> I< HASH(0xaaaabe2e9cc8) REQ(INVITE) SDP: audio=[::1]:9158/2 +# O> [::1]:38430 REQ(INVITE) SDP: audio=[::1]:11408/2 # << ok 85 - [proxy] (?^:I<.*REQ\(INVITE\) SDP: audio=\S+) -# proxy >> O> [::1]:38909 REQ(INVITE) SDP: audio=[::1]:5252/2 -# << ok 86 - [proxy] (?^:O>.*REQ\(INVITE\) SDP: audio=\S+) -# uas >> I< HASH(0xaaaae9aee7a0) REQ(INVITE) SDP: audio=[::1]:5252/2 +# uas >> I< HASH(0xaaaabe2e99b8) REQ(INVITE) SDP: audio=[::1]:11408/2 +# O> [::1]:38072 RSP(INVITE,100) NO SDP # << ok 87 - [uas] (?^:I<.*REQ\(INVITE\) SDP: audio=\S+) -# uas >> O> [::1]:42637 RSP(INVITE,100) NO SDP -# << -# uas >> O> [::1]:42637 RSP(INVITE,404) NO SDP +# uas >> O> [::1]:38072 RSP(INVITE,404) NO SDP # << ok 88 - [uas] (?^:O>.*RSP\(INVITE,404\)) -# proxy >> I< HASH(0xaaaae9aee8f8) RSP(INVITE,100) NO SDP -# O> [::1]:35394 RSP(INVITE,100) NO SDP +# proxy >> I< HASH(0xaaaabe2fcc88) RSP(INVITE,100) NO SDP +# O> [::1]:54502 RSP(INVITE,100) NO SDP # << -# proxy >> I< HASH(0xaaaae9aeedd8) RSP(INVITE,404) NO SDP +# proxy >> I< HASH(0xaaaabe2e9d88) RSP(INVITE,404) NO SDP +# O> [::1]:54502 RSP(INVITE,404) NO SDP # << ok 89 - [proxy] (?^:I<.*RSP\(INVITE,404\)) -# proxy >> O> [::1]:35394 RSP(INVITE,404) NO SDP -# << ok 90 - [proxy] (?^:O>.*RSP\(INVITE,404\)) -# uac >> I< HASH(0xaaaae9c895a8) RSP(INVITE,100) NO SDP -# << -# uac >> I< HASH(0xaaaae9c89890) RSP(INVITE,404) NO SDP +# uac >> I< HASH(0xaaaabe480870) RSP(INVITE,100) NO SDP +# I< HASH(0xaaaabe480690) RSP(INVITE,404) NO SDP # << ok 91 - [uac] (?^:I<.*RSP\(INVITE,404\)) -# uac >> O> [::1]:44540 REQ(ACK) NO SDP +# uac >> O> [::1]:45940 REQ(ACK) NO SDP # << ok 92 - [uac] (?^:O>.*REQ\(ACK\)) -# proxy >> I< HASH(0xaaaae9b06438) REQ(ACK) NO SDP +# proxy >> I< HASH(0xaaaabe2fcce8) REQ(ACK) NO SDP +# O> [::1]:38430 REQ(ACK) NO SDP # << ok 93 - [proxy] (?^:I<.*REQ\(ACK\)) -# proxy >> O> [::1]:38909 REQ(ACK) NO SDP -# << ok 94 - [proxy] (?^:O>.*REQ\(ACK\)) -# uas >> I< HASH(0xaaaae9b01ec0) REQ(ACK) NO SDP +# uas >> I< HASH(0xaaaabe2ff548) REQ(ACK) NO SDP # << ok 95 - [uas] (?^:I<.*REQ\(ACK\)) # ------- test with family ip6 transport udp remote-nat -# UAS on [::1]:33869 -# UAC on [::1]:41401 -# PROXY on [::1]:54274 [::1]:33821 +# UAS on [::1]:40463 +# UAC on [::1]:57343 +# PROXY on [::1]:59572 [::1]:43085 # nathelper >> OK # << ok 96 - [nathelper] OK # proxy >> OK +# ready # << ok 97 - [proxy] OK # uas >> OK # UAS created +# ready # << ok 98 - [uas] OK -# proxy >> ready -# << ok 99 - [proxy] ready -# uas >> ready -# << ok 100 - [uas] ready # uac >> OK +# ready # << ok 101 - [uac] OK -# uac >> ready -# << ok 102 - [uac] ready -# uac >> O> [::1]:54274 REQ(INVITE) SDP: audio=[::1]:9362/2 +# uac >> O> [::1]:59572 REQ(INVITE) SDP: audio=[::1]:10650/2 # << ok 103 - [uac] (?^:O>.*REQ\(INVITE\) SDP: audio=\S+) -# proxy >> I< HASH(0xaaaae9aeb6c8) REQ(INVITE) SDP: audio=[::1]:9362/2 +# proxy >> I< HASH(0xaaaabe2fb978) REQ(INVITE) SDP: audio=[::1]:10650/2 # << ok 104 - [proxy] (?^:I<.*REQ\(INVITE\) SDP: audio=\S+) -# proxy >> O> [::1]:33869 REQ(INVITE) SDP: audio=[::1]:10548/2 +# proxy >> O> [::1]:40463 REQ(INVITE) SDP: audio=[::1]:5926/2 # << ok 105 - [proxy] (?^:O>.*REQ\(INVITE\) SDP: audio=\S+) -# uas >> I< HASH(0xaaaae9aeb7a0) REQ(INVITE) SDP: audio=[::1]:10548/2 +# uas >> I< HASH(0xaaaabe2fb980) REQ(INVITE) SDP: audio=[::1]:5926/2 +# O> [::1]:43085 RSP(INVITE,100) NO SDP # << ok 106 - [uas] (?^:I<.*REQ\(INVITE\) SDP: audio=\S+) -# uas >> O> [::1]:33821 RSP(INVITE,100) NO SDP -# << -# uas >> O> [::1]:33821 RSP(INVITE,404) NO SDP +# uas >> O> [::1]:43085 RSP(INVITE,404) NO SDP # << ok 107 - [uas] (?^:O>.*RSP\(INVITE,404\)) -# proxy >> I< HASH(0xaaaae9b004b8) RSP(INVITE,100) NO SDP -# O> [::1]:41401 RSP(INVITE,100) NO SDP +# proxy >> I< HASH(0xaaaabe2fbde0) RSP(INVITE,100) NO SDP +# O> [::1]:57343 RSP(INVITE,100) NO SDP # << -# proxy >> I< HASH(0xaaaae9b00908) RSP(INVITE,404) NO SDP +# proxy >> I< HASH(0xaaaabe2fba38) RSP(INVITE,404) NO SDP # << ok 108 - [proxy] (?^:I<.*RSP\(INVITE,404\)) -# proxy >> O> [::1]:41401 RSP(INVITE,404) NO SDP +# proxy >> O> [::1]:57343 RSP(INVITE,404) NO SDP # << ok 109 - [proxy] (?^:O>.*RSP\(INVITE,404\)) -# uac >> I< HASH(0xaaaae9c8a998) RSP(INVITE,100) NO SDP -# << -# uac >> I< HASH(0xaaaae9c8ab48) RSP(INVITE,404) NO SDP +# uac >> I< HASH(0xaaaabe4843c8) RSP(INVITE,100) NO SDP +# I< HASH(0xaaaabe4843f8) RSP(INVITE,404) NO SDP +# O> [::1]:59572 REQ(ACK) NO SDP # << ok 110 - [uac] (?^:I<.*RSP\(INVITE,404\)) -# uac >> O> [::1]:54274 REQ(ACK) NO SDP -# << ok 111 - [uac] (?^:O>.*REQ\(ACK\)) -# proxy >> I< HASH(0xaaaae96395d8) REQ(ACK) NO SDP +# proxy >> I< HASH(0xaaaabe2fb6c0) REQ(ACK) NO SDP +# O> [::1]:40463 REQ(ACK) NO SDP # << ok 112 - [proxy] (?^:I<.*REQ\(ACK\)) -# proxy >> O> [::1]:33869 REQ(ACK) NO SDP -# << ok 113 - [proxy] (?^:O>.*REQ\(ACK\)) -# uas >> I< HASH(0xaaaae9b04de8) REQ(ACK) NO SDP +# uas >> I< HASH(0xaaaabe3033e0) REQ(ACK) NO SDP # << ok 114 - [uas] (?^:I<.*REQ\(ACK\)) # ------- test with family ip4 transport tcp no-nat -# UAS on 127.0.0.1:54183 -# UAC on 127.0.0.1:33837 -# PROXY on 127.0.0.1:53283 127.0.0.1:58855 +# UAS on 127.0.0.1:50531 +# UAC on 127.0.0.1:43737 +# PROXY on 127.0.0.1:36559 127.0.0.1:35919 ok 115 - no fork nathelper # proxy >> OK +# ready # << ok 116 - [proxy] OK # uas >> OK +# UAS created +# ready # << ok 117 - [uas] OK -# proxy >> ready -# << ok 118 - [proxy] ready -# uas >> UAS created -# ready -# << ok 119 - [uas] ready # uac >> OK +# ready # << ok 120 - [uac] OK -# uac >> ready -# << ok 121 - [uac] ready -# uac >> O> 127.0.0.1:53283 REQ(INVITE) SDP: audio=127.0.0.1:2952/2 +# uac >> O> 127.0.0.1:36559 REQ(INVITE) SDP: audio=127.0.0.1:10942/2 # << ok 122 - [uac] (?^:O>.*REQ\(INVITE\) SDP: audio=\S+) -# proxy >> I< HASH(0xaaaae9b06120) REQ(INVITE) SDP: audio=127.0.0.1:2952/2 +# proxy >> I< HASH(0xaaaabe3014c0) REQ(INVITE) SDP: audio=127.0.0.1:10942/2 +# O> 127.0.0.1:50531 REQ(INVITE) SDP: audio=127.0.0.1:10942/2 # << ok 123 - [proxy] (?^:I<.*REQ\(INVITE\) SDP: audio=\S+) -# proxy >> O> 127.0.0.1:54183 REQ(INVITE) SDP: audio=127.0.0.1:2952/2 -# << ok 124 - [proxy] (?^:O>.*REQ\(INVITE\) SDP: audio=\S+) -# uas >> I< HASH(0xaaaae9b08d08) REQ(INVITE) SDP: audio=127.0.0.1:2952/2 +# uas >> I< HASH(0xaaaabe303fa8) REQ(INVITE) SDP: audio=127.0.0.1:10942/2 +# O> 127.0.0.1:43715 RSP(INVITE,100) NO SDP # << ok 125 - [uas] (?^:I<.*REQ\(INVITE\) SDP: audio=\S+) -# uas >> O> 127.0.0.1:34419 RSP(INVITE,100) NO SDP -# << -# uas >> O> 127.0.0.1:34419 RSP(INVITE,404) NO SDP +# uas >> O> 127.0.0.1:43715 RSP(INVITE,404) NO SDP # << ok 126 - [uas] (?^:O>.*RSP\(INVITE,404\)) -# proxy >> I< HASH(0xaaaae9b0d810) RSP(INVITE,100) NO SDP -# O> 127.0.0.1:33837 RSP(INVITE,100) NO SDP +# proxy >> I< HASH(0xaaaabe309bc0) RSP(INVITE,100) NO SDP +# O> 127.0.0.1:43737 RSP(INVITE,100) NO SDP # << -# proxy >> I< HASH(0xaaaae9b0d6d8) RSP(INVITE,404) NO SDP +# proxy >> I< HASH(0xaaaabe304a30) RSP(INVITE,404) NO SDP # << ok 127 - [proxy] (?^:I<.*RSP\(INVITE,404\)) -# proxy >> O> 127.0.0.1:33837 RSP(INVITE,404) NO SDP +# proxy >> O> 127.0.0.1:43737 RSP(INVITE,404) NO SDP # << ok 128 - [proxy] (?^:O>.*RSP\(INVITE,404\)) -# uac >> I< HASH(0xaaaae9c8f168) RSP(INVITE,100) NO SDP -# << -# uac >> I< HASH(0xaaaae9c8e378) RSP(INVITE,404) NO SDP +# uac >> I< HASH(0xaaaabe489108) RSP(INVITE,100) NO SDP +# I< HASH(0xaaaabe488700) RSP(INVITE,404) NO SDP +# O> 127.0.0.1:36559 REQ(ACK) NO SDP # << ok 129 - [uac] (?^:I<.*RSP\(INVITE,404\)) -# uac >> O> 127.0.0.1:53283 REQ(ACK) NO SDP -# << ok 130 - [uac] (?^:O>.*REQ\(ACK\)) -# proxy >> I< HASH(0xaaaae9b0f750) REQ(ACK) NO SDP +# proxy >> I< HASH(0xaaaabe2e9b20) REQ(ACK) NO SDP +# O> 127.0.0.1:50531 REQ(ACK) NO SDP # << ok 131 - [proxy] (?^:I<.*REQ\(ACK\)) -# proxy >> O> 127.0.0.1:54183 REQ(ACK) NO SDP -# << ok 132 - [proxy] (?^:O>.*REQ\(ACK\)) -# uas >> I< HASH(0xaaaae9b11f58) REQ(ACK) NO SDP +# uas >> I< HASH(0xaaaabe307d90) REQ(ACK) NO SDP # << ok 133 - [uas] (?^:I<.*REQ\(ACK\)) # ------- test with family ip4 transport tcp inline-nat -# UAS on 127.0.0.1:53791 -# UAC on 127.0.0.1:39993 -# PROXY on 127.0.0.1:45337 127.0.0.1:48311 +# UAS on 127.0.0.1:57739 +# UAC on 127.0.0.1:54445 +# PROXY on 127.0.0.1:52277 127.0.0.1:54711 ok 134 - no fork nathelper # proxy >> OK +# ready # << ok 135 - [proxy] OK # uas >> OK +# UAS created +# ready # << ok 136 - [uas] OK -# proxy >> ready -# << ok 137 - [proxy] ready -# uas >> UAS created -# ready -# << ok 138 - [uas] ready # uac >> OK # << @@ -6751,731 +6267,642 @@ # uac >> ready # << ok 140 - [uac] ready -# uac >> O> 127.0.0.1:45337 REQ(INVITE) SDP: audio=127.0.0.1:11762/2 +# uac >> O> 127.0.0.1:52277 REQ(INVITE) SDP: audio=127.0.0.1:5850/2 # << ok 141 - [uac] (?^:O>.*REQ\(INVITE\) SDP: audio=\S+) -# proxy >> I< HASH(0xaaaae9b0b3a8) REQ(INVITE) SDP: audio=127.0.0.1:11762/2 +# proxy >> I< HASH(0xaaaabe306848) REQ(INVITE) SDP: audio=127.0.0.1:5850/2 +# O> 127.0.0.1:57739 REQ(INVITE) SDP: audio=127.0.0.1:10538/2 # << ok 142 - [proxy] (?^:I<.*REQ\(INVITE\) SDP: audio=\S+) -# proxy >> O> 127.0.0.1:53791 REQ(INVITE) SDP: audio=127.0.0.1:3910/2 -# << ok 143 - [proxy] (?^:O>.*REQ\(INVITE\) SDP: audio=\S+) -# uas >> I< HASH(0xaaaae9b0cf78) REQ(INVITE) SDP: audio=127.0.0.1:3910/2 +# uas >> I< HASH(0xaaaabe308168) REQ(INVITE) SDP: audio=127.0.0.1:10538/2 +# O> 127.0.0.1:40261 RSP(INVITE,100) NO SDP # << ok 144 - [uas] (?^:I<.*REQ\(INVITE\) SDP: audio=\S+) -# uas >> O> 127.0.0.1:44833 RSP(INVITE,100) NO SDP -# << -# uas >> O> 127.0.0.1:44833 RSP(INVITE,404) NO SDP +# uas >> O> 127.0.0.1:40261 RSP(INVITE,404) NO SDP # << ok 145 - [uas] (?^:O>.*RSP\(INVITE,404\)) -# proxy >> I< HASH(0xaaaae9b12138) RSP(INVITE,100) NO SDP -# O> 127.0.0.1:39993 RSP(INVITE,100) NO SDP +# proxy >> I< HASH(0xaaaabe30dd48) RSP(INVITE,100) NO SDP +# O> 127.0.0.1:54445 RSP(INVITE,100) NO SDP # << -# proxy >> I< HASH(0xaaaae9b12270) RSP(INVITE,404) NO SDP +# proxy >> I< HASH(0xaaaabe3068f0) RSP(INVITE,404) NO SDP +# O> 127.0.0.1:54445 RSP(INVITE,404) NO SDP # << ok 146 - [proxy] (?^:I<.*RSP\(INVITE,404\)) -# proxy >> O> 127.0.0.1:39993 RSP(INVITE,404) NO SDP -# << ok 147 - [proxy] (?^:O>.*RSP\(INVITE,404\)) -# uac >> I< HASH(0xaaaae9c96878) RSP(INVITE,100) NO SDP -# << -# uac >> I< HASH(0xaaaae9c92a30) RSP(INVITE,404) NO SDP +# uac >> I< HASH(0xaaaabe48dc48) RSP(INVITE,100) NO SDP +# I< HASH(0xaaaabe48d2b8) RSP(INVITE,404) NO SDP +# O> 127.0.0.1:52277 REQ(ACK) NO SDP # << ok 148 - [uac] (?^:I<.*RSP\(INVITE,404\)) -# uac >> O> 127.0.0.1:45337 REQ(ACK) NO SDP -# << ok 149 - [uac] (?^:O>.*REQ\(ACK\)) -# proxy >> I< HASH(0xaaaae9b24a40) REQ(ACK) NO SDP +# proxy >> I< HASH(0xaaaabe30bda8) REQ(ACK) NO SDP +# O> 127.0.0.1:57739 REQ(ACK) NO SDP # << ok 150 - [proxy] (?^:I<.*REQ\(ACK\)) -# proxy >> O> 127.0.0.1:53791 REQ(ACK) NO SDP -# << ok 151 - [proxy] (?^:O>.*REQ\(ACK\)) -# uas >> I< HASH(0xaaaae9b175d8) REQ(ACK) NO SDP +# uas >> I< HASH(0xaaaabe30b650) REQ(ACK) NO SDP # << ok 152 - [uas] (?^:I<.*REQ\(ACK\)) # ------- test with family ip4 transport tcp remote-nat -# UAS on 127.0.0.1:51813 -# UAC on 127.0.0.1:51995 -# PROXY on 127.0.0.1:53671 127.0.0.1:39935 +# UAS on 127.0.0.1:59945 +# UAC on 127.0.0.1:34083 +# PROXY on 127.0.0.1:41487 127.0.0.1:47869 # nathelper >> OK # << ok 153 - [nathelper] OK # proxy >> OK +# ready # << ok 154 - [proxy] OK # uas >> OK # UAS created +# ready # << ok 155 - [uas] OK -# proxy >> ready -# << ok 156 - [proxy] ready -# uas >> ready -# << ok 157 - [uas] ready # uac >> OK +# ready # << ok 158 - [uac] OK -# uac >> ready -# << ok 159 - [uac] ready -# uac >> O> 127.0.0.1:53671 REQ(INVITE) SDP: audio=127.0.0.1:8852/2 +# uac >> O> 127.0.0.1:41487 REQ(INVITE) SDP: audio=127.0.0.1:9124/2 # << ok 160 - [uac] (?^:O>.*REQ\(INVITE\) SDP: audio=\S+) -# proxy >> I< HASH(0xaaaae9b0df70) REQ(INVITE) SDP: audio=127.0.0.1:8852/2 +# proxy >> I< HASH(0xaaaabe3090b0) REQ(INVITE) SDP: audio=127.0.0.1:9124/2 # << ok 161 - [proxy] (?^:I<.*REQ\(INVITE\) SDP: audio=\S+) -# proxy >> O> 127.0.0.1:51813 REQ(INVITE) SDP: audio=127.0.0.1:6250/2 +# proxy >> O> 127.0.0.1:59945 REQ(INVITE) SDP: audio=127.0.0.1:3694/2 # << ok 162 - [proxy] (?^:O>.*REQ\(INVITE\) SDP: audio=\S+) -# uas >> I< HASH(0xaaaae9b11b10) REQ(INVITE) SDP: audio=127.0.0.1:6250/2 +# uas >> I< HASH(0xaaaabe30ccd0) REQ(INVITE) SDP: audio=127.0.0.1:3694/2 +# O> 127.0.0.1:45405 RSP(INVITE,100) NO SDP # << ok 163 - [uas] (?^:I<.*REQ\(INVITE\) SDP: audio=\S+) -# uas >> O> 127.0.0.1:43623 RSP(INVITE,100) NO SDP -# << -# uas >> O> 127.0.0.1:43623 RSP(INVITE,404) NO SDP +# uas >> O> 127.0.0.1:45405 RSP(INVITE,404) NO SDP # << ok 164 - [uas] (?^:O>.*RSP\(INVITE,404\)) -# proxy >> I< HASH(0xaaaae9b15678) RSP(INVITE,100) NO SDP -# O> 127.0.0.1:51995 RSP(INVITE,100) NO SDP +# proxy >> I< HASH(0xaaaabe311118) RSP(INVITE,100) NO SDP +# O> 127.0.0.1:34083 RSP(INVITE,100) NO SDP # << -# proxy >> I< HASH(0xaaaae9b15a68) RSP(INVITE,404) NO SDP +# proxy >> I< HASH(0xaaaabe309158) RSP(INVITE,404) NO SDP # << ok 165 - [proxy] (?^:I<.*RSP\(INVITE,404\)) -# proxy >> O> 127.0.0.1:51995 RSP(INVITE,404) NO SDP +# proxy >> O> 127.0.0.1:34083 RSP(INVITE,404) NO SDP # << ok 166 - [proxy] (?^:O>.*RSP\(INVITE,404\)) -# uac >> I< HASH(0xaaaae9c99ba0) RSP(INVITE,100) NO SDP -# << -# uac >> I< HASH(0xaaaae9c94ed8) RSP(INVITE,404) NO SDP +# uac >> I< HASH(0xaaaabe4917f0) RSP(INVITE,100) NO SDP +# I< HASH(0xaaaabe48adf8) RSP(INVITE,404) NO SDP +# O> 127.0.0.1:41487 REQ(ACK) NO SDP # << ok 167 - [uac] (?^:I<.*RSP\(INVITE,404\)) -# uac >> O> 127.0.0.1:53671 REQ(ACK) NO SDP -# << ok 168 - [uac] (?^:O>.*REQ\(ACK\)) -# proxy >> I< HASH(0xaaaae9b16ea0) REQ(ACK) NO SDP +# proxy >> I< HASH(0xaaaabe312280) REQ(ACK) NO SDP +# O> 127.0.0.1:59945 REQ(ACK) NO SDP # << ok 169 - [proxy] (?^:I<.*REQ\(ACK\)) -# proxy >> O> 127.0.0.1:51813 REQ(ACK) NO SDP -# << ok 170 - [proxy] (?^:O>.*REQ\(ACK\)) -# uas >> I< HASH(0xaaaae9b1c010) REQ(ACK) NO SDP +# uas >> I< HASH(0xaaaabe3104b8) REQ(ACK) NO SDP # << ok 171 - [uas] (?^:I<.*REQ\(ACK\)) # ------- test with family ip6 transport tcp no-nat -# UAS on [::1]:57175 -# UAC on [::1]:60011 -# PROXY on [::1]:60961 [::1]:41089 +# UAS on [::1]:44113 +# UAC on [::1]:46621 +# PROXY on [::1]:59541 [::1]:49341 ok 172 - no fork nathelper # proxy >> OK +# ready # << ok 173 - [proxy] OK # uas >> OK +# UAS created +# ready # << ok 174 - [uas] OK -# proxy >> ready -# << ok 175 - [proxy] ready -# uas >> UAS created -# ready -# << ok 176 - [uas] ready # uac >> OK +# ready # << ok 177 - [uac] OK -# uac >> ready -# << ok 178 - [uac] ready -# uac >> O> [::1]:60961 REQ(INVITE) SDP: audio=[::1]:2182/2 +# uac >> O> [::1]:59541 REQ(INVITE) SDP: audio=[::1]:2498/2 # << ok 179 - [uac] (?^:O>.*REQ\(INVITE\) SDP: audio=\S+) -# proxy >> I< HASH(0xaaaae9b11ac0) REQ(INVITE) SDP: audio=[::1]:2182/2 +# proxy >> I< HASH(0xaaaabe30ccc0) REQ(INVITE) SDP: audio=[::1]:2498/2 +# O> [::1]:44113 REQ(INVITE) SDP: audio=[::1]:2498/2 # << ok 180 - [proxy] (?^:I<.*REQ\(INVITE\) SDP: audio=\S+) -# proxy >> O> [::1]:57175 REQ(INVITE) SDP: audio=[::1]:2182/2 -# << ok 181 - [proxy] (?^:O>.*REQ\(INVITE\) SDP: audio=\S+) -# uas >> I< HASH(0xaaaae9b12290) REQ(INVITE) SDP: audio=[::1]:2182/2 +# uas >> I< HASH(0xaaaabe30d440) REQ(INVITE) SDP: audio=[::1]:2498/2 +# O> [::1]:39207 RSP(INVITE,100) NO SDP # << ok 182 - [uas] (?^:I<.*REQ\(INVITE\) SDP: audio=\S+) -# uas >> O> [::1]:33915 RSP(INVITE,100) NO SDP -# << -# uas >> O> [::1]:33915 RSP(INVITE,404) NO SDP +# uas >> O> [::1]:39207 RSP(INVITE,404) NO SDP # << ok 183 - [uas] (?^:O>.*RSP\(INVITE,404\)) -# proxy >> I< HASH(0xaaaae9b18118) RSP(INVITE,100) NO SDP -# O> [::1]:60011 RSP(INVITE,100) NO SDP +# proxy >> I< HASH(0xaaaabe313958) RSP(INVITE,100) NO SDP +# O> [::1]:46621 RSP(INVITE,100) NO SDP # << -# proxy >> I< HASH(0xaaaae9b18250) RSP(INVITE,404) NO SDP +# proxy >> I< HASH(0xaaaabe30cd68) RSP(INVITE,404) NO SDP +# O> [::1]:46621 RSP(INVITE,404) NO SDP # << ok 184 - [proxy] (?^:I<.*RSP\(INVITE,404\)) -# proxy >> O> [::1]:60011 RSP(INVITE,404) NO SDP -# << ok 185 - [proxy] (?^:O>.*RSP\(INVITE,404\)) -# uac >> I< HASH(0xaaaae9c9c960) RSP(INVITE,100) NO SDP +# uac >> I< HASH(0xaaaabe495dd0) RSP(INVITE,100) NO SDP # << -# uac >> I< HASH(0xaaaae9c98c50) RSP(INVITE,404) NO SDP +# uac >> I< HASH(0xaaaabe492360) RSP(INVITE,404) NO SDP +# O> [::1]:59541 REQ(ACK) NO SDP # << ok 186 - [uac] (?^:I<.*RSP\(INVITE,404\)) -# uac >> O> [::1]:60961 REQ(ACK) NO SDP -# << ok 187 - [uac] (?^:O>.*REQ\(ACK\)) -# proxy >> I< HASH(0xaaaae9b197f0) REQ(ACK) NO SDP +# proxy >> I< HASH(0xaaaabe2f42a8) REQ(ACK) NO SDP +# O> [::1]:44113 REQ(ACK) NO SDP # << ok 188 - [proxy] (?^:I<.*REQ\(ACK\)) -# proxy >> O> [::1]:57175 REQ(ACK) NO SDP -# << ok 189 - [proxy] (?^:O>.*REQ\(ACK\)) -# uas >> I< HASH(0xaaaae9b19758) REQ(ACK) NO SDP +# uas >> I< HASH(0xaaaabe313d08) REQ(ACK) NO SDP # << ok 190 - [uas] (?^:I<.*REQ\(ACK\)) # ------- test with family ip6 transport tcp inline-nat -# UAS on [::1]:41761 -# UAC on [::1]:50179 -# PROXY on [::1]:40725 [::1]:35337 +# UAS on [::1]:43507 +# UAC on [::1]:49349 +# PROXY on [::1]:34805 [::1]:56909 ok 191 - no fork nathelper # proxy >> OK +# ready # << ok 192 - [proxy] OK # uas >> OK +# UAS created +# ready # << ok 193 - [uas] OK -# proxy >> ready -# << ok 194 - [proxy] ready -# uas >> UAS created -# ready -# << ok 195 - [uas] ready # uac >> OK +# ready # << ok 196 - [uac] OK -# uac >> ready -# << ok 197 - [uac] ready -# uac >> O> [::1]:40725 REQ(INVITE) SDP: audio=[::1]:7002/2 +# uac >> O> [::1]:34805 REQ(INVITE) SDP: audio=[::1]:4888/2 # << ok 198 - [uac] (?^:O>.*REQ\(INVITE\) SDP: audio=\S+) -# proxy >> I< HASH(0xaaaae9b14e08) REQ(INVITE) SDP: audio=[::1]:7002/2 +# proxy >> I< HASH(0xaaaabe30fed8) REQ(INVITE) SDP: audio=[::1]:4888/2 +# O> [::1]:43507 REQ(INVITE) SDP: audio=[::1]:5324/2 # << ok 199 - [proxy] (?^:I<.*REQ\(INVITE\) SDP: audio=\S+) -# proxy >> O> [::1]:41761 REQ(INVITE) SDP: audio=[::1]:2394/2 -# << ok 200 - [proxy] (?^:O>.*REQ\(INVITE\) SDP: audio=\S+) -# uas >> I< HASH(0xaaaae9b14fb0) REQ(INVITE) SDP: audio=[::1]:2394/2 +# uas >> I< HASH(0xaaaabe310140) REQ(INVITE) SDP: audio=[::1]:5324/2 +# O> [::1]:35931 RSP(INVITE,100) NO SDP # << ok 201 - [uas] (?^:I<.*REQ\(INVITE\) SDP: audio=\S+) -# uas >> O> [::1]:38285 RSP(INVITE,100) NO SDP -# << -# uas >> O> [::1]:38285 RSP(INVITE,404) NO SDP +# uas >> O> [::1]:35931 RSP(INVITE,404) NO SDP # << ok 202 - [uas] (?^:O>.*RSP\(INVITE,404\)) -# proxy >> I< HASH(0xaaaae9b1d240) RSP(INVITE,100) NO SDP -# O> [::1]:50179 RSP(INVITE,100) NO SDP +# proxy >> I< HASH(0xaaaabe318278) RSP(INVITE,100) NO SDP +# O> [::1]:49349 RSP(INVITE,100) NO SDP # << -# proxy >> I< HASH(0xaaaae9b1d120) RSP(INVITE,404) NO SDP +# proxy >> I< HASH(0xaaaabe30ff80) RSP(INVITE,404) NO SDP +# O> [::1]:49349 RSP(INVITE,404) NO SDP # << ok 203 - [proxy] (?^:I<.*RSP\(INVITE,404\)) -# proxy >> O> [::1]:50179 RSP(INVITE,404) NO SDP -# << ok 204 - [proxy] (?^:O>.*RSP\(INVITE,404\)) -# uac >> I< HASH(0xaaaae9c9f890) RSP(INVITE,100) NO SDP -# << -# uac >> I< HASH(0xaaaae9c9b9d8) RSP(INVITE,404) NO SDP +# uac >> I< HASH(0xaaaabe498710) RSP(INVITE,100) NO SDP +# I< HASH(0xaaaabe494b18) RSP(INVITE,404) NO SDP +# O> [::1]:34805 REQ(ACK) NO SDP # << ok 205 - [uac] (?^:I<.*RSP\(INVITE,404\)) -# uac >> O> [::1]:40725 REQ(ACK) NO SDP -# << ok 206 - [uac] (?^:O>.*REQ\(ACK\)) -# proxy >> I< HASH(0xaaaae9b2dbc8) REQ(ACK) NO SDP +# proxy >> I< HASH(0xaaaabe3173e0) REQ(ACK) NO SDP +# O> [::1]:43507 REQ(ACK) NO SDP # << ok 207 - [proxy] (?^:I<.*REQ\(ACK\)) -# proxy >> O> [::1]:41761 REQ(ACK) NO SDP -# << ok 208 - [proxy] (?^:O>.*REQ\(ACK\)) -# uas >> I< HASH(0xaaaae9b1c178) REQ(ACK) NO SDP +# uas >> I< HASH(0xaaaabe314d40) REQ(ACK) NO SDP # << ok 209 - [uas] (?^:I<.*REQ\(ACK\)) # ------- test with family ip6 transport tcp remote-nat -# UAS on [::1]:39413 -# UAC on [::1]:43811 -# PROXY on [::1]:50421 [::1]:45901 +# UAS on [::1]:36373 +# UAC on [::1]:41227 +# PROXY on [::1]:40059 [::1]:53815 # nathelper >> OK # << ok 210 - [nathelper] OK # proxy >> OK +# ready # << ok 211 - [proxy] OK # uas >> OK +# UAS created +# ready # << ok 212 - [uas] OK -# proxy >> ready -# << ok 213 - [proxy] ready -# uas >> UAS created -# ready -# << ok 214 - [uas] ready # uac >> OK +# ready # << ok 215 - [uac] OK -# uac >> ready -# << ok 216 - [uac] ready -# uac >> O> [::1]:50421 REQ(INVITE) SDP: audio=[::1]:7272/2 +# uac >> O> [::1]:40059 REQ(INVITE) SDP: audio=[::1]:3756/2 # << ok 217 - [uac] (?^:O>.*REQ\(INVITE\) SDP: audio=\S+) -# proxy >> I< HASH(0xaaaae9b18780) REQ(INVITE) SDP: audio=[::1]:7272/2 +# proxy >> I< HASH(0xaaaabe3134d0) REQ(INVITE) SDP: audio=[::1]:3756/2 # << ok 218 - [proxy] (?^:I<.*REQ\(INVITE\) SDP: audio=\S+) -# proxy >> O> [::1]:39413 REQ(INVITE) SDP: audio=[::1]:2594/2 +# proxy >> O> [::1]:36373 REQ(INVITE) SDP: audio=[::1]:7082/2 # << ok 219 - [proxy] (?^:O>.*REQ\(INVITE\) SDP: audio=\S+) -# uas >> I< HASH(0xaaaae9b18298) REQ(INVITE) SDP: audio=[::1]:2594/2 +# uas >> I< HASH(0xaaaabe312f08) REQ(INVITE) SDP: audio=[::1]:7082/2 +# O> [::1]:44315 RSP(INVITE,100) NO SDP # << ok 220 - [uas] (?^:I<.*REQ\(INVITE\) SDP: audio=\S+) -# uas >> O> [::1]:33967 RSP(INVITE,100) NO SDP -# << -# uas >> O> [::1]:33967 RSP(INVITE,404) NO SDP +# uas >> O> [::1]:44315 RSP(INVITE,404) NO SDP # << ok 221 - [uas] (?^:O>.*RSP\(INVITE,404\)) -# proxy >> I< HASH(0xaaaae9b1d498) RSP(INVITE,100) NO SDP -# O> [::1]:43811 RSP(INVITE,100) NO SDP +# proxy >> I< HASH(0xaaaabe3182f0) RSP(INVITE,100) NO SDP +# O> [::1]:41227 RSP(INVITE,100) NO SDP # << -# proxy >> I< HASH(0xaaaae9b1d6a8) RSP(INVITE,404) NO SDP +# proxy >> I< HASH(0xaaaabe313578) RSP(INVITE,404) NO SDP # << ok 222 - [proxy] (?^:I<.*RSP\(INVITE,404\)) -# proxy >> O> [::1]:43811 RSP(INVITE,404) NO SDP +# proxy >> O> [::1]:41227 RSP(INVITE,404) NO SDP # << ok 223 - [proxy] (?^:O>.*RSP\(INVITE,404\)) -# uac >> I< HASH(0xaaaae9cb46d8) RSP(INVITE,100) NO SDP +# uac >> I< HASH(0xaaaabe4ad3e8) RSP(INVITE,100) NO SDP # << -# uac >> I< HASH(0xaaaae9c9cfb8) RSP(INVITE,404) NO SDP +# uac >> I< HASH(0xaaaabe496818) RSP(INVITE,404) NO SDP +# O> [::1]:40059 REQ(ACK) NO SDP # << ok 224 - [uac] (?^:I<.*RSP\(INVITE,404\)) -# uac >> O> [::1]:50421 REQ(ACK) NO SDP -# << ok 225 - [uac] (?^:O>.*REQ\(ACK\)) -# proxy >> I< HASH(0xaaaae9b2d410) REQ(ACK) NO SDP +# proxy >> I< HASH(0xaaaabe328af0) REQ(ACK) NO SDP +# O> [::1]:36373 REQ(ACK) NO SDP # << ok 226 - [proxy] (?^:I<.*REQ\(ACK\)) -# proxy >> O> [::1]:39413 REQ(ACK) NO SDP -# << ok 227 - [proxy] (?^:O>.*REQ\(ACK\)) -# uas >> I< HASH(0xaaaae9b20560) REQ(ACK) NO SDP +# uas >> I< HASH(0xaaaabe317b18) REQ(ACK) NO SDP # << ok 228 - [uas] (?^:I<.*REQ\(ACK\)) # ------- test with family ip4 transport tls no-nat -# UAS on 127.0.0.1:37315 -# UAC on 127.0.0.1:58065 -# PROXY on 127.0.0.1:53419 127.0.0.1:56227 +# UAS on 127.0.0.1:49373 +# UAC on 127.0.0.1:41387 +# PROXY on 127.0.0.1:54931 127.0.0.1:47245 ok 229 - no fork nathelper # proxy >> OK +# ready # << ok 230 - [proxy] OK # uas >> OK +# UAS created +# ready # << ok 231 - [uas] OK -# proxy >> ready -# << ok 232 - [proxy] ready -# uas >> UAS created -# ready -# << ok 233 - [uas] ready # uac >> OK +# ready # << ok 234 - [uac] OK -# uac >> ready -# << ok 235 - [uac] ready -# uac >> O> 127.0.0.1:53419 REQ(INVITE) SDP: audio=127.0.0.1:7278/2 +# uac >> O> 127.0.0.1:54931 REQ(INVITE) SDP: audio=127.0.0.1:6644/2 # << ok 236 - [uac] (?^:O>.*REQ\(INVITE\) SDP: audio=\S+) -# proxy >> I< HASH(0xaaaae9e9a4a8) REQ(INVITE) SDP: audio=127.0.0.1:7278/2 +# proxy >> I< HASH(0xaaaabe695048) REQ(INVITE) SDP: audio=127.0.0.1:6644/2 +# O> 127.0.0.1:49373 REQ(INVITE) SDP: audio=127.0.0.1:6644/2 # << ok 237 - [proxy] (?^:I<.*REQ\(INVITE\) SDP: audio=\S+) -# proxy >> O> 127.0.0.1:37315 REQ(INVITE) SDP: audio=127.0.0.1:7278/2 -# << ok 238 - [proxy] (?^:O>.*REQ\(INVITE\) SDP: audio=\S+) -# uas >> I< HASH(0xaaaae9e99938) REQ(INVITE) SDP: audio=127.0.0.1:7278/2 +# uas >> I< HASH(0xaaaabe6957a8) REQ(INVITE) SDP: audio=127.0.0.1:6644/2 # << ok 239 - [uas] (?^:I<.*REQ\(INVITE\) SDP: audio=\S+) -# uas >> O> 127.0.0.1:42033 RSP(INVITE,100) NO SDP +# uas >> O> 127.0.0.1:39839 RSP(INVITE,100) NO SDP # << -# uas >> O> 127.0.0.1:42033 RSP(INVITE,404) NO SDP +# uas >> O> 127.0.0.1:39839 RSP(INVITE,404) NO SDP # << ok 240 - [uas] (?^:O>.*RSP\(INVITE,404\)) -# proxy >> I< HASH(0xaaaae9e8a718) RSP(INVITE,100) NO SDP -# << -# proxy >> O> 127.0.0.1:58065 RSP(INVITE,100) NO SDP -# << -# proxy >> I< HASH(0xaaaae9e8a598) RSP(INVITE,404) NO SDP +# proxy >> I< HASH(0xaaaabe685878) RSP(INVITE,100) NO SDP +# O> 127.0.0.1:41387 RSP(INVITE,100) NO SDP +# I< HASH(0xaaaabe685c98) RSP(INVITE,404) NO SDP +# O> 127.0.0.1:41387 RSP(INVITE,404) NO SDP # << ok 241 - [proxy] (?^:I<.*RSP\(INVITE,404\)) -# proxy >> O> 127.0.0.1:58065 RSP(INVITE,404) NO SDP -# << ok 242 - [proxy] (?^:O>.*RSP\(INVITE,404\)) -# uac >> I< HASH(0xaaaaea02aa38) RSP(INVITE,100) NO SDP -# << -# uac >> I< HASH(0xaaaae9fe2050) RSP(INVITE,404) NO SDP +# uac >> I< HASH(0xaaaabe82bd28) RSP(INVITE,100) NO SDP +# I< HASH(0xaaaabe8169b8) RSP(INVITE,404) NO SDP +# O> 127.0.0.1:54931 REQ(ACK) NO SDP # << ok 243 - [uac] (?^:I<.*RSP\(INVITE,404\)) -# uac >> O> 127.0.0.1:53419 REQ(ACK) NO SDP -# << ok 244 - [uac] (?^:O>.*REQ\(ACK\)) -# proxy >> I< HASH(0xaaaae9eadad0) REQ(ACK) NO SDP +# proxy >> I< HASH(0xaaaabe695d80) REQ(ACK) NO SDP +# O> 127.0.0.1:49373 REQ(ACK) NO SDP # << ok 245 - [proxy] (?^:I<.*REQ\(ACK\)) -# proxy >> O> 127.0.0.1:37315 REQ(ACK) NO SDP -# << ok 246 - [proxy] (?^:O>.*REQ\(ACK\)) -# uas >> I< HASH(0xaaaae9ea4a70) REQ(ACK) NO SDP +# uas >> I< HASH(0xaaaabe683b50) REQ(ACK) NO SDP # << ok 247 - [uas] (?^:I<.*REQ\(ACK\)) # ------- test with family ip4 transport tls inline-nat -# UAS on 127.0.0.1:34403 -# UAC on 127.0.0.1:39549 -# PROXY on 127.0.0.1:53657 127.0.0.1:57137 +# UAS on 127.0.0.1:38795 +# UAC on 127.0.0.1:52817 +# PROXY on 127.0.0.1:43149 127.0.0.1:37285 ok 248 - no fork nathelper # proxy >> OK +# ready # << ok 249 - [proxy] OK # uas >> OK # UAS created +# ready # << ok 250 - [uas] OK -# proxy >> ready -# << ok 251 - [proxy] ready -# uas >> ready -# << ok 252 - [uas] ready # uac >> OK +# ready # << ok 253 - [uac] OK -# uac >> ready -# << ok 254 - [uac] ready -# uac >> O> 127.0.0.1:53657 REQ(INVITE) SDP: audio=127.0.0.1:7278/2 +# uac >> O> 127.0.0.1:43149 REQ(INVITE) SDP: audio=127.0.0.1:6644/2 # << ok 255 - [uac] (?^:O>.*REQ\(INVITE\) SDP: audio=\S+) -# proxy >> I< HASH(0xaaaae9e92aa0) REQ(INVITE) SDP: audio=127.0.0.1:7278/2 +# proxy >> I< HASH(0xaaaabe68d570) REQ(INVITE) SDP: audio=127.0.0.1:6644/2 # << ok 256 - [proxy] (?^:I<.*REQ\(INVITE\) SDP: audio=\S+) -# proxy >> O> 127.0.0.1:34403 REQ(INVITE) SDP: audio=127.0.0.1:5410/2 +# proxy >> O> 127.0.0.1:38795 REQ(INVITE) SDP: audio=127.0.0.1:8238/2 # << ok 257 - [proxy] (?^:O>.*REQ\(INVITE\) SDP: audio=\S+) -# uas >> I< HASH(0xaaaae9e93a28) REQ(INVITE) SDP: audio=127.0.0.1:5410/2 +# uas >> I< HASH(0xaaaabe68e5d8) REQ(INVITE) SDP: audio=127.0.0.1:8238/2 +# O> 127.0.0.1:38409 RSP(INVITE,100) NO SDP # << ok 258 - [uas] (?^:I<.*REQ\(INVITE\) SDP: audio=\S+) -# uas >> O> 127.0.0.1:34119 RSP(INVITE,100) NO SDP -# << -# uas >> O> 127.0.0.1:34119 RSP(INVITE,404) NO SDP +# uas >> O> 127.0.0.1:38409 RSP(INVITE,404) NO SDP # << ok 259 - [uas] (?^:O>.*RSP\(INVITE,404\)) -# proxy >> I< HASH(0xaaaae9e8f878) RSP(INVITE,100) NO SDP +# proxy >> I< HASH(0xaaaabe68a6f0) RSP(INVITE,100) NO SDP +# O> 127.0.0.1:52817 RSP(INVITE,100) NO SDP # << -# proxy >> O> 127.0.0.1:39549 RSP(INVITE,100) NO SDP -# << -# proxy >> I< HASH(0xaaaae9e8f740) RSP(INVITE,404) NO SDP +# proxy >> I< HASH(0xaaaabe6b1750) RSP(INVITE,404) NO SDP +# O> 127.0.0.1:52817 RSP(INVITE,404) NO SDP # << ok 260 - [proxy] (?^:I<.*RSP\(INVITE,404\)) -# proxy >> O> 127.0.0.1:39549 RSP(INVITE,404) NO SDP -# << ok 261 - [proxy] (?^:O>.*RSP\(INVITE,404\)) -# uac >> I< HASH(0xaaaaea069380) RSP(INVITE,100) NO SDP -# << -# uac >> I< HASH(0xaaaaea068d80) RSP(INVITE,404) NO SDP +# uac >> I< HASH(0xaaaabe862220) RSP(INVITE,100) NO SDP +# I< HASH(0xaaaabe8615f0) RSP(INVITE,404) NO SDP +# O> 127.0.0.1:43149 REQ(ACK) NO SDP # << ok 262 - [uac] (?^:I<.*RSP\(INVITE,404\)) -# uac >> O> 127.0.0.1:53657 REQ(ACK) NO SDP -# << ok 263 - [uac] (?^:O>.*REQ\(ACK\)) -# proxy >> I< HASH(0xaaaae9ec1fc8) REQ(ACK) NO SDP +# proxy >> I< HASH(0xaaaabe6887a8) REQ(ACK) NO SDP +# O> 127.0.0.1:38795 REQ(ACK) NO SDP # << ok 264 - [proxy] (?^:I<.*REQ\(ACK\)) -# proxy >> O> 127.0.0.1:34403 REQ(ACK) NO SDP -# << ok 265 - [proxy] (?^:O>.*REQ\(ACK\)) -# uas >> I< HASH(0xaaaae9ea8dd0) REQ(ACK) NO SDP +# uas >> I< HASH(0xaaaabe68b0b0) REQ(ACK) NO SDP # << ok 266 - [uas] (?^:I<.*REQ\(ACK\)) # ------- test with family ip4 transport tls remote-nat -# UAS on 127.0.0.1:59541 -# UAC on 127.0.0.1:43697 -# PROXY on 127.0.0.1:51551 127.0.0.1:43461 +# UAS on 127.0.0.1:37539 +# UAC on 127.0.0.1:39629 +# PROXY on 127.0.0.1:46975 127.0.0.1:54819 # nathelper >> OK # << ok 267 - [nathelper] OK # proxy >> OK +# ready # << ok 268 - [proxy] OK # uas >> OK +# UAS created +# ready # << ok 269 - [uas] OK -# proxy >> ready -# << ok 270 - [proxy] ready -# uas >> UAS created -# ready -# << ok 271 - [uas] ready # uac >> OK +# ready # << ok 272 - [uac] OK -# uac >> ready -# << ok 273 - [uac] ready -# uac >> O> 127.0.0.1:51551 REQ(INVITE) SDP: audio=127.0.0.1:7278/2 +# uac >> O> 127.0.0.1:46975 REQ(INVITE) SDP: audio=127.0.0.1:6644/2 # << ok 274 - [uac] (?^:O>.*REQ\(INVITE\) SDP: audio=\S+) -# proxy >> I< HASH(0xaaaae9e946a0) REQ(INVITE) SDP: audio=127.0.0.1:7278/2 +# proxy >> I< HASH(0xaaaabe68ec30) REQ(INVITE) SDP: audio=127.0.0.1:6644/2 # << ok 275 - [proxy] (?^:I<.*REQ\(INVITE\) SDP: audio=\S+) -# proxy >> O> 127.0.0.1:59541 REQ(INVITE) SDP: audio=127.0.0.1:11446/2 +# proxy >> O> 127.0.0.1:37539 REQ(INVITE) SDP: audio=127.0.0.1:6916/2 # << ok 276 - [proxy] (?^:O>.*REQ\(INVITE\) SDP: audio=\S+) -# uas >> I< HASH(0xaaaae9e8e670) REQ(INVITE) SDP: audio=127.0.0.1:11446/2 +# uas >> I< HASH(0xaaaabe688ea0) REQ(INVITE) SDP: audio=127.0.0.1:6916/2 +# O> 127.0.0.1:36875 RSP(INVITE,100) NO SDP # << ok 277 - [uas] (?^:I<.*REQ\(INVITE\) SDP: audio=\S+) -# uas >> O> 127.0.0.1:36163 RSP(INVITE,100) NO SDP -# << -# uas >> O> 127.0.0.1:36163 RSP(INVITE,404) NO SDP +# uas >> O> 127.0.0.1:36875 RSP(INVITE,404) NO SDP # << ok 278 - [uas] (?^:O>.*RSP\(INVITE,404\)) -# proxy >> I< HASH(0xaaaae9e91cc8) RSP(INVITE,100) NO SDP -# << -# proxy >> O> 127.0.0.1:43697 RSP(INVITE,100) NO SDP -# << -# proxy >> I< HASH(0xaaaae9e88ba8) RSP(INVITE,404) NO SDP +# proxy >> I< HASH(0xaaaabe68c3e0) RSP(INVITE,100) NO SDP +# O> 127.0.0.1:39629 RSP(INVITE,100) NO SDP +# I< HASH(0xaaaabe68bfa8) RSP(INVITE,404) NO SDP # << ok 279 - [proxy] (?^:I<.*RSP\(INVITE,404\)) -# proxy >> O> 127.0.0.1:43697 RSP(INVITE,404) NO SDP +# proxy >> O> 127.0.0.1:39629 RSP(INVITE,404) NO SDP # << ok 280 - [proxy] (?^:O>.*RSP\(INVITE,404\)) -# uac >> I< HASH(0xaaaaea06f9f8) RSP(INVITE,100) NO SDP +# uac >> I< HASH(0xaaaabe867c88) RSP(INVITE,100) NO SDP # << -# uac >> I< HASH(0xaaaaea06f458) RSP(INVITE,404) NO SDP +# uac >> I< HASH(0xaaaabe8670e8) RSP(INVITE,404) NO SDP +# O> 127.0.0.1:46975 REQ(ACK) NO SDP # << ok 281 - [uac] (?^:I<.*RSP\(INVITE,404\)) -# uac >> O> 127.0.0.1:51551 REQ(ACK) NO SDP -# << ok 282 - [uac] (?^:O>.*REQ\(ACK\)) -# proxy >> I< HASH(0xaaaae9ec36b0) REQ(ACK) NO SDP +# proxy >> I< HASH(0xaaaabe6bc838) REQ(ACK) NO SDP +# O> 127.0.0.1:37539 REQ(ACK) NO SDP # << ok 283 - [proxy] (?^:I<.*REQ\(ACK\)) -# proxy >> O> 127.0.0.1:59541 REQ(ACK) NO SDP -# << ok 284 - [proxy] (?^:O>.*REQ\(ACK\)) -# uas >> I< HASH(0xaaaae9eada38) REQ(ACK) NO SDP +# uas >> I< HASH(0xaaaabe68b838) REQ(ACK) NO SDP # << ok 285 - [uas] (?^:I<.*REQ\(ACK\)) # ------- test with family ip6 transport tls no-nat -# UAS on [::1]:33655 -# UAC on [::1]:56527 -# PROXY on [::1]:34207 [::1]:45759 +# UAS on [::1]:43333 +# UAC on [::1]:57981 +# PROXY on [::1]:46637 [::1]:47461 ok 286 - no fork nathelper # proxy >> OK +# ready # << ok 287 - [proxy] OK # uas >> OK +# UAS created +# ready # << ok 288 - [uas] OK -# proxy >> ready -# << ok 289 - [proxy] ready -# uas >> UAS created -# ready -# << ok 290 - [uas] ready # uac >> OK +# ready # << ok 291 - [uac] OK -# uac >> ready -# << ok 292 - [uac] ready -# uac >> O> [::1]:34207 REQ(INVITE) SDP: audio=[::1]:7278/2 +# uac >> O> [::1]:46637 REQ(INVITE) SDP: audio=[::1]:6644/2 # << ok 293 - [uac] (?^:O>.*REQ\(INVITE\) SDP: audio=\S+) -# proxy >> I< HASH(0xaaaae9e92520) REQ(INVITE) SDP: audio=[::1]:7278/2 +# proxy >> I< HASH(0xaaaabe68c920) REQ(INVITE) SDP: audio=[::1]:6644/2 +# O> [::1]:43333 REQ(INVITE) SDP: audio=[::1]:6644/2 # << ok 294 - [proxy] (?^:I<.*REQ\(INVITE\) SDP: audio=\S+) -# proxy >> O> [::1]:33655 REQ(INVITE) SDP: audio=[::1]:7278/2 -# << ok 295 - [proxy] (?^:O>.*REQ\(INVITE\) SDP: audio=\S+) -# uas >> I< HASH(0xaaaae9e931a0) REQ(INVITE) SDP: audio=[::1]:7278/2 +# uas >> I< HASH(0xaaaabe693d50) REQ(INVITE) SDP: audio=[::1]:6644/2 +# O> [::1]:37767 RSP(INVITE,100) NO SDP # << ok 296 - [uas] (?^:I<.*REQ\(INVITE\) SDP: audio=\S+) -# uas >> O> [::1]:39197 RSP(INVITE,100) NO SDP -# << -# uas >> O> [::1]:39197 RSP(INVITE,404) NO SDP +# uas >> O> [::1]:37767 RSP(INVITE,404) NO SDP # << ok 297 - [uas] (?^:O>.*RSP\(INVITE,404\)) -# proxy >> I< HASH(0xaaaae9e95fc0) RSP(INVITE,100) NO SDP +# proxy >> I< HASH(0xaaaabe690460) RSP(INVITE,100) NO SDP +# O> [::1]:57981 RSP(INVITE,100) NO SDP # << -# proxy >> O> [::1]:56527 RSP(INVITE,100) NO SDP -# << -# proxy >> I< HASH(0xaaaae9e95e88) RSP(INVITE,404) NO SDP +# proxy >> I< HASH(0xaaaabe68f8f0) RSP(INVITE,404) NO SDP +# O> [::1]:57981 RSP(INVITE,404) NO SDP # << ok 298 - [proxy] (?^:I<.*RSP\(INVITE,404\)) -# proxy >> O> [::1]:56527 RSP(INVITE,404) NO SDP -# << ok 299 - [proxy] (?^:O>.*RSP\(INVITE,404\)) -# uac >> I< HASH(0xaaaaea02d638) RSP(INVITE,100) NO SDP -# << -# uac >> I< HASH(0xaaaaea02d098) RSP(INVITE,404) NO SDP +# uac >> I< HASH(0xaaaabe825b78) RSP(INVITE,100) NO SDP +# I< HASH(0xaaaabe822f10) RSP(INVITE,404) NO SDP # << ok 300 - [uac] (?^:I<.*RSP\(INVITE,404\)) -# uac >> O> [::1]:34207 REQ(ACK) NO SDP +# uac >> O> [::1]:46637 REQ(ACK) NO SDP # << ok 301 - [uac] (?^:O>.*REQ\(ACK\)) -# proxy >> I< HASH(0xaaaae9e97110) REQ(ACK) NO SDP +# proxy >> I< HASH(0xaaaabe6a1b30) REQ(ACK) NO SDP +# O> [::1]:43333 REQ(ACK) NO SDP # << ok 302 - [proxy] (?^:I<.*REQ\(ACK\)) -# proxy >> O> [::1]:33655 REQ(ACK) NO SDP -# << ok 303 - [proxy] (?^:O>.*REQ\(ACK\)) -# uas >> I< HASH(0xaaaae9e96370) REQ(ACK) NO SDP +# uas >> I< HASH(0xaaaabe68fcf8) REQ(ACK) NO SDP # << ok 304 - [uas] (?^:I<.*REQ\(ACK\)) # ------- test with family ip6 transport tls inline-nat -# UAS on [::1]:45355 -# UAC on [::1]:44837 -# PROXY on [::1]:59727 [::1]:35067 +# UAS on [::1]:57815 +# UAC on [::1]:60479 +# PROXY on [::1]:42483 [::1]:49509 ok 305 - no fork nathelper # proxy >> OK +# ready # << ok 306 - [proxy] OK # uas >> OK # UAS created +# ready # << ok 307 - [uas] OK -# proxy >> ready -# << ok 308 - [proxy] ready -# uas >> ready -# << ok 309 - [uas] ready # uac >> OK +# ready # << ok 310 - [uac] OK -# uac >> ready -# << ok 311 - [uac] ready -# uac >> O> [::1]:59727 REQ(INVITE) SDP: audio=[::1]:7278/2 +# uac >> O> [::1]:42483 REQ(INVITE) SDP: audio=[::1]:6644/2 # << ok 312 - [uac] (?^:O>.*REQ\(INVITE\) SDP: audio=\S+) -# proxy >> I< HASH(0xaaaae9e9c518) REQ(INVITE) SDP: audio=[::1]:7278/2 +# proxy >> I< HASH(0xaaaabe697208) REQ(INVITE) SDP: audio=[::1]:6644/2 # << ok 313 - [proxy] (?^:I<.*REQ\(INVITE\) SDP: audio=\S+) -# proxy >> O> [::1]:45355 REQ(INVITE) SDP: audio=[::1]:5410/2 +# proxy >> O> [::1]:57815 REQ(INVITE) SDP: audio=[::1]:8238/2 # << ok 314 - [proxy] (?^:O>.*REQ\(INVITE\) SDP: audio=\S+) -# uas >> I< HASH(0xaaaae9e9b920) REQ(INVITE) SDP: audio=[::1]:5410/2 +# uas >> I< HASH(0xaaaabe696620) REQ(INVITE) SDP: audio=[::1]:8238/2 +# O> [::1]:37353 RSP(INVITE,100) NO SDP # << ok 315 - [uas] (?^:I<.*REQ\(INVITE\) SDP: audio=\S+) -# uas >> O> [::1]:35923 RSP(INVITE,100) NO SDP -# << -# uas >> O> [::1]:35923 RSP(INVITE,404) NO SDP +# uas >> O> [::1]:37353 RSP(INVITE,404) NO SDP # << ok 316 - [uas] (?^:O>.*RSP\(INVITE,404\)) -# proxy >> I< HASH(0xaaaae9e99540) RSP(INVITE,100) NO SDP -# << -# proxy >> O> [::1]:44837 RSP(INVITE,100) NO SDP -# << -# proxy >> I< HASH(0xaaaae9e993c0) RSP(INVITE,404) NO SDP +# proxy >> I< HASH(0xaaaabe694828) RSP(INVITE,100) NO SDP +# O> [::1]:60479 RSP(INVITE,100) NO SDP +# I< HASH(0xaaaabe694ee8) RSP(INVITE,404) NO SDP +# O> [::1]:60479 RSP(INVITE,404) NO SDP # << ok 317 - [proxy] (?^:I<.*RSP\(INVITE,404\)) -# proxy >> O> [::1]:44837 RSP(INVITE,404) NO SDP -# << ok 318 - [proxy] (?^:O>.*RSP\(INVITE,404\)) -# uac >> I< HASH(0xaaaaea097f18) RSP(INVITE,100) NO SDP -# << -# uac >> I< HASH(0xaaaaea0978e8) RSP(INVITE,404) NO SDP +# uac >> I< HASH(0xaaaabe7edf28) RSP(INVITE,100) NO SDP +# I< HASH(0xaaaabe7d82d0) RSP(INVITE,404) NO SDP +# O> [::1]:42483 REQ(ACK) NO SDP # << ok 319 - [uac] (?^:I<.*RSP\(INVITE,404\)) -# uac >> O> [::1]:59727 REQ(ACK) NO SDP -# << ok 320 - [uac] (?^:O>.*REQ\(ACK\)) -# proxy >> I< HASH(0xaaaae9ec0b60) REQ(ACK) NO SDP +# proxy >> I< HASH(0xaaaabe693600) REQ(ACK) NO SDP +# O> [::1]:57815 REQ(ACK) NO SDP # << ok 321 - [proxy] (?^:I<.*REQ\(ACK\)) -# proxy >> O> [::1]:45355 REQ(ACK) NO SDP -# << ok 322 - [proxy] (?^:O>.*REQ\(ACK\)) -# uas >> I< HASH(0xaaaae9e98e10) REQ(ACK) NO SDP +# uas >> I< HASH(0xaaaabe691020) REQ(ACK) NO SDP # << ok 323 - [uas] (?^:I<.*REQ\(ACK\)) # ------- test with family ip6 transport tls remote-nat -# UAS on [::1]:55357 -# UAC on [::1]:44153 -# PROXY on [::1]:58235 [::1]:50243 +# UAS on [::1]:38995 +# UAC on [::1]:39549 +# PROXY on [::1]:45693 [::1]:57903 # nathelper >> OK # << ok 324 - [nathelper] OK # proxy >> OK +# ready # << ok 325 - [proxy] OK # uas >> OK +# UAS created +# ready # << ok 326 - [uas] OK -# proxy >> ready -# << ok 327 - [proxy] ready -# uas >> UAS created -# ready -# << ok 328 - [uas] ready # uac >> OK +# ready # << ok 329 - [uac] OK -# uac >> ready -# << ok 330 - [uac] ready -# uac >> O> [::1]:58235 REQ(INVITE) SDP: audio=[::1]:7278/2 +# uac >> O> [::1]:45693 REQ(INVITE) SDP: audio=[::1]:6644/2 # << ok 331 - [uac] (?^:O>.*REQ\(INVITE\) SDP: audio=\S+) -# proxy >> I< HASH(0xaaaae9e9edb0) REQ(INVITE) SDP: audio=[::1]:7278/2 +# proxy >> I< HASH(0xaaaabe699b40) REQ(INVITE) SDP: audio=[::1]:6644/2 # << ok 332 - [proxy] (?^:I<.*REQ\(INVITE\) SDP: audio=\S+) -# proxy >> O> [::1]:55357 REQ(INVITE) SDP: audio=[::1]:11446/2 +# proxy >> O> [::1]:38995 REQ(INVITE) SDP: audio=[::1]:6916/2 # << ok 333 - [proxy] (?^:O>.*REQ\(INVITE\) SDP: audio=\S+) -# uas >> I< HASH(0xaaaae9e9f558) REQ(INVITE) SDP: audio=[::1]:11446/2 +# uas >> I< HASH(0xaaaabe69af28) REQ(INVITE) SDP: audio=[::1]:6916/2 +# O> [::1]:45585 RSP(INVITE,100) NO SDP # << ok 334 - [uas] (?^:I<.*REQ\(INVITE\) SDP: audio=\S+) -# uas >> O> [::1]:35459 RSP(INVITE,100) NO SDP -# << -# uas >> O> [::1]:35459 RSP(INVITE,404) NO SDP +# uas >> O> [::1]:45585 RSP(INVITE,404) NO SDP # << ok 335 - [uas] (?^:O>.*RSP\(INVITE,404\)) -# proxy >> I< HASH(0xaaaae9e9c1e0) RSP(INVITE,100) NO SDP -# << -# proxy >> O> [::1]:44153 RSP(INVITE,100) NO SDP +# proxy >> I< HASH(0xaaaabe697610) RSP(INVITE,100) NO SDP +# O> [::1]:39549 RSP(INVITE,100) NO SDP # << -# proxy >> I< HASH(0xaaaae9e8b578) RSP(INVITE,404) NO SDP +# proxy >> I< HASH(0xaaaabe694ee0) RSP(INVITE,404) NO SDP # << ok 336 - [proxy] (?^:I<.*RSP\(INVITE,404\)) -# proxy >> O> [::1]:44153 RSP(INVITE,404) NO SDP +# proxy >> O> [::1]:39549 RSP(INVITE,404) NO SDP # << ok 337 - [proxy] (?^:O>.*RSP\(INVITE,404\)) -# uac >> I< HASH(0xaaaaea03b1b8) RSP(INVITE,100) NO SDP +# uac >> I< HASH(0xaaaabe832cb8) RSP(INVITE,100) NO SDP # << -# uac >> I< HASH(0xaaaae9ff4dd0) RSP(INVITE,404) NO SDP +# uac >> I< HASH(0xaaaabe7ec268) RSP(INVITE,404) NO SDP +# O> [::1]:45693 REQ(ACK) NO SDP # << ok 338 - [uac] (?^:I<.*RSP\(INVITE,404\)) -# uac >> O> [::1]:58235 REQ(ACK) NO SDP -# << ok 339 - [uac] (?^:O>.*REQ\(ACK\)) -# proxy >> I< HASH(0xaaaae9eb8438) REQ(ACK) NO SDP +# proxy >> I< HASH(0xaaaabe6b3400) REQ(ACK) NO SDP +# O> [::1]:38995 REQ(ACK) NO SDP # << ok 340 - [proxy] (?^:I<.*REQ\(ACK\)) -# proxy >> O> [::1]:55357 REQ(ACK) NO SDP -# << ok 341 - [proxy] (?^:O>.*REQ\(ACK\)) -# uas >> I< HASH(0xaaaae9e9c7f8) REQ(ACK) NO SDP +# uas >> I< HASH(0xaaaabe696df0) REQ(ACK) NO SDP # << ok 342 - [uas] (?^:I<.*REQ\(ACK\)) ok @@ -7507,7 +6934,7 @@ 1..4 ok All tests successful. -Files=23, Tests=1981, 401 wallclock secs ( 0.77 usr 0.12 sys + 72.72 cusr 8.76 csys = 82.37 CPU) +Files=23, Tests=1981, 409 wallclock secs ( 0.40 usr 0.08 sys + 33.43 cusr 7.03 csys = 40.94 CPU) Result: PASS make[2]: Leaving directory '/build/reproducible-path/libnet-sip-perl-0.836' make[1]: Leaving directory '/build/reproducible-path/libnet-sip-perl-0.836' @@ -7517,63 +6944,63 @@ make -j12 install DESTDIR=/build/reproducible-path/libnet-sip-perl-0.836/debian/libnet-sip-perl AM_UPDATE_INFO_DIR=no PREFIX=/usr make[1]: Entering directory '/build/reproducible-path/libnet-sip-perl-0.836' Manifying 30 pod documents -Installing /build/reproducible-path/libnet-sip-perl-0.836/debian/libnet-sip-perl/usr/share/perl5/Net/SIP.pm Installing /build/reproducible-path/libnet-sip-perl-0.836/debian/libnet-sip-perl/usr/share/perl5/Net/SIP.pod -Installing /build/reproducible-path/libnet-sip-perl-0.836/debian/libnet-sip-perl/usr/share/perl5/Net/SIP/Response.pm -Installing /build/reproducible-path/libnet-sip-perl-0.836/debian/libnet-sip-perl/usr/share/perl5/Net/SIP/StatelessProxy.pod +Installing /build/reproducible-path/libnet-sip-perl-0.836/debian/libnet-sip-perl/usr/share/perl5/Net/SIP.pm +Installing /build/reproducible-path/libnet-sip-perl-0.836/debian/libnet-sip-perl/usr/share/perl5/Net/SIP/SocketPool.pm +Installing /build/reproducible-path/libnet-sip-perl-0.836/debian/libnet-sip-perl/usr/share/perl5/Net/SIP/SDP.pod +Installing /build/reproducible-path/libnet-sip-perl-0.836/debian/libnet-sip-perl/usr/share/perl5/Net/SIP/Simple.pm Installing /build/reproducible-path/libnet-sip-perl-0.836/debian/libnet-sip-perl/usr/share/perl5/Net/SIP/Util.pm -Installing /build/reproducible-path/libnet-sip-perl-0.836/debian/libnet-sip-perl/usr/share/perl5/Net/SIP/Util.pod +Installing /build/reproducible-path/libnet-sip-perl-0.836/debian/libnet-sip-perl/usr/share/perl5/Net/SIP/StatelessProxy.pod Installing /build/reproducible-path/libnet-sip-perl-0.836/debian/libnet-sip-perl/usr/share/perl5/Net/SIP/StatelessProxy.pm +Installing /build/reproducible-path/libnet-sip-perl-0.836/debian/libnet-sip-perl/usr/share/perl5/Net/SIP/Util.pod Installing /build/reproducible-path/libnet-sip-perl-0.836/debian/libnet-sip-perl/usr/share/perl5/Net/SIP/Simple.pod Installing /build/reproducible-path/libnet-sip-perl-0.836/debian/libnet-sip-perl/usr/share/perl5/Net/SIP/Response.pod -Installing /build/reproducible-path/libnet-sip-perl-0.836/debian/libnet-sip-perl/usr/share/perl5/Net/SIP/Simple.pm -Installing /build/reproducible-path/libnet-sip-perl-0.836/debian/libnet-sip-perl/usr/share/perl5/Net/SIP/SocketPool.pod -Installing /build/reproducible-path/libnet-sip-perl-0.836/debian/libnet-sip-perl/usr/share/perl5/Net/SIP/SDP.pod -Installing /build/reproducible-path/libnet-sip-perl-0.836/debian/libnet-sip-perl/usr/share/perl5/Net/SIP/SocketPool.pm Installing /build/reproducible-path/libnet-sip-perl-0.836/debian/libnet-sip-perl/usr/share/perl5/Net/SIP/SDP.pm -Installing /build/reproducible-path/libnet-sip-perl-0.836/debian/libnet-sip-perl/usr/share/perl5/Net/SIP/DTMF.pod +Installing /build/reproducible-path/libnet-sip-perl-0.836/debian/libnet-sip-perl/usr/share/perl5/Net/SIP/Response.pm +Installing /build/reproducible-path/libnet-sip-perl-0.836/debian/libnet-sip-perl/usr/share/perl5/Net/SIP/SocketPool.pod +Installing /build/reproducible-path/libnet-sip-perl-0.836/debian/libnet-sip-perl/usr/share/perl5/Net/SIP/Dispatcher.pm +Installing /build/reproducible-path/libnet-sip-perl-0.836/debian/libnet-sip-perl/usr/share/perl5/Net/SIP/Leg.pm +Installing /build/reproducible-path/libnet-sip-perl-0.836/debian/libnet-sip-perl/usr/share/perl5/Net/SIP/Dispatcher.pod +Installing /build/reproducible-path/libnet-sip-perl-0.836/debian/libnet-sip-perl/usr/share/perl5/Net/SIP/Leg.pod Installing /build/reproducible-path/libnet-sip-perl-0.836/debian/libnet-sip-perl/usr/share/perl5/Net/SIP/Redirect.pod +Installing /build/reproducible-path/libnet-sip-perl-0.836/debian/libnet-sip-perl/usr/share/perl5/Net/SIP/Blocker.pm +Installing /build/reproducible-path/libnet-sip-perl-0.836/debian/libnet-sip-perl/usr/share/perl5/Net/SIP/Endpoint.pod +Installing /build/reproducible-path/libnet-sip-perl-0.836/debian/libnet-sip-perl/usr/share/perl5/Net/SIP/Request.pm +Installing /build/reproducible-path/libnet-sip-perl-0.836/debian/libnet-sip-perl/usr/share/perl5/Net/SIP/Registrar.pod +Installing /build/reproducible-path/libnet-sip-perl-0.836/debian/libnet-sip-perl/usr/share/perl5/Net/SIP/Packet.pod +Installing /build/reproducible-path/libnet-sip-perl-0.836/debian/libnet-sip-perl/usr/share/perl5/Net/SIP/DTMF.pm +Installing /build/reproducible-path/libnet-sip-perl-0.836/debian/libnet-sip-perl/usr/share/perl5/Net/SIP/Request.pod +Installing /build/reproducible-path/libnet-sip-perl-0.836/debian/libnet-sip-perl/usr/share/perl5/Net/SIP/Blocker.pod +Installing /build/reproducible-path/libnet-sip-perl-0.836/debian/libnet-sip-perl/usr/share/perl5/Net/SIP/Authorize.pod Installing /build/reproducible-path/libnet-sip-perl-0.836/debian/libnet-sip-perl/usr/share/perl5/Net/SIP/Registrar.pm -Installing /build/reproducible-path/libnet-sip-perl-0.836/debian/libnet-sip-perl/usr/share/perl5/Net/SIP/Leg.pod +Installing /build/reproducible-path/libnet-sip-perl-0.836/debian/libnet-sip-perl/usr/share/perl5/Net/SIP/Endpoint.pm +Installing /build/reproducible-path/libnet-sip-perl-0.836/debian/libnet-sip-perl/usr/share/perl5/Net/SIP/ReceiveChain.pm +Installing /build/reproducible-path/libnet-sip-perl-0.836/debian/libnet-sip-perl/usr/share/perl5/Net/SIP/Packet.pm Installing /build/reproducible-path/libnet-sip-perl-0.836/debian/libnet-sip-perl/usr/share/perl5/Net/SIP/Redirect.pm -Installing /build/reproducible-path/libnet-sip-perl-0.836/debian/libnet-sip-perl/usr/share/perl5/Net/SIP/Blocker.pod Installing /build/reproducible-path/libnet-sip-perl-0.836/debian/libnet-sip-perl/usr/share/perl5/Net/SIP/Authorize.pm -Installing /build/reproducible-path/libnet-sip-perl-0.836/debian/libnet-sip-perl/usr/share/perl5/Net/SIP/Packet.pm -Installing /build/reproducible-path/libnet-sip-perl-0.836/debian/libnet-sip-perl/usr/share/perl5/Net/SIP/Dispatcher.pod -Installing /build/reproducible-path/libnet-sip-perl-0.836/debian/libnet-sip-perl/usr/share/perl5/Net/SIP/Request.pm -Installing /build/reproducible-path/libnet-sip-perl-0.836/debian/libnet-sip-perl/usr/share/perl5/Net/SIP/Endpoint.pod -Installing /build/reproducible-path/libnet-sip-perl-0.836/debian/libnet-sip-perl/usr/share/perl5/Net/SIP/Dropper.pm +Installing /build/reproducible-path/libnet-sip-perl-0.836/debian/libnet-sip-perl/usr/share/perl5/Net/SIP/DTMF.pod Installing /build/reproducible-path/libnet-sip-perl-0.836/debian/libnet-sip-perl/usr/share/perl5/Net/SIP/Debug.pm -Installing /build/reproducible-path/libnet-sip-perl-0.836/debian/libnet-sip-perl/usr/share/perl5/Net/SIP/Endpoint.pm -Installing /build/reproducible-path/libnet-sip-perl-0.836/debian/libnet-sip-perl/usr/share/perl5/Net/SIP/Authorize.pod -Installing /build/reproducible-path/libnet-sip-perl-0.836/debian/libnet-sip-perl/usr/share/perl5/Net/SIP/Leg.pm -Installing /build/reproducible-path/libnet-sip-perl-0.836/debian/libnet-sip-perl/usr/share/perl5/Net/SIP/Request.pod +Installing /build/reproducible-path/libnet-sip-perl-0.836/debian/libnet-sip-perl/usr/share/perl5/Net/SIP/Dropper.pm Installing /build/reproducible-path/libnet-sip-perl-0.836/debian/libnet-sip-perl/usr/share/perl5/Net/SIP/Debug.pod -Installing /build/reproducible-path/libnet-sip-perl-0.836/debian/libnet-sip-perl/usr/share/perl5/Net/SIP/Blocker.pm -Installing /build/reproducible-path/libnet-sip-perl-0.836/debian/libnet-sip-perl/usr/share/perl5/Net/SIP/DTMF.pm -Installing /build/reproducible-path/libnet-sip-perl-0.836/debian/libnet-sip-perl/usr/share/perl5/Net/SIP/Registrar.pod -Installing /build/reproducible-path/libnet-sip-perl-0.836/debian/libnet-sip-perl/usr/share/perl5/Net/SIP/Packet.pod Installing /build/reproducible-path/libnet-sip-perl-0.836/debian/libnet-sip-perl/usr/share/perl5/Net/SIP/ReceiveChain.pod -Installing /build/reproducible-path/libnet-sip-perl-0.836/debian/libnet-sip-perl/usr/share/perl5/Net/SIP/Dispatcher.pm -Installing /build/reproducible-path/libnet-sip-perl-0.836/debian/libnet-sip-perl/usr/share/perl5/Net/SIP/ReceiveChain.pm -Installing /build/reproducible-path/libnet-sip-perl-0.836/debian/libnet-sip-perl/usr/share/perl5/Net/SIP/Simple/RTP.pm Installing /build/reproducible-path/libnet-sip-perl-0.836/debian/libnet-sip-perl/usr/share/perl5/Net/SIP/Simple/Call.pm -Installing /build/reproducible-path/libnet-sip-perl-0.836/debian/libnet-sip-perl/usr/share/perl5/Net/SIP/Simple/Call.pod Installing /build/reproducible-path/libnet-sip-perl-0.836/debian/libnet-sip-perl/usr/share/perl5/Net/SIP/Simple/RTP.pod -Installing /build/reproducible-path/libnet-sip-perl-0.836/debian/libnet-sip-perl/usr/share/perl5/Net/SIP/Dropper/ByIPPort.pm -Installing /build/reproducible-path/libnet-sip-perl-0.836/debian/libnet-sip-perl/usr/share/perl5/Net/SIP/Dropper/ByField.pm -Installing /build/reproducible-path/libnet-sip-perl-0.836/debian/libnet-sip-perl/usr/share/perl5/Net/SIP/Dispatcher/Eventloop.pm -Installing /build/reproducible-path/libnet-sip-perl-0.836/debian/libnet-sip-perl/usr/share/perl5/Net/SIP/Dispatcher/Eventloop.pod +Installing /build/reproducible-path/libnet-sip-perl-0.836/debian/libnet-sip-perl/usr/share/perl5/Net/SIP/Simple/RTP.pm +Installing /build/reproducible-path/libnet-sip-perl-0.836/debian/libnet-sip-perl/usr/share/perl5/Net/SIP/Simple/Call.pod Installing /build/reproducible-path/libnet-sip-perl-0.836/debian/libnet-sip-perl/usr/share/perl5/Net/SIP/Endpoint/Context.pod Installing /build/reproducible-path/libnet-sip-perl-0.836/debian/libnet-sip-perl/usr/share/perl5/Net/SIP/Endpoint/Context.pm +Installing /build/reproducible-path/libnet-sip-perl-0.836/debian/libnet-sip-perl/usr/share/perl5/Net/SIP/Dispatcher/Eventloop.pod +Installing /build/reproducible-path/libnet-sip-perl-0.836/debian/libnet-sip-perl/usr/share/perl5/Net/SIP/Dispatcher/Eventloop.pm +Installing /build/reproducible-path/libnet-sip-perl-0.836/debian/libnet-sip-perl/usr/share/perl5/Net/SIP/Dropper/ByField.pm +Installing /build/reproducible-path/libnet-sip-perl-0.836/debian/libnet-sip-perl/usr/share/perl5/Net/SIP/Dropper/ByIPPort.pm +Installing /build/reproducible-path/libnet-sip-perl-0.836/debian/libnet-sip-perl/usr/share/perl5/Net/SIP/NATHelper/Base.pm Installing /build/reproducible-path/libnet-sip-perl-0.836/debian/libnet-sip-perl/usr/share/perl5/Net/SIP/NATHelper/Base.pod Installing /build/reproducible-path/libnet-sip-perl-0.836/debian/libnet-sip-perl/usr/share/perl5/Net/SIP/NATHelper/Client.pod Installing /build/reproducible-path/libnet-sip-perl-0.836/debian/libnet-sip-perl/usr/share/perl5/Net/SIP/NATHelper/Server.pm -Installing /build/reproducible-path/libnet-sip-perl-0.836/debian/libnet-sip-perl/usr/share/perl5/Net/SIP/NATHelper/Server.pod Installing /build/reproducible-path/libnet-sip-perl-0.836/debian/libnet-sip-perl/usr/share/perl5/Net/SIP/NATHelper/Local.pm -Installing /build/reproducible-path/libnet-sip-perl-0.836/debian/libnet-sip-perl/usr/share/perl5/Net/SIP/NATHelper/Local.pod -Installing /build/reproducible-path/libnet-sip-perl-0.836/debian/libnet-sip-perl/usr/share/perl5/Net/SIP/NATHelper/Base.pm +Installing /build/reproducible-path/libnet-sip-perl-0.836/debian/libnet-sip-perl/usr/share/perl5/Net/SIP/NATHelper/Server.pod Installing /build/reproducible-path/libnet-sip-perl-0.836/debian/libnet-sip-perl/usr/share/perl5/Net/SIP/NATHelper/Client.pm +Installing /build/reproducible-path/libnet-sip-perl-0.836/debian/libnet-sip-perl/usr/share/perl5/Net/SIP/NATHelper/Local.pod Installing /build/reproducible-path/libnet-sip-perl-0.836/debian/libnet-sip-perl/usr/share/man/man3/Net::SIP::Util.3pm Installing /build/reproducible-path/libnet-sip-perl-0.836/debian/libnet-sip-perl/usr/share/man/man3/Net::SIP::StatelessProxy.3pm Installing /build/reproducible-path/libnet-sip-perl-0.836/debian/libnet-sip-perl/usr/share/man/man3/Net::SIP::SocketPool.3pm @@ -7627,12 +7054,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/1968553/tmp/hooks/B01_cleanup starting +I: user script /srv/workspace/pbuilder/1968553/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/1762994 and its subdirectories -I: Current time: Mon May 13 22:06:26 -12 2024 -I: pbuilder-time-stamp: 1715681186 +I: removing directory /srv/workspace/pbuilder/1968553 and its subdirectories +I: Current time: Tue Jun 17 06:37:06 +14 2025 +I: pbuilder-time-stamp: 1750091826