1--TEST--
2Testing for usable ticket acqusition
3--SKIPIF--
4<?php
5if(!file_exists(dirname(__FILE__) . '/config.php')) { echo "skip config missing"; return; }
6if(!include(dirname(__FILE__) . '/config.php')) return;
7?>
8--FILE--
9<?php
10include(dirname(__FILE__) . '/config.php');
11$ccache = new KRB5CCache();
12if($use_config) {
13	$ccache->setConfig(dirname(__FILE__) . '/krb5.ini');
14}
15
16var_dump(count($ccache->getEntries()));
17$ccache->initPassword($client_principal, $client_password, array('tkt_life' => 360));
18var_dump(count($ccache->getEntries())); // should contain a TGT
19list($tgt) = $ccache->getEntries();
20var_dump($ccache->isValid());
21var_dump($ccache->isValid(720));
22$ccache->save(dirname(__FILE__) . '/ccache.tmp');
23$ccache->save('FILE:' . dirname(__FILE__) . '/ccache2.tmp');
24var_dump(file_exists(dirname(__FILE__) . '/ccache.tmp'));
25var_dump(file_exists(dirname(__FILE__) . '/ccache2.tmp'));
26@unlink(dirname(__FILE__) . '/ccache2.tmp');
27$ccache2 = new KRB5CCache();
28$ccache2->open('FILE:' . dirname(__FILE__) . '/ccache.tmp');
29var_dump(in_array($tgt,$ccache2->getEntries()));
30@unlink(dirname(__FILE__) . '/ccache.tmp');
31
32$ccache3 = new KRB5CCache();
33$ccache3->initKeytab($server_principal, $server_keytab);
34var_dump(count($ccache->getEntries()));
35var_dump($ccache->isValid());
36
37?>
38--EXPECTF--
39int(0)
40int(1)
41bool(true)
42bool(false)
43bool(true)
44bool(true)
45bool(true)
46int(1)
47bool(true)
48