X-Git-Url: https://git.exim.org/exim.git/blobdiff_plain/59371ea735c941334861aa5b8e1e9a06facf044f..114b01dded2c9d72cdd44cac97a4d3cc9f22ddfd:/test/scripts/0000-Basic/0373?ds=sidebyside diff --git a/test/scripts/0000-Basic/0373 b/test/scripts/0000-Basic/0373 index a20e79ecd..cb3e00608 100644 --- a/test/scripts/0000-Basic/0373 +++ b/test/scripts/0000-Basic/0373 @@ -1,7 +1,8 @@ -# ${readsocket +# ${readsocket (Unix domain and IPv4) need_ipv4 # exim -be +connfail cases (no server) 1 >>${readsocket{DIR/test-socket}{QUERY-1\n}}<< 2 ${if exists{DIR/test-socket}\ {>>${readsocket{DIR/test-socket}{QUERY-1\n}}<<}\ @@ -38,6 +39,7 @@ QUERY-9 **** millisleep 500 exim -be +unix-socket cases 1 >>${readsocket{DIR/test-socket}{QUERY-1\n}}<< 2 >>${readsocket{DIR/test-socket}{QUERY-2\n}}<< 3 >>${readsocket{DIR/test-socket}{QUERY-3\n}{2s}{*EOL*}}<< @@ -55,3 +57,109 @@ QUERY-ACL exim -odq -bs -oMa V4NET.0.0.0 quit **** +# +# Tests of IPv4 sockets +# +server PORT_S 18 +QUERY-1 +>LF>ANSWER-1 +>*eof +QUERY-2 +>>ANSWER-2 +>*eof +QUERY-3 +>LF>ANSWER-3 +>*eof +QUERY-4 +>LF>ANSWER-4 +>*eof +>>ANSWER-5 +>*eof +*sleep 1 +>*eof +>*eof +QUERY-8 +*sleep 2 +*eof +QUERY-9 +*sleep 2 +*eof +QUERY-10 +>LF>ANSWER-10 +>*eof +>LF>ANSWER-11a +>*eof +QUERY-11 +>LF>ANSWER-11b +>*eof +QUERY-12 +>>ANSWER-12\x0d\x0aANSWER-12\x0d\x0a +>*eof +QUERY-13 +>>ANSWER-13\x0d\x0aANSWER-13\x0d\x0a +>*eof +QUERY-14 +>>ANSWER-14\x0d\x0aANSWER-14\x0d\x0a +>*eof +QUERY-15 +>>ANSWER-15\x0d\x0aANSWER-15\x0d\x0a +>*eof +QUERY-16 +>>ANSWER-16\x0d\x0aANSWER-16\x0d\x0a +>*eof +QUERY-17 +>>ANSWER-17\x0d\x0aANSWER-17\x0d\x0a +>*eof +**** +millisleep 500 +exim -be +ipv4 cases +1 ANSWER-1 >>${readsocket{inet:thisloop:PORT_S}{QUERY-1\n}}<< +2 ANSWER-2 >>${readsocket{inet:127.0.0.1:PORT_S}{QUERY-2\n}}<< +3 ANSWER-3*EOL* >>${readsocket{inet:127.0.0.1:PORT_S}{QUERY-3\n}{2s}{*EOL*}}<< +4 ANSWER-4*EOL* >>${readsocket{inet:127.0.0.1:PORT_S}{QUERY-4\n}{2s}{*EOL*}{sock error}}<< +5 ANSWER-5 >>${readsocket{inet:127.0.0.1:PORT_S}{}}<< +6 >>${readsocket{inet:127.0.0.1:PORT_S}{QUERY-6\n}}<< +7 >>${readsocket{inet:127.0.0.1:PORT_S}{QUERY-7\n}{1s}{}{sock error}}<< +8 read timed out >>${readsocket{inet:127.0.0.1:PORT_S}{QUERY-8\n}{1s}}<< +9 sock error >>${readsocket{inet:127.0.0.1:PORT_S}{QUERY-9\n}{1s}{}{sock error}}<< +10 ANSWER-10\\n >>${readsocket{inet:badloop:PORT_S}{QUERY-10\n}}<< +11 ANSWER-11a >>${readsocket{inet:thisloop:PORT_S}{QUERY-11\n}{2s:shutdown=no}}<< +11 ANSWER-11b >>${readsocket{inet:thisloop:PORT_S}{QUERY-11\n}{2s:shutdown=no}}<< + +eol-replacement arg +12 ANSWER-12x2 (no arg) >>${escape:${readsocket{inet:127.0.0.1:PORT_S}{QUERY-12\n}{2s}}}<< +13 ANSWER-13x2 (empty arg) >>${escape:${readsocket{inet:127.0.0.1:PORT_S}{QUERY-13\n}{2s}{}}}<< +14 ANSWER-14x2 X >>${escape:${readsocket{inet:127.0.0.1:PORT_S}{QUERY-14\n}{2s}{X}}}<< +15 ANSWER-15x2 XYZZY >>${escape:${readsocket{inet:127.0.0.1:PORT_S}{QUERY-15\n}{2s}{XYZZY}}}<< +16 ANSWER-16x2 (space) >>${escape:${readsocket{inet:127.0.0.1:PORT_S}{QUERY-16\n}{2s}{ }}}<< +17 ANSWER-17x2 (newline) >>${escape:${readsocket{inet:127.0.0.1:PORT_S}{QUERY-17\n}{2s}{\n}}}<< +**** +# +exim -be +crash-regression-check >>${readsocket{inet:127.0.0.1:PORT_N}{}{}}<< +**** +# +# Caching of response value +server DIR/test-socket 3 +QUERY-1 +>LF>ANSWER-1 +>*eof +QUERY-2 +>LF>ANSWER-2 +>*eof +QUERY-1 +>LF>ANSWER-1 +>*eof +**** +millisleep 500 +exim -be +caching of response value +1 >>${readsocket{DIR/test-socket}{QUERY-1\n}{5s:cache=yes}}<< +1+ >>${readsocket{DIR/test-socket}{QUERY-1\n}{5s:cache=yes}}<< +2 >>${readsocket{DIR/test-socket}{QUERY-2\n}{5s:cache=yes}}<< +2- >>${readsocket{DIR/test-socket2}{QUERY-2\n}{5s:cache=yes}{}{expected failure}}<< +1- >>${readsocket{DIR/test-socket2}{QUERY-1\n}{5s:cache=yes}{}{expected failure}}<< +1+ >>${readsocket{DIR/test-socket}{QUERY-1\n}{5s:cache=yes}}<< +1- >>${readsocket{DIR/test-socket}{QUERY-1\n}{5s}}<< +****