aboutsummaryrefslogtreecommitdiff
path: root/perl/t/keytab.t
AgeCommit message (Collapse)Author
2012-08-30Clean up a file created by the MIT keytab testsRuss Allbery
2012-08-30Fix test counts and an error in the MIT keytab test suiteRuss Allbery
2010-05-18Fix error handling for klist with Heimdal user spaceRuss Allbery
The check for the enctypes of created keytabs tries klist for MIT first and then Heimdal ktutil. The klist options are invalid for Heimdal. Suppress the resulting complaining to standard error.
2010-03-03Remove file names from test file headersRuss Allbery
Coding style update. Don't prefix the file short description with the file name; it's not needed.
2010-02-20Fix some test numbers in the Perl testsRuss Allbery
2010-02-18Refactor Wallet::Kadmin keytab_rekey to return keytabRuss Allbery
Change the API for keytab_rekey to match keytab, returning the keytab as data instead of writing it to a file. This simplifies the wallet object implementation and moves the logic for reading the temporary file into Wallet::Kadmin and its child classes. (Eventually, there may be a kadmin backend that doesn't require using a temporary file.) Setting KEYTAB_TMP is now required to instantiate either the ::MIT or ::Heimdal Wallet::Kadmin classes.
2010-02-18Support unchanging keytabs with Heimdal without remctlRuss Allbery
Heimdal supports retrieving a keytab containing the existing keys over the kadmin protocol. Move the support for using remctl to retrieve an existing keytab into Wallet::Kadmin::MIT and provide two separate methods in the Wallet::Kadmin interface: one which rekeys and one which doesn't. Implement the non-rekeying interface for Heimdal. Expand the test suite for the unchanging keytabs to include tests for the Heimdal method.
2010-02-18Rename functions in Wallet::Kadmin APIRuss Allbery
Now that we support multiple versions of Kerberos, use generic names for the functions in the Wallet::Kadmin interface rather than the commands from the MIT kadmin interface.
2010-02-09Update keytab test for new KRBTYPE error messageRuss Allbery
2010-02-09Remove kaserver synchronization support from the wallet backendRuss Allbery
Remove kaserver synchronization support. It is no longer tested, and retaining the code was increasing the complexity of wallet, and some specific requirements (such as different realm names between kaserver and Kerberos v5 and the kvno handling) were Stanford-specific. Rather than using this support, AFS sites running kaserver will probably find deploying Heimdal with its internal kaserver compatibility is probably an easier transition approach.
2010-02-08Additional cleanup of the keytab test suiteRuss Allbery
Map the AES enctype to the full enctype name, which will work for both MIT and Heimdal. Fix the test count. Really test rollback from invalid enctypes (what we did before made no sense). Skip tests that will just fail if the enctype stuff is not working, since otherwise it confuses matters.
2010-02-08Redo how we find enctypes in the keytab test suiteRuss Allbery
We may have a different userspace than the Kerberos type, so always try klist -ke first and then fall back on ktutil if it fails. Also display the error message in a few more places if things fail, discovered as useful when debugging other problems.
2010-02-08Use Wallet::Kadmin to do kadmin operations in the keytab testRuss Allbery
Now that we have Wallet::Kadmin, use it, rather than running the kadmin client program. We may not have the same kadmin client program as the server that we're testing against.
2010-02-08Use kvno or kgetcred to check principal existanceRuss Allbery
Don't use kadmin to check for principal existence. We want to verify that we can get tickets, not just look at kadmin. Use whatever is found on the user's PATH, not something based on the Kerberos type, since our userspace may not match the server implementation.
2010-02-08Coding style and whitespace fixesRuss Allbery
Combine a long series of eval blocks into a single block and a single error check. Remove trailing whitespace, and in some cases remove trailing () on method calls where the parens aren't useful.
2010-01-28Improved and fixed tests related to Pod and KDC typeJon Robertson
Added a fix to the Pod tests to change the order of the arguments in a skip statement to the correct order. Also added tests for the KEYTAB_KRBTYPE value in the keytab tests, and changed the Wallet::Kadmin module to standardize the errors returned with no keytab set and add new error for keytab set but not a valid value.
2010-01-21Removed valid_principal as a Kadmin API functionJon Robertson
valid_principal has been removed from Wallet::Kadmin and Wallet::Kadmin::Heimdal. An accessor for it in Wallet::Object::Keytab has also been removed, as have the tests in perl/t/keytab.t for the function. It still remains within Wallet::Kadmin::MIT and is used there, but only as a private method for flagging what the kadmin command-line interface cannot handle.
2010-01-19Coding style fixes for Perl wallet codeRuss Allbery
Strip trailing whitespace, convert tabs to spaces, add newlines to exceptions, and remove a few stray blank lines and a few other minor coding style oddities. Make the SQL style consistent.
2010-01-05Added keytab testing cases for Heimdal KDCJon Robertson
Added cases to handle the Wallet::Object::Keytab module using a Heimdal KDC as well as an MIT KDC. In most cases this is transparent, but some tests are skipped for Heimdal, and the commands run to test that the created principals and keytabs are correct are different for Heimdal. The code now branches based on the value of $Wallet::Config::KEYTAB_KRBTYPE.
2009-12-17Added keytab testing cases for Heimdal KDCJon Robertson
Added cases to handle the Wallet::Object::Keytab module using a Heimdal KDC as well as an MIT KDC. In most cases this is transparent, but some tests are skipped for Heimdal, and the commands run to test that the created principals and keytabs are correct are different for Heimdal. The code now branches based on the value of $Wallet::Config::KEYTAB_KRBTYPE.
2009-06-09Remove Subversion Id stringsRuss Allbery
2008-02-12Move getcreds into the utility library as well.Russ Allbery
2008-02-11Move the remctld handling into the utility library.Russ Allbery
2008-01-23Add a destroy() method to the Wallet::Admin object and use that insteadRuss Allbery
of Wallet::Schema::drop in the test suite.
2008-01-23Refactor database initialization into a new Wallet::Admin module.Russ Allbery
2008-01-04The build system now probes for GSS-API, Kerberos v5 and v4, and AFSRuss Allbery
libraries as necessary rather than hard-coding libraries. Building on systems without strong shared library dependencies and building against static libraries should now work. Building kasetkey (for AFS kaserver synchronization) is now optional and not enabled by default. Pass --with-afs to enable it. This allows wallet to be easily built in an environment without AFS.
2007-12-06Fix the keytab principal validation regex to allow instancesRuss Allbery
containing periods. Otherwise, it's hard to manage host keytabs. Add a missing test suite for that method.
2007-12-01Fix the test number in the SKIP block for enctype restrictions.Russ Allbery
2007-12-01Expiration dates are now expressed in YYYY-MM-DD HH:MM:SS instead ofRuss Allbery
seconds since epoch and returned the same way. Timestamps are now stored in the database as correct date and time types rather than seconds since epoch to work properly with MySQL.
2007-12-01Hide kinit errors. No one cares.Russ Allbery
2007-12-01The wallet backend test suite now supports using a database other thanRuss Allbery
SQLite for testing. Also start a new Util.pm module for the test suite and move the contents sub into that module. More to follow.
2007-11-30Initial work on supporting testing with MySQL.Russ Allbery
Add a drop() method to Wallet::Schema to destroy the wallet database. Add a test suite for it. Add a reinitialize() method to Wallet;:Server that drops the database before creating it. Modify the wallet object test cases to call reinitialize() to create the initial database and drop() to clean up the database after the test is complete. Fix a bug preventing Wallet::Schema from being initialized multiple times. We now stash the schema in a class static variable and reuse it for subsequent initializations, since re-reading DATA doesn't work.
2007-10-10Use variables for the user and host in the history traces.Russ Allbery
2007-10-10Add tests for the history trace, which tests history records forRuss Allbery
attributes.
2007-10-10Test rollback when attempting to set an invalid enctype.Russ Allbery
2007-10-10Start checking the history.Russ Allbery
2007-10-10Pass a timestamp in for trace information as well and check the timestampRuss Allbery
on show rather than zeroing it.
2007-10-09Flesh out the rest of the tests for enctype handling.Russ Allbery
2007-10-09Initial implementation of enctype restriction with a basic test suite.Russ Allbery
Still needs a more comprehensive test suite. Remove all attributes for a keytab object when it is destroyed so that when the object is recreated, it doesn't inherit attributes from its previous self. Add a test case for that for the sync attribute.
2007-10-05Add comprehensive license information in LICENSE and update the copyrightRuss Allbery
and license statements in all files. Make sure that some files that were missing copyright information now have them. Reference LICENSE rather than README in all notices.
2007-09-26Include the synchronization configuration in show() output. Provide aRuss Allbery
new object method that subclasses can override to add attribute information to show() and remove the documentation about overriding show().
2007-09-26Add tests for the Kerberos v5 to Kerberos v4 name mapping and do moreRuss Allbery
tests of the machinery around kaserver synchronization even if we don't have a full configuration.
2007-09-26Add support for deleting principals out of the AFS kaserver (optionally)Russ Allbery
if synchronization is not set.
2007-09-25If synchronization is enabled, destroy the principal out of K4 when theRuss Allbery
keytab object is destroyed.
2007-09-25Add support for synchronizing a key with an AFS kaserver in the keytabRuss Allbery
object implementation, extracting the DES key with Authen::Krb5 (since ktutil doesn't work). Rename the KEYTAB_CACHE variable to KEYTAB_REMCTL_CACHE to match the rest of the keytab retrieval configuration and reorganize the Wallet::Config documentation to group related configuration options for the keytab backend. Fix a column name in the keytab_enctypes table to be more consistent with the rest of the schema.
2007-09-19Redirect stderr from remctld to stdout so that it doesn't show up inRuss Allbery
the test summary.
2007-09-19Skip the unchanging tests if Net::Remctl isn't available.Russ Allbery
2007-09-19Implement unchanging support in the keytab object backend, which retrievesRuss Allbery
keytabs via remctl from the KDC.
2007-09-19Allow creation of a keytab object for a principal that already exists.Russ Allbery
Catch more errors when checking the existence of a principal. Add a test for creating a principal for which we don't have permissions.
2007-09-18Implement the locked flag.Russ Allbery