summaryrefslogtreecommitdiffstats
path: root/src/lib/crypto/des/d3_cbc.c
Commit message (Collapse)AuthorAgeFilesLines
* Crypto modularity proj: Separate files under crypto directory based on their ↵Zhanna Tsitkov2009-08-031-223/+0
| | | | | | | | functionality. Move Kerberos specific files into krb subdir and MIT specific - into builtin subdir. Place all tests into crypto_tests subfolder. bigredbutton: whitespace git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@22477 dc483132-0cff-0310-8789-dd5450dbe970
* Use GET_HALF_BLOCK to fetch new values instead of open-codingKen Raeburn2008-08-021-8/+5
| | | | git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@20598 dc483132-0cff-0310-8789-dd5450dbe970
* Allow compile-time specification that small code space is desiredKen Raeburn2005-04-131-2/+2
| | | | | | | | | | | | | | | | | | | | | * d3_cbc.c (krb5int_des3_cbc_encrypt, krb5int_des3_cbc_decrypt): Don't declare left and right variables as registers. * f_cksum.c (mit_des_cbc_cksum): Likewise. * f_cbc.c (krb5int_des_cbc_encrypt, krb5int_des_cbc_decrypt): Likewise. (krb5int_des_cbc_encrypt): For full blocks, use GET_HALF_BLOCK to read and then xor, instead of processing each byte individually. (krb5int_des_do_encrypt_2, krb5int_des_do_decrypt_2) [CONFIG_SMALL]: New functions, wrapping large macros with the DES inner loops. * f_tables.h (DES_DO_ENCRYPT_1, DES_DO_DECRYPT_1): Renamed from non-_1 names. (krb5int_des_do_encrypt_2, krb5int_des_do_decrypt_2): Declare if CONFIG_SMALL is defined. (DES_DO_ENCRYPT, DES_DO_DECRYPT): Expand to _1 macros or _2 function calls depending on whether CONFIG_SMALL is defined. With CONFIG_SMALL defined, on x86/gcc/glibc, this drops about 5K (25%) of the code/table space. git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@17183 dc483132-0cff-0310-8789-dd5450dbe970
* protoizeKen Raeburn2004-02-191-7/+5
| | | | git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@16102 dc483132-0cff-0310-8789-dd5450dbe970
* * f_tables.h (DES_DO_ENCRYPT, DES_DO_DECRYPT): Allocate temporary variableKen Raeburn2004-02-171-8/+6
| | | | | | | | | | | locally instead of taking the extra argument. * d3_cbc.c (krb5int_des3_cbc_encrypt): Don't pass the extra argument, and delete the automatic variable. (krb5int_des3_cbc_decrypt): Likewise. * f_cbc.c (krb5int_des_cbc_encrypt, krb5int_des_cbc_decrypt): Likewise. * f_cksum.c (mit_des_cbc_cksum): Likewise. git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@16095 dc483132-0cff-0310-8789-dd5450dbe970
* * f_cbc.c (krb5int_des_cbc_decrypt): Move declarations that were afterKen Raeburn2003-07-221-2/+2
| | | | | | | statements after flattening blocks is previous change. * d3_cbc.c (krb5int_des3_cbc_decrypt): Likewise. git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@15706 dc483132-0cff-0310-8789-dd5450dbe970
* Separate the DES encrypt and decrypt operations into separate functions,Ken Raeburn2003-07-171-121/+151
| | | | | | | | | | | | | | | | since they have almost no code in common. * f_cbc.c (krb5int_des_cbc_encrypt, krb5int_des_cbc_decrypt): New functions broken out from mit_des_cbc_encrypt. (mit_des_cbc_encrypt): Call them. * d3_cbc.c (krb5int_des3_cbc_encrypt, krb5int_des3_cbc_decrypt): New functions broken out from mit_des3_cbc_encrypt. (mit_des3_cbc_encrypt): Call them. * des_int.h (krb5int_des_cbc_encrypt, krb5int_des_cbc_decrypt, krb5int_des3_cbc_encrypt, krb5int_des3_cbc_decrypt): Declare. (mit_des_cbc_encrypt, mit_des3_cbc_encrypt): New macros. git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@15692 dc483132-0cff-0310-8789-dd5450dbe970
* Danilo also says we can get rid of _MSDOS (Win16) tests, and explicit ↵Ken Raeburn2001-10-061-2/+2
| | | | | | FAR/NEAR specs git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@13786 dc483132-0cff-0310-8789-dd5450dbe970
* * f_cbc.c (mit_des_cbc_encrypt): Do not use a variable named "encrypt".Ezra Peisach2001-05-311-3/+3
| | | | | | * d3_cbc.c (mit_des3_cbc_encrypt): Likewise. git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@13251 dc483132-0cff-0310-8789-dd5450dbe970
* more cleanup - add const, reduce castingKen Raeburn2001-04-101-13/+14
| | | | git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@13169 dc483132-0cff-0310-8789-dd5450dbe970
* * des_int.h: Change prototypes for mit_des_cbc_encrypt(),Ezra Peisach2000-10-171-1/+1
| | | | | | | | | | | | | | | | | | | | mit_des_cbc_cksum(), and mit_des3_cbc_encrypt() to take unsigned long lengths. * d3_cbc.c (mit_des3_cbc_encrypt): Length argument now takes an unsigned long. * f_cbc.c (mit_des_cbc_encrypt): Length argument now takes an unsigned long. * f_cksum.c (mit_des_cbc_cksum): Length argument now takes an unsigned long. * string2key.c: Unsigned/signed int cleanup. Test for a salt-length of SALT_TYPE_AFS_LENGTH or -1 (for backwards compatibilty) for use of mit_afs_string_to_key(). git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@12774 dc483132-0cff-0310-8789-dd5450dbe970
* * d3_cbc.c, des.h, des_int.h, f_cbc.c, f_cksum.c, f_ecb.c,Tom Yu1997-10-271-9/+8
| | | | | | | | | | | f_pcbc.c, f_sched.c, f_tables.c, f_tables.h: Change KRB_INT32 to DES_INT32 to avoid temptation to misuse. * d3_cbc.c, d3_ecb.c, f_cbc.c, f_cksum.c, f_ecb.c, f_parity.c, f_pcbc.c, f_sched.c, f_tables.c: Don't include des.h; it's broken in ways. Use only des_int.h instead. git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@10252 dc483132-0cff-0310-8789-dd5450dbe970
* Triple-DES support routinesRichard Basch1995-11-281-0/+200
git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@7127 dc483132-0cff-0310-8789-dd5450dbe970