summaryrefslogtreecommitdiffstats
path: root/src/lib
Commit message (Collapse)AuthorAgeFilesLines
...
* Update export list to reflect changes in r23436Tom Yu2009-12-031-2/+0
| | | | git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@23442 dc483132-0cff-0310-8789-dd5450dbe970
* Sense of POINTERS_ARE_ALL_THE_SAME test was backwardsKen Raeburn2009-12-031-3/+3
| | | | git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@23438 dc483132-0cff-0310-8789-dd5450dbe970
* Reformat new block comment per coding styleGreg Hudson2009-12-021-152/+26
| | | | git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@23436 dc483132-0cff-0310-8789-dd5450dbe970
* Actually record dependencies of crypto testsKen Raeburn2009-12-021-1/+152
| | | | git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@23435 dc483132-0cff-0310-8789-dd5450dbe970
* update dependenciesKen Raeburn2009-12-023-17/+31
| | | | git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@23433 dc483132-0cff-0310-8789-dd5450dbe970
* Perform the AES-CBC XOR operations 4 bytes at a time, using the helperKen Raeburn2009-12-021-2/+18
| | | | | | | | functions for loading and storing potentially-unaligned values. Improves bulk AES encryption performance by 2% or so on 32-bit x86 with gcc 4. git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@23432 dc483132-0cff-0310-8789-dd5450dbe970
* Speed up the per-block loops of AES, DES3, and DES IOV encryption byGreg Hudson2009-12-025-197/+160
| | | | | | | | | avoiding function calls and copies in the case where the next block is wholly contained within the current buffer. To do this, introduce two new inline functions in aead.h called iov_next_block and iov_store_block. git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@23430 dc483132-0cff-0310-8789-dd5450dbe970
* Remove t_kperf on make cleanGreg Hudson2009-12-021-1/+1
| | | | git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@23429 dc483132-0cff-0310-8789-dd5450dbe970
* Clean up the AES enc_provider code a bit. Chiefly, work with unsignedGreg Hudson2009-12-021-80/+64
| | | | | | | | char blocks, casting input->data and output->data once each upon entry to the non-IOV encrypt and decrypt functions, rather than casting our working buffers each time we need to work with an outside function. git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@23428 dc483132-0cff-0310-8789-dd5450dbe970
* In t_kperf, generate a valid ciphertext when testing decryptionGreg Hudson2009-12-021-0/+8
| | | | git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@23427 dc483132-0cff-0310-8789-dd5450dbe970
* Fix an incorrect length in the new krb5int_c_decrypt_aead_compatGreg Hudson2009-12-021-1/+1
| | | | git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@23426 dc483132-0cff-0310-8789-dd5450dbe970
* Fixed the conflicting type "static krb5_error_code KRB5_CALLCONV" of ↵Zhanna Tsitkov2009-12-021-30/+42
| | | | | | krb5_change_set_password and some reindentation/reformating git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@23425 dc483132-0cff-0310-8789-dd5450dbe970
* Reindent and removed krb5_ prefix from static func nameZhanna Tsitkov2009-12-011-67/+67
| | | | git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@23398 dc483132-0cff-0310-8789-dd5450dbe970
* Fix AES IOV decryption of small messagesGreg Hudson2009-12-011-13/+8
| | | | | | | | | | | | | AES messages never need to be padded because the confounder ensures that the plaintext is at least one block long. Remove a check in krb5int_dk_decrypt_iov which was rejecting short AES messages because it didn't count the header length. ticket: 6589 tags: pullup target_version: 1.7.1 git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@23397 dc483132-0cff-0310-8789-dd5450dbe970
* Make krb5int_c_decrypt_aead_compat more efficient by building theGreg Hudson2009-12-011-23/+41
| | | | | | | buffers explicitly rather than using stream decryption. Sidesteps some machinery and avoids copying the output. git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@23396 dc483132-0cff-0310-8789-dd5450dbe970
* Fix the usage fallback in krb5int_arcfour_decrypt_iov. Factor out IOVGreg Hudson2009-12-011-25/+29
| | | | | | | encryption with a keyblock since this makes four uses of it in one file. git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@23395 dc483132-0cff-0310-8789-dd5450dbe970
* ReindentZhanna Tsitkov2009-11-303-74/+55
| | | | git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@23393 dc483132-0cff-0310-8789-dd5450dbe970
* Remove some stray tabsGreg Hudson2009-11-301-4/+4
| | | | git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@23391 dc483132-0cff-0310-8789-dd5450dbe970
* Use aead_dk instead of aead_old for des-hmac-sha1, since it usesGreg Hudson2009-11-301-1/+1
| | | | | | dk_encrypt. git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@23390 dc483132-0cff-0310-8789-dd5450dbe970
* Fix ivec chaining for DES iov encryptionGreg Hudson2009-11-301-2/+5
| | | | | | | | | | | | | krb5int_des_cbc_decrypt_iov was using a plaintext block to update the ivec. Fix it to use the last cipher block, borrowing from the corresponding des3 function. The impact of this bug is not serious since ivec chaining is not typically used with IOV encryption in 1.7. ticket: 6588 tags: pullup target_version: 1.7.1 git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@23389 dc483132-0cff-0310-8789-dd5450dbe970
* Add an AEAD provider for enctypes which use krb5_old_encrypt andGreg Hudson2009-11-306-17/+245
| | | | | | | | | krb5_old_decrypt; this makes every enctype have an AEAD provider. To make this work, expose make_unkeyed_checksum_iov to other files (under the name krb5int_hash_iov) and make krb5int_c_padding_length take into account the header length. git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@23388 dc483132-0cff-0310-8789-dd5450dbe970
* In the des enc_provider decrypt_iov function, count header blocks asGreg Hudson2009-11-301-1/+1
| | | | | | | well as data and padding blocks when checking for correctly padded input. git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@23387 dc483132-0cff-0310-8789-dd5450dbe970
* Make the crc32 hash provider correctly chain multiple input buffers,Greg Hudson2009-11-305-12/+13
| | | | | | | | so that it returns the same result if you pass it one big buffer or many small buffers containing the same data. To do this, change the contract of mit_crc32 so that the cksum parameter is in-out. git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@23386 dc483132-0cff-0310-8789-dd5450dbe970
* Stream decryption is handled in krb5_k_decrypt_iov; remove someGreg Hudson2009-11-302-12/+0
| | | | | | | lingering checks in the dk and raw aead providers from before that was introduced. git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@23385 dc483132-0cff-0310-8789-dd5450dbe970
* Terminate the loop in find_authdata_1 if we get an error in one of theGreg Hudson2009-11-301-1/+1
| | | | | | iterations. git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@23382 dc483132-0cff-0310-8789-dd5450dbe970
* Remove the non-iov entry point introduced in r23378, since it's easyGreg Hudson2009-11-295-56/+9
| | | | | | | | to use the iov entry point at both call sites. Rename the iov entry point to remove the "_iov" suffix since it's no longer needed to disambiguate. git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@23381 dc483132-0cff-0310-8789-dd5450dbe970
* Avoid using strncpy in the production of the arcfour salt because itGreg Hudson2009-11-291-4/+3
| | | | | | | produces a (spurious) Coverity defect. Fix a memory leak in krb5int_arcfour_encrypt. git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@23380 dc483132-0cff-0310-8789-dd5450dbe970
* Add do-while(0) around multi-statement macros in f_tables.h for moreGreg Hudson2009-11-291-44/+48
| | | | | | consistent and elegant emacs auto-formatting. git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@23379 dc483132-0cff-0310-8789-dd5450dbe970
* Create functional internal interfaces to allow GSSAPI to performGreg Hudson2009-11-287-131/+119
| | | | | | | | arcfour encryption of GSS tokens. This factors out derivation of the usage and encryption keys, and removes the need for the provider structures to be visible to all of krb5 via k5-int.h. git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@23378 dc483132-0cff-0310-8789-dd5450dbe970
* Clean up the arcfour token encryption and decryption functions byGreg Hudson2009-11-283-404/+272
| | | | | | | making use of newer convenience functions and by factoring out the derivation of the usage and encryption keys. git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@23377 dc483132-0cff-0310-8789-dd5450dbe970
* Mark and reindent lib/cryptoGreg Hudson2009-11-28172-7792/+7930
| | | | git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@23374 dc483132-0cff-0310-8789-dd5450dbe970
* Add krb5_key versions of the auth context key accessors, and use themGreg Hudson2009-11-273-29/+42
| | | | | | to simplify the gss-krb5 code a little bit. git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@23372 dc483132-0cff-0310-8789-dd5450dbe970
* Allow null keys to be referenced (a no-op) for simpler "copying" ofGreg Hudson2009-11-271-1/+2
| | | | | | | keys which might or might not exist. Consistent with allowing freeing of null keys. git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@23371 dc483132-0cff-0310-8789-dd5450dbe970
* Export krb5_k_reference_key since it's part of the public APIGreg Hudson2009-11-271-0/+1
| | | | git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@23370 dc483132-0cff-0310-8789-dd5450dbe970
* Clean up the flow control in krb5int_send_tgs, and avoid setting theGreg Hudson2009-11-271-38/+39
| | | | | | subkey output param when success is not guaranteed. git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@23369 dc483132-0cff-0310-8789-dd5450dbe970
* If krb5_init_creds_step is called on an already complete context,Greg Hudson2009-11-271-1/+1
| | | | | | return 0 rather than uninitialized stack garbage. git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@23368 dc483132-0cff-0310-8789-dd5450dbe970
* Move the arcfour directory from the crypto module dirs into krb. ThisGreg Hudson2009-11-2732-1067/+163
| | | | | | | | | | | | | directory contains the token encryption code (similar to dk, old, and raw) which is Kerberos-specific. The actual stream cipher lives in enc_provider/rc4.c, which is still in the module dirs. arcfour/arcfour-int.h contained the definitions of some structures used only in enc_provider/rc4.c. Move those definitions into that source file so that everything in arcfour is at the right level of abstraction to live in krb. git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@23367 dc483132-0cff-0310-8789-dd5450dbe970
* Make dependGreg Hudson2009-11-271-3/+3
| | | | git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@23366 dc483132-0cff-0310-8789-dd5450dbe970
* Add krb5_k_prf, the krb5_key version of krb5_c_prfGreg Hudson2009-11-272-4/+15
| | | | | | ticket: 6576 git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@23365 dc483132-0cff-0310-8789-dd5450dbe970
* Clean up a few cases where krb5_get_in_tkt_with_keytab would leak theGreg Hudson2009-11-261-3/+4
| | | | | | options structure. git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@23363 dc483132-0cff-0310-8789-dd5450dbe970
* Pullup to 1.7-branch is only for the test case, as krb5-1.7 behavedTom Yu2009-11-264-19/+138
| | | | | | | | | | | | | | | | | | correctly for these checksums. Fix regression in MD4-DES and MD5-DES keyed checksums. The original key was being used for the DES encryption, not the "xorkey". (key with each byte XORed with 0xf0) Add a test case that will catch future regressions of this sort, by including a verification of a "known-good" checksum (derived from a known-to-be-interoperable version of the implementation). ticket: 6584 target_version: 1.7.1 tags: pullup git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@23361 dc483132-0cff-0310-8789-dd5450dbe970
* libkrb5 support for non-blocking AS requestsGreg Hudson2009-11-2610-634/+1241
| | | | | | | | | | | Merge Luke's iakerb-libkrb5-as-only branch into trunk with several bug fixes. Adds support for the krb5_init_creds APIs (same as Heimdal's) which allow AS requests to be performed via a different transport than the blocking send_to_kdc. ticket: 6586 git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@23358 dc483132-0cff-0310-8789-dd5450dbe970
* Defer the conversion of the gic options structure to the extended formGreg Hudson2009-11-255-92/+72
| | | | | | | until we reach krb5_get_init_creds. Rename that function to krb5int_get_init_creds since it isn't public. Also stop exporting it. git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@23357 dc483132-0cff-0310-8789-dd5450dbe970
* Coding Style related fixesZhanna Tsitkov2009-11-253-414/+379
| | | | git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@23356 dc483132-0cff-0310-8789-dd5450dbe970
* Remove krb5_ prefix from the name of the static func get_as_key_keytab. ReindentZhanna Tsitkov2009-11-241-13/+12
| | | | git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@23352 dc483132-0cff-0310-8789-dd5450dbe970
* Check return value of gethostname in krb5_klog_initGreg Hudson2009-11-231-2/+5
| | | | git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@23313 dc483132-0cff-0310-8789-dd5450dbe970
* Consolidate Makefile variables now that we have only a single globalGreg Hudson2009-11-22102-3767/+3732
| | | | | | | | | | | | | configure script: $(SRCTOP) --> $(top_srcdir) $(srcdir)/$(thisconfigdir) --> $(top_srcdir) $(thisconfigdir) --> $(BUILDTOP) $(myfulldir) --> $(mydir) ticket: 6583 status: open git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@23308 dc483132-0cff-0310-8789-dd5450dbe970
* In _kadm5_init_any on error - if we created a cache entry, destroy itEzra Peisach2009-11-221-0/+8
| | | | | | (parallel to kadm5_destroy code). Also - free config_params. git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@23300 dc483132-0cff-0310-8789-dd5450dbe970
* Clean up some memory leaks by releasing contextEzra Peisach2009-11-222-1/+5
| | | | git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@23299 dc483132-0cff-0310-8789-dd5450dbe970
* Memory leak in _kadm5_init_any introduced with ipropdEzra Peisach2009-11-211-0/+2
| | | | | | | | Fix minor memory leak introduced by the ipropd integration. ticket: 6582 git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@23296 dc483132-0cff-0310-8789-dd5450dbe970