diff options
| author | Ken Raeburn <raeburn@mit.edu> | 2001-06-22 03:28:46 +0000 |
|---|---|---|
| committer | Ken Raeburn <raeburn@mit.edu> | 2001-06-22 03:28:46 +0000 |
| commit | d39bbf5a844c1b9fc5e299f91bfe5457866ed544 (patch) | |
| tree | db369e31c77e904e3327d6cab65b6b48890a22df /src/lib | |
| parent | 05c949ee0fc3bd5afa0a1567aa998b7ca515600a (diff) | |
| download | krb5-d39bbf5a844c1b9fc5e299f91bfe5457866ed544.tar.gz krb5-d39bbf5a844c1b9fc5e299f91bfe5457866ed544.tar.xz krb5-d39bbf5a844c1b9fc5e299f91bfe5457866ed544.zip | |
* destest.c (value): Now signed int, since some entries are negative.
(convert): Do bounds checking on character values used as indices into value
array.
git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@13477 dc483132-0cff-0310-8789-dd5450dbe970
Diffstat (limited to 'src/lib')
| -rw-r--r-- | src/lib/crypto/des/ChangeLog | 5 | ||||
| -rw-r--r-- | src/lib/crypto/des/destest.c | 12 |
2 files changed, 12 insertions, 5 deletions
diff --git a/src/lib/crypto/des/ChangeLog b/src/lib/crypto/des/ChangeLog index c16658a005..01330958da 100644 --- a/src/lib/crypto/des/ChangeLog +++ b/src/lib/crypto/des/ChangeLog @@ -1,5 +1,10 @@ 2001-06-21 Ken Raeburn <raeburn@mit.edu> + * destest.c (value): Now signed int, since some entries are + negative. + (convert): Do bounds checking on character values used as indices + into value array. + * string2key.c (mit_des_string_to_key_int): Now static. 2001-06-21 Ezra Peisach <epeisach@mit.edu> diff --git a/src/lib/crypto/des/destest.c b/src/lib/crypto/des/destest.c index fcddc49d6d..0995b08bb1 100644 --- a/src/lib/crypto/des/destest.c +++ b/src/lib/crypto/des/destest.c @@ -67,8 +67,8 @@ krb5_octet zeroblock[8] = {0,0,0,0,0,0,0,0}; int main(argc, argv) -int argc; -char *argv[]; + int argc; + char *argv[]; { char block1[17], block2[17], block3[17]; @@ -127,7 +127,7 @@ char *argv[]; exit( (error > 256 && error % 256) ? 1 : error); } -unsigned int value[128] = { +int value[128] = { -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, @@ -148,11 +148,13 @@ unsigned int value[128] = { void convert(text, cblock) -char *text; -unsigned char cblock[]; + char *text; + unsigned char cblock[]; { register int i; for (i = 0; i < 8; i++) { + if (text[i*2] < 0 || text[i*2] >= 128) + abort (); if (value[(int) text[i*2]] == -1 || value[(int) text[i*2+1]] == -1) { printf("Bad value byte %d in %s\n", i, text); exit(1); |
