]>
Commit | Line | Data |
---|---|---|
1 | # $OpenBSD: envpass.sh,v 1.4 2005/03/04 08:48:46 djm Exp $ | |
2 | # Placed in the Public Domain. | |
3 | ||
4 | tid="environment passing" | |
5 | ||
6 | # NB accepted env vars are in test-exec.sh (_XXX_TEST_* and _XXX_TEST) | |
7 | ||
8 | # Prepare a custom config to test for a configuration parsing bug fixed in 4.0 | |
9 | cat << EOF > $OBJ/ssh_proxy_envpass | |
10 | Host test-sendenv-confparse-bug | |
11 | SendEnv * | |
12 | EOF | |
13 | cat $OBJ/ssh_proxy >> $OBJ/ssh_proxy_envpass | |
14 | ||
15 | trace "pass env, don't accept" | |
16 | verbose "test $tid: pass env, don't accept" | |
17 | _TEST_ENV=blah ${SSH} -oSendEnv="*" -F $OBJ/ssh_proxy_envpass otherhost \ | |
18 | sh << 'EOF' | |
19 | test -z "$_TEST_ENV" | |
20 | EOF | |
21 | r=$? | |
22 | if [ $r -ne 0 ]; then | |
23 | fail "environment found" | |
24 | fi | |
25 | ||
26 | trace "don't pass env, accept" | |
27 | verbose "test $tid: don't pass env, accept" | |
28 | _XXX_TEST_A=1 _XXX_TEST_B=2 ${SSH} -F $OBJ/ssh_proxy_envpass otherhost \ | |
29 | sh << 'EOF' | |
30 | test -z "$_XXX_TEST_A" && test -z "$_XXX_TEST_B" | |
31 | EOF | |
32 | r=$? | |
33 | if [ $r -ne 0 ]; then | |
34 | fail "environment found" | |
35 | fi | |
36 | ||
37 | trace "pass single env, accept single env" | |
38 | verbose "test $tid: pass single env, accept single env" | |
39 | _XXX_TEST=blah ${SSH} -oSendEnv="_XXX_TEST" -F $OBJ/ssh_proxy_envpass \ | |
40 | otherhost sh << 'EOF' | |
41 | test X"$_XXX_TEST" = X"blah" | |
42 | EOF | |
43 | r=$? | |
44 | if [ $r -ne 0 ]; then | |
45 | fail "environment not found" | |
46 | fi | |
47 | ||
48 | trace "pass multiple env, accept multiple env" | |
49 | verbose "test $tid: pass multiple env, accept multiple env" | |
50 | _XXX_TEST_A=1 _XXX_TEST_B=2 ${SSH} -oSendEnv="_XXX_TEST_*" \ | |
51 | -F $OBJ/ssh_proxy_envpass otherhost \ | |
52 | sh << 'EOF' | |
53 | test X"$_XXX_TEST_A" = X"1" -a X"$_XXX_TEST_B" = X"2" | |
54 | EOF | |
55 | r=$? | |
56 | if [ $r -ne 0 ]; then | |
57 | fail "environment not found" | |
58 | fi | |
59 | ||
60 | rm -f $OBJ/ssh_proxy_envpass |