Create a branch for the camellia-ccm enctype implementation

git-svn-id: svn://anonsvn.mit.edu/krb5/branches/camellia-ccm@24218 dc483132-0cff-0310-8789-dd5450dbe970
Merge and edit some of the changes from r23983 of trunk to r24216 of
users/lhoward/camellia-ccm.  Keep only the code for the camellia-ccm
enctypes, not camellia-cts or aes-ccm or camellia/aes-gcm.

git-svn-id: svn://anonsvn.mit.edu/krb5/branches/camellia-ccm@24219 dc483132-0cff-0310-8789-dd5450dbe970
Remove some unnecessary casts in the camellia-ccm code.  (make_data
takes void * as its first argument.)

git-svn-id: svn://anonsvn.mit.edu/krb5/branches/camellia-ccm@24220 dc483132-0cff-0310-8789-dd5450dbe970
Add comments to the CMAC implementation relating it to specific steps
in the RFC 4493 algorithm description, and adjust the code to make it
clearer what we're doing with the ivecs we're passing to the enc
provider cbc_mac method.  Add a test program for CMAC with
Camellia-128, using the RFC 4493 test vector inputs.

git-svn-id: svn://anonsvn.mit.edu/krb5/branches/camellia-ccm@24221 dc483132-0cff-0310-8789-dd5450dbe970
Fix/clarify some comments in the CMAC test program and untabify it

git-svn-id: svn://anonsvn.mit.edu/krb5/branches/camellia-ccm@24222 dc483132-0cff-0310-8789-dd5450dbe970
Parameterize krb5int_derive_random() instead of guessing which
algorithm to use based on the enc provider methods.  Add an
encrypt_block() helper function, since the introduce of counter-mode
enc providers makes it a little trickier to do simple block
encryption.

git-svn-id: svn://anonsvn.mit.edu/krb5/branches/camellia-ccm@24223 dc483132-0cff-0310-8789-dd5450dbe970
Rename derive_random_sp800_cmac to include the full name of the NIST
document, and flesh out the comments a bit.

git-svn-id: svn://anonsvn.mit.edu/krb5/branches/camellia-ccm@24224 dc483132-0cff-0310-8789-dd5450dbe970
Massage the CCM encrypt/decrypt code.  Mostly minor comment and style
changes.  Remove the unused usage parameter from ccm_encrypt and
ccm_decrypt.

git-svn-id: svn://anonsvn.mit.edu/krb5/branches/camellia-ccm@24225 dc483132-0cff-0310-8789-dd5450dbe970
Simplify krb5int_dk_cmac_checksum since ctp->enc is set for the
relevant checksum types (and thus key verification occurs in the
caller).

git-svn-id: svn://anonsvn.mit.edu/krb5/branches/camellia-ccm@24226 dc483132-0cff-0310-8789-dd5450dbe970
Remove krb5int_camellia_crypto_length; it's no longer needed without
the camellia-cts enctypes.

git-svn-id: svn://anonsvn.mit.edu/krb5/branches/camellia-ccm@24227 dc483132-0cff-0310-8789-dd5450dbe970
General style pass over camellia-ccm branch changes

git-svn-id: svn://anonsvn.mit.edu/krb5/branches/camellia-ccm@24228 dc483132-0cff-0310-8789-dd5450dbe970
Add a branch overview readme for the camellia-ccm branch

git-svn-id: svn://anonsvn.mit.edu/krb5/branches/camellia-ccm@24229 dc483132-0cff-0310-8789-dd5450dbe970
Add Camellia enctypes to the enctypes list in the admin docs

git-svn-id: svn://anonsvn.mit.edu/krb5/branches/camellia-ccm@24232 dc483132-0cff-0310-8789-dd5450dbe970
Add two more crypto test programs on the camellia-ccm branch: one for
string-to-key test vectors for AES and Camellia, and one for encryption
and checksum test vectors for Camellia.

git-svn-id: svn://anonsvn.mit.edu/krb5/branches/camellia-ccm@24234 dc483132-0cff-0310-8789-dd5450dbe970
Amendment to r24234: add t_camellia_ccm to check-unix dependencies

git-svn-id: svn://anonsvn.mit.edu/krb5/branches/camellia-ccm@24235 dc483132-0cff-0310-8789-dd5450dbe970
Make the camellia-ccm cipher state just the counter value, for
consistency with the spec.  (Previously it was the whole counter block,
but only the counter value was used.)  To accomplish this, add methods
to allow enctypes to manage cipher state.  Non-CCM enctypes will simply
delegate these methods to the enc provider.

git-svn-id: svn://anonsvn.mit.edu/krb5/branches/camellia-ccm@24236 dc483132-0cff-0310-8789-dd5450dbe970
Conditionalize the Camellia-CCM code, requiring the builder to define
local-use enctype and cksumtype numbers at build time in order to
enable it.  Disable tests which aren't easily conditionalized on C
preprocessor defines.

git-svn-id: svn://anonsvn.mit.edu/krb5/branches/camellia-ccm@24293 dc483132-0cff-0310-8789-dd5450dbe970
Remove Camellia from supported enctype documentation for now since it's
only conditionally available.  Update branch documentation.

git-svn-id: svn://anonsvn.mit.edu/krb5/branches/camellia-ccm@24294 dc483132-0cff-0310-8789-dd5450dbe970