diff options
| author | Russ Allbery <rra@stanford.edu> | 2007-11-15 05:42:29 +0000 | 
|---|---|---|
| committer | Russ Allbery <rra@stanford.edu> | 2007-11-15 05:42:29 +0000 | 
| commit | 2393ffbc3c52c6552e00212d5209d6b870a55d4e (patch) | |
| tree | 2eaca996ede5d9b835db69f6ac143e8cba051d36 /perl/t/data/netdb-fake | |
| parent | b6bb3f3a72ec1dc32991cffeeab4f8b1cc27cc46 (diff) | |
Add an ACL verifier that checks access against NetDB roles using the
NetDB remctl interface.
Diffstat (limited to 'perl/t/data/netdb-fake')
| -rwxr-xr-x | perl/t/data/netdb-fake | 58 | 
1 files changed, 58 insertions, 0 deletions
| diff --git a/perl/t/data/netdb-fake b/perl/t/data/netdb-fake new file mode 100755 index 0000000..56744a7 --- /dev/null +++ b/perl/t/data/netdb-fake @@ -0,0 +1,58 @@ +#!/bin/sh +# $Id$ +# +# netdb-fake -- Fake NetDB remctl interface. +# +# This netdb-fake script is meant to be run by remctld during testing of +# the NetDB ACL verifier.  It returns known roles or errors for different +# nodes. + +set -e + +if [ "$1" != "node-roles" ] ; then +    echo "Invalid command $1" >&2 +    exit 1 +fi + +case "$2" in +test-user) +    case "$3" in +    all) +        echo 'admin' +        echo 'team' +        echo 'user' +        ;; +    admin) +        echo 'admin' +        ;; +    team) +        echo 'team' +        ;; +    user) +        echo 'This is just ignored' >&2 +        echo 'user' +        ;; +    unknown) +        echo 'admin' >&2 +        echo 'unknown' +        ;; +    none) +        ;; +    esac +    ;; +error) +    case "$3" in +    normal) +        echo 'some error' >&2 +        exit 1 +        ;; +    status) +        exit 1 +        ;; +    esac +    ;; +*) +    echo "Unknown principal $2" >&2 +    exit 1 +    ;; +esac | 
