summaryrefslogtreecommitdiffstats
path: root/src/tests/t_keytab.py
diff options
context:
space:
mode:
authorGreg Hudson <ghudson@mit.edu>2012-07-24 16:26:27 -0400
committerGreg Hudson <ghudson@mit.edu>2012-07-24 16:26:27 -0400
commitfc3e8c660d98b134767c574d899528dfd29d7a16 (patch)
treedf99700e2d389a651901828e967146f4d2d2b8b6 /src/tests/t_keytab.py
parent7d07dc63a22bfdebc24f0368f969acc4b76d372c (diff)
downloadkrb5-fc3e8c660d98b134767c574d899528dfd29d7a16.tar.gz
krb5-fc3e8c660d98b134767c574d899528dfd29d7a16.tar.xz
krb5-fc3e8c660d98b134767c574d899528dfd29d7a16.zip
Add token expansion for keytab names
Make the default_keytab_name and default_client_keytab_name variables subject to parameter expansion. ticket: 7219 (new)
Diffstat (limited to 'src/tests/t_keytab.py')
-rw-r--r--src/tests/t_keytab.py16
1 files changed, 16 insertions, 0 deletions
diff --git a/src/tests/t_keytab.py b/src/tests/t_keytab.py
index 8d73636c8d..f8cea68d40 100644
--- a/src/tests/t_keytab.py
+++ b/src/tests/t_keytab.py
@@ -40,4 +40,20 @@ output = realm.run_kadminl('getprinc %s' % princ)
if 'Key: vno 258,' not in output:
fail('Expected vno not seen in kadmin.local output')
+# Test parameter expansion in profile variables
+realm.stop()
+conf = {'client': {'libdefaults': {
+ 'default_keytab_name': 'testdir/%{null}abc%{uid}',
+ 'default_client_keytab_name': 'testdir/%{null}xyz%{uid}'}}}
+realm = K5Realm(krb5_conf=conf, create_kdb=False)
+del realm.env_client['KRB5_KTNAME']
+del realm.env_client['KRB5_CLIENT_KTNAME']
+uidstr = str(os.getuid())
+out = realm.run_as_client([klist, '-k'], expected_code=1)
+if 'FILE:testdir/abc%s' % uidstr not in out:
+ fail('Wrong keytab in klist -k output')
+out = realm.run_as_client([klist, '-ki'], expected_code=1)
+if 'FILE:testdir/xyz%s' % uidstr not in out:
+ fail('Wrong keytab in klist -ki output')
+
success('Keytab-related tests')