5 echo [STEP] Initializing server node
19 echo [STEP] Setting up scripts
21 OUT=$DIR_FOO/scripts.out
27 subnet-up subnet-down \
28 hosts/foo-up hosts/foo-down \
29 hosts/bar-up hosts/bar-down \
30 invitation-created invitation-accepted; do
34 if is_windows && [ -n "\$INVITATION_FILE" ]; then
35 INVITATION_FILE=\$(cygpath --unix -- "\$INVITATION_FILE")
37 echo >>'$OUT' "$script" "$TINC_SCRIPT_VARS"
41 create_script foo "$script" "$commands"
44 echo [STEP] Starting server node
46 start_tinc foo -n netname
47 wait_script foo subnet-up 2
48 echo foo-started >>"$OUT"
50 echo [STEP] Inviting client node
52 url=$(tinc foo -n netname2 invite bar)
53 file=$(basename "$(find "$DIR_FOO/invitations" -type f ! -name ed25519_key.priv)")
56 file=$(cygpath --unix -- "$file")
59 wait_script foo invitation-created
60 echo bar-invited >>"$OUT"
62 echo [STEP] Joining client node
64 tinc bar -n netname3 join "$url"
65 wait_script foo invitation-accepted
66 echo bar-joined >>"$OUT"
68 echo [STEP] Starting client node
74 add Subnet fec0::/64#5
78 wait_script foo subnet-up 2
79 echo bar-started-1 >>"$OUT"
83 wait_script foo subnet-down 2
84 echo bar-stopped >>"$OUT"
88 wait_script foo subnet-up 2
89 echo bar-started-2 >>"$OUT"
91 echo [STEP] Stop server node
95 wait_script foo tinc-down
97 echo [STEP] Check if the script output is what is expected
99 cat >"$OUT.expected" <<EOF
100 tinc-up netname,foo,dummy,,,,,,,,,5
101 subnet-up netname,foo,dummy,,foo,,,10.0.0.1,,,,5
102 subnet-up netname,foo,dummy,,foo,,,fec0::/64,,,,5
104 invitation-created netname2,foo,,,bar,,,,,$DIR_FOO/invitations/$file,$url,
106 invitation-accepted netname,foo,dummy,,bar,127.0.0.1,,,,,,5
108 host-up netname,foo,dummy,,bar,127.0.0.1,$port_bar,,,,,5
109 hosts/bar-up netname,foo,dummy,,bar,127.0.0.1,$port_bar,,,,,5
110 subnet-up netname,foo,dummy,,bar,127.0.0.1,$port_bar,10.0.0.2,,,,5
111 subnet-up netname,foo,dummy,,bar,127.0.0.1,$port_bar,fec0::/64,5,,,5
113 host-down netname,foo,dummy,,bar,127.0.0.1,$port_bar,,,,,4
114 hosts/bar-down netname,foo,dummy,,bar,127.0.0.1,$port_bar,,,,,4
115 subnet-down netname,foo,dummy,,bar,127.0.0.1,$port_bar,10.0.0.2,,,,4
116 subnet-down netname,foo,dummy,,bar,127.0.0.1,$port_bar,fec0::/64,5,,,4
118 host-up netname,foo,dummy,,bar,127.0.0.1,$port_bar,,,,,5
119 hosts/bar-up netname,foo,dummy,,bar,127.0.0.1,$port_bar,,,,,5
120 subnet-up netname,foo,dummy,,bar,127.0.0.1,$port_bar,10.0.0.2,,,,5
121 subnet-up netname,foo,dummy,,bar,127.0.0.1,$port_bar,fec0::/64,5,,,5
123 host-down netname,foo,dummy,,bar,127.0.0.1,$port_bar,,,,,5
124 hosts/bar-down netname,foo,dummy,,bar,127.0.0.1,$port_bar,,,,,5
125 subnet-down netname,foo,dummy,,bar,127.0.0.1,$port_bar,10.0.0.2,,,,5
126 subnet-down netname,foo,dummy,,bar,127.0.0.1,$port_bar,fec0::/64,5,,,5
127 subnet-down netname,foo,dummy,,foo,,,10.0.0.1,,,,5
128 subnet-down netname,foo,dummy,,foo,,,fec0::/64,,,,5
129 tinc-down netname,foo,dummy,,,,,,,,,5
132 diff -w "$OUT" "$OUT.expected"