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 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122
|
#!/bin/sh
#
# This is a fake wallet backend that returns bogus data for verification by
# the client test suite. It doesn't test any of the wallet server code.
#
# Written by Russ Allbery <eagle@eyrie.org>
# Copyright 2007-2008, 2010
# The Board of Trustees of the Leland Stanford Junior University
#
# SPDX-License-Identifier: MIT
command="$1"
shift
type="$1"
shift
if [ "$type" != "keytab" ] && [ "$type" != "file" ] ; then
echo "Unknown object type $type" >&2
exit 1
fi
case "$command" in
check)
if [ -n "$2" ] ; then
echo "Too many arguments" >&2
exit 1
fi
case "${type}:${1}" in
file:fake-test)
if [ -f autocreated ] ; then
echo 'yes'
else
echo 'no'
fi
;;
*)
echo 'yes'
;;
esac
exit 0
;;
autocreate)
if [ -n "$2" ] ; then
echo "Too many arguments" >&2
exit 1
fi
case "${type}:${1}" in
file:fake-test)
touch autocreated
exit 0
;;
*)
echo "Autocreate called for existing object" >&2
exit 1
;;
esac
;;
get)
if [ -n "$2" ] ; then
echo "Too many arguments" >&2
exit 1
fi
case "${type}:${1}" in
file:fake-test)
cat data/fake-data
exit 0
;;
keytab:service/fake-srvtab)
cat data/fake-keytab
exit 0
;;
keytab:service/fake-keytab)
cat data/fake-keytab-2
exit 0
;;
keytab:service/fake-output)
printf 'This is a fake keytab.'
exit 0
;;
*)
echo "Unknown $type $1" >&2
exit 1
;;
esac
;;
store)
if [ -n "$3" ] ; then
echo 'Too many arguments' >&2
exit 1
fi
if [ -n "$2" ] ; then
echo 'stdin remctld configuration not supported' >&2
exit 1
fi
printf "$type $1\n" > store-output
cat >> store-output
;;
show)
if [ -n "$2" ] ; then
echo "Too many arguments" >&2
exit 1
fi
if [ "$type" = "file" ] && [ "$1" = "fake-test" ] ; then
echo "Some stuff about $type $1"
exit 0
else
echo "Unknown $type $1" >&2
exit 1
fi
;;
expires)
if [ -n "$2" ] ; then
echo "Too many arguments" >&2
exit 1
fi
echo "Expiration date of $type $1"
exit 0
;;
*)
echo "Unknown command $command" >&2
exit 1
;;
esac
|