summaryrefslogtreecommitdiff
path: root/tests/keyctl/grant/bad-args/runtest.sh
blob: 1b61097c0eafb8400ed99db1b239f485c34e30bb (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
#!/bin/bash

. ../../../prepare.inc.sh
. ../../../toolbox.inc.sh


# ---- do the actual testing ----

result=PASS
echo "++++ BEGINNING TEST" >$OUTPUTFILE

if [ $have_grant = 0 ]
then
    toolbox_skip_test $TEST "SKIPPING DUE TO LACK OF GRANT PERMIT"
    exit 0
fi

# check that a bad key ID fails correctly
marker "CHECK BAD KEY ID"
grant_key_permit --fail 0 all all
expect_error EINVAL

# create a non-keyring
marker "CREATE KEY"
create_key --new=keyid user lizard gizzard @s

# check that unsupported permissions aren't permitted
marker "CHECK PERMS"
grant_key_permit --fail2 $keyid all foo
grant_key_permit --fail2 $keyid foo all

# dispose of the key we just made
marker "UNLINK KEY"
unlink_key --wait $keyid @s

# check that a non-existent key ID fails correctly
marker "CHECK NON-EXISTENT KEY ID"
grant_key_permit --fail $keyid all all
expect_error ENOKEY

echo "++++ FINISHED TEST: $result" >>$OUTPUTFILE

# --- then report the results in the database ---
toolbox_report_result $TEST $result