Testsuite: testcase for 3013
[exim.git] / test / scripts / 1190-TLS-ALPN / 1190
1 # TLS: ALPN
2 gnutls
3 exim -DSERVER=server -bd -oX PORT_D
4 ****
5 #
6 # Basic: is good ALPN set on tpt acceptable to server
7 exim -DCONTROL=smtp -odf a@test.ex
8 Test message.
9 ****
10 #
11 # Bad ALPN rejected
12 exim -DCONTROL=http -odf b@test.ex
13 ****
14 sudo rm -f DIR/spool/db/retry* DIR/spool/input/*-D DIR/spool/input/*-H
15 #
16 # Multiple ALPN rejected
17 exim -DCONTROL=smtp:smtp -odf c@test.ex
18 ****
19 sudo rm -f DIR/spool/db/retry* DIR/spool/input/*-D DIR/spool/input/*-H
20 #
21 # Empty client option is ok
22 exim -DCONTROL="" -odf d@test.ex
23 ****
24 # Content-free client option is ok
25 exim -DCONTROL=" " -odf e@test.ex
26 ****
27 #
28 # Really dumb (IOT?) client, offering no TLS extensions at all in the Client Hello
29 #
30 # We're feeding the TLS protocol packet in manually rather then having
31 # the TLS-enabled client do it, we (currently) can only drop the TCP conn after
32 # the TLS conn completes (or fails).
33 # Expect the server to log "TCP connection closed by peer" for the success case;
34 # something else logged counts as bad.
35 #
36 client 127.0.0.1 PORT_D
37 ??? 220
38 EHLO IOTtester
39 ??? 250-
40 ??? 250-SIZE
41 ??? 250-8BITMIME
42 ??? 250-PIPELINING
43 ??? 250-STARTTLS
44 ??? 250 HELP
45 STARTTLS
46 ??? 220
47 >>> \x16\x03\x00\x00\x43\x01\x00\x00\x3f\x03\x02\xff\xff\xff\xff\x92\x3e\x99\x88\xd0\x2b\x8f\xc2\x76\xbd\xcf\x02\xcc\xb6\xfc\x39\x00\xd0\x52\x82\x8c\x65\x0c\xcd\x8c\x02\x00\x40\x00\x00\x18\x00\x33\x00\x39\x00\x45\x00\x88\x00\x16\x00\x35\x00\x84\x00\x2f\x00\x41\x00\x0a\x00\x05\x00\x04\x01\x00
48 ****
49 millisleep 500
50 #
51 #
52 killdaemon
53 millisleep 500
54 #
55 # Server can be told to ignore (bad) ALPN from client
56 exim -DSERVER=server -DSTRICT="" -bd -oX PORT_D
57 ****
58 exim -DCONTROL=http -odf f@test.ex
59 ****
60 killdaemon
61 #
62 # Server can be told custom names list
63 exim -DSERVER=server -DSTRICT='${if eq {$sender_host_address}{HOSTIPV4} {smtp:weird} {smtp}}' -bd -oX PORT_D
64 ****
65 exim -DCONTROL=weird -odf g@test.ex
66 ****
67 killdaemon
68 #
69 #
70 no_msglog_check
71 no_stdout_check
72 millisleep 500