1#
2# Copyright (c) 2013, Oracle and/or its affiliates. All rights reserved.
3# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4#
5# This code is free software; you can redistribute it and/or modify it
6# under the terms of the GNU General Public License version 2 only, as
7# published by the Free Software Foundation.
8#
9# This code is distributed in the hope that it will be useful, but WITHOUT
10# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
11# FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
12# version 2 for more details (a copy is included in the LICENSE file that
13# accompanied this code).
14#
15# You should have received a copy of the GNU General Public License version
16# 2 along with this work; if not, write to the Free Software Foundation,
17# Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
18#
19# Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
20# or visit www.oracle.com if you need additional information or have any
21# questions.
22#
23
24# @test
25# @bug 8014196
26# @summary ktab creates a file with zero kt_vno
27# @run shell ktzero.sh
28#
29
30if [ "${TESTJAVA}" = "" ] ; then
31  JAVAC_CMD=`which javac`
32  TESTJAVA=`dirname $JAVAC_CMD`/..
33fi
34
35if [ "${TESTSRC}" = "" ] ; then
36  TESTSRC="."
37fi
38
39OS=`uname -s`
40case "$OS" in
41  CYGWIN* )
42    FS="/"
43    ;;
44  Windows_* )
45    FS="\\"
46    ;;
47  * )
48    FS="/"
49    echo "Unsupported system!"
50    exit 0;
51    ;;
52esac
53
54KEYTAB=ktzero.tmp
55
56rm $KEYTAB 2> /dev/null
57KTAB="${TESTJAVA}${FS}bin${FS}ktab -k $KEYTAB"
58
59# Listing non-existing ktab should fail
60$KTAB -l && exit 1
61
62# Can add to non-existing ktab
63$KTAB -a me@LOCAL mine || exit 2
64
65# Now can be listed
66$KTAB -l || exit 3
67
68echo ABCDEFG > $KEYTAB
69
70# Invalid keytab should fail for all commands
71$KTAB -l && exit 4
72$KTAB -a me@LOCAL mine && exit 2
73
74exit 0
75