diff options
Diffstat (limited to 'src/lib/crypto/sha')
-rw-r--r-- | src/lib/crypto/sha/ChangeLog | 12 | ||||
-rw-r--r-- | src/lib/crypto/sha/Makefile.in | 12 | ||||
-rw-r--r-- | src/lib/crypto/sha/sha_crypto.c | 46 | ||||
-rw-r--r-- | src/lib/crypto/sha/sha_glue.c | 41 | ||||
-rw-r--r-- | src/lib/crypto/sha/shs.h | 11 | ||||
-rw-r--r-- | src/lib/crypto/sha/t_shs.c | 18 |
6 files changed, 78 insertions, 62 deletions
diff --git a/src/lib/crypto/sha/ChangeLog b/src/lib/crypto/sha/ChangeLog index 8a312d7fb..fbb5f0ba8 100644 --- a/src/lib/crypto/sha/ChangeLog +++ b/src/lib/crypto/sha/ChangeLog @@ -1,3 +1,15 @@ +Thu Jan 30 21:31:39 1997 Richard Basch <basch@lehman.com> + + * sha_crypto.c sha_glue.c: + Declare the functions to take const args where possible + Remove extra includes + + * sha_crypto.c: Function prototypes did not match function names. + +Thu Nov 21 00:58:04 EST 1996 Richard Basch <basch@lehman.com> + + * Makefile.in: Win32 build fixed + Wed Aug 28 17:40:53 1996 Theodore Ts'o <tytso@rsts-11.mit.edu> * shs.c: Only include sys/types.h if present. diff --git a/src/lib/crypto/sha/Makefile.in b/src/lib/crypto/sha/Makefile.in index 4f529fdfa..e45646aed 100644 --- a/src/lib/crypto/sha/Makefile.in +++ b/src/lib/crypto/sha/Makefile.in @@ -1,7 +1,9 @@ CFLAGS = $(CCOPTS) $(DEFS) -I$(srcdir)/../des ##DOSBUILDTOP = ..\..\.. -##DOSLIBNAME=..\crypto.lib +##DOSMYDIR=sha +##DOSOBJFILE=..\sha.lst +##WIN16##LIBNAME=..\crypto.lib .c.o: $(CC) $(CFLAGS) -c $(srcdir)/$*.c @@ -20,7 +22,12 @@ SRCS= $(srcdir)/shs.c \ all-unix:: shared $(OBJS) all-mac:: shared $(OBJS) -all-windows:: $(OBJS) +all-windows:: $(OBJFILE) + +##DOS$(OBJFILE): $(OBJS) +##DOS $(RM) $(OBJFILE) +##WIN16## $(CP) nul: $(OBJFILE) +##WIN32## $(LIBECHO) -p $(MYDIR)\ *.obj > $(OBJFILE) shared: mkdir shared @@ -45,3 +52,4 @@ clean-unix:: clean-mac:: $(RM) shared/* clean-windows:: + $(RM) $(OBJFILE) diff --git a/src/lib/crypto/sha/sha_crypto.c b/src/lib/crypto/sha/sha_crypto.c index af1aee225..b539b1199 100644 --- a/src/lib/crypto/sha/sha_crypto.c +++ b/src/lib/crypto/sha/sha_crypto.c @@ -1,31 +1,29 @@ -#include "k5-int.h" #include "shs.h" -#include "des_int.h" /* we cheat a bit and call it directly... */ /* Windows needs to these prototypes for the assignment below */ static krb5_error_code krb5_sha_crypto_sum_func - PROTOTYPE((krb5_pointer in, - size_t in_length, - krb5_pointer seed, - size_t seed_length, + PROTOTYPE((krb5_const krb5_pointer in, + krb5_const size_t in_length, + krb5_const krb5_pointer seed, + krb5_const size_t seed_length, krb5_checksum FAR *outcksum)); static krb5_error_code krb5_sha_crypto_verify_func - PROTOTYPE((krb5_checksum FAR *cksum, - krb5_pointer in, - size_t in_length, - krb5_pointer seed, - size_t seed_length)); + PROTOTYPE((krb5_const krb5_checksum FAR *cksum, + krb5_const krb5_pointer in, + krb5_const size_t in_length, + krb5_const krb5_pointer seed, + krb5_const size_t seed_length)); static krb5_error_code -shs_crypto_sum_func(in, in_length, seed, seed_length, outcksum) - krb5_pointer in; - size_t in_length; - krb5_pointer seed; - size_t seed_length; +krb5_sha_crypto_sum_func(in, in_length, seed, seed_length, outcksum) + krb5_const krb5_pointer in; + krb5_const size_t in_length; + krb5_const krb5_pointer seed; + krb5_const size_t seed_length; krb5_checksum FAR *outcksum; { krb5_error_code retval; @@ -41,12 +39,12 @@ shs_crypto_sum_func(in, in_length, seed, seed_length, outcksum) } static krb5_error_code -shs_crypto_verify_func(cksum, in, in_length, seed, seed_length) - krb5_checksum FAR *cksum; - krb5_pointer in; - size_t in_length; - krb5_pointer seed; - size_t seed_length; +krb5_sha_crypto_verify_func(cksum, in, in_length, seed, seed_length) + krb5_const krb5_checksum FAR *cksum; + krb5_const krb5_pointer in; + krb5_const size_t in_length; + krb5_const krb5_pointer seed; + krb5_const size_t seed_length; { krb5_octet digest[HMAC_SHA_CKSUM_LENGTH]; krb5_error_code retval; @@ -70,8 +68,8 @@ cleanup: krb5_checksum_entry hmac_sha_cksumtable_entry = { 0, - shs_crypto_sum_func, - shs_crypto_verify_func, + krb5_sha_crypto_sum_func, + krb5_sha_crypto_verify_func, HMAC_SHA_CKSUM_LENGTH, 1, /* is collision proof */ 1, /* uses key */ diff --git a/src/lib/crypto/sha/sha_glue.c b/src/lib/crypto/sha/sha_glue.c index 28416fc08..3a57e0182 100644 --- a/src/lib/crypto/sha/sha_glue.c +++ b/src/lib/crypto/sha/sha_glue.c @@ -1,29 +1,28 @@ -#include "k5-int.h" #include "shs.h" krb5_error_code krb5_sha_sum_func - PROTOTYPE((krb5_pointer in, - size_t in_length, - krb5_pointer seed, - size_t seed_length, - krb5_checksum *outcksum)); + PROTOTYPE((krb5_const krb5_pointer in, + krb5_const size_t in_length, + krb5_const krb5_pointer seed, + krb5_const size_t seed_length, + krb5_checksum FAR *outcksum)); krb5_error_code krb5_sha_verify_func - PROTOTYPE((krb5_checksum FAR *cksum, - krb5_pointer in, - size_t in_length, - krb5_pointer seed, - size_t seed_length)); + PROTOTYPE((krb5_const krb5_checksum FAR *cksum, + krb5_const krb5_pointer in, + krb5_const size_t in_length, + krb5_const krb5_pointer seed, + krb5_const size_t seed_length)); krb5_error_code krb5_sha_sum_func(in, in_length, seed, seed_length, outcksum) - krb5_pointer in; - size_t in_length; - krb5_pointer seed; - size_t seed_length; - krb5_checksum *outcksum; + krb5_const krb5_pointer in; + krb5_const size_t in_length; + krb5_const krb5_pointer seed; + krb5_const size_t seed_length; + krb5_checksum FAR *outcksum; { krb5_octet *input = (krb5_octet *)in; SHS_INFO working; @@ -47,11 +46,11 @@ krb5_sha_sum_func(in, in_length, seed, seed_length, outcksum) krb5_error_code krb5_sha_verify_func(cksum, in, in_length, seed, seed_length) - krb5_checksum FAR *cksum; - krb5_pointer in; - size_t in_length; - krb5_pointer seed; - size_t seed_length; + krb5_const krb5_checksum FAR *cksum; + krb5_const krb5_pointer in; + krb5_const size_t in_length; + krb5_const krb5_pointer seed; + krb5_const size_t seed_length; { krb5_octet *input = (krb5_octet *)in; SHS_INFO working; diff --git a/src/lib/crypto/sha/shs.h b/src/lib/crypto/sha/shs.h index 77b4ff250..01acddb82 100644 --- a/src/lib/crypto/sha/shs.h +++ b/src/lib/crypto/sha/shs.h @@ -1,21 +1,20 @@ #ifndef _SHS_DEFINED -#include <krb5.h> +#include <k5-int.h> #define _SHS_DEFINED /* Some useful types */ typedef krb5_octet BYTE; -typedef krb5_ui_4 LONG; -/* Exit status of functions. */ +/* Old DOS/Windows compilers are case-insensitive */ +#if !defined(_MSDOS) && !defined(_WIN32) +typedef krb5_ui_4 LONG; +#endif -#define OK 0 -#define ERROR -1 /* Define the following to use the updated SHS implementation */ - #define NEW_SHS /**/ /* The SHS block size and message digest sizes, in bytes */ diff --git a/src/lib/crypto/sha/t_shs.c b/src/lib/crypto/sha/t_shs.c index de30603e2..87d8a0f9d 100644 --- a/src/lib/crypto/sha/t_shs.c +++ b/src/lib/crypto/sha/t_shs.c @@ -37,8 +37,8 @@ int shsTestLevel; /* Compare the returned digest and required values */ for( i = 0; i < 5; i++ ) if( shsInfo->digest[ i ] != shsTestResults[ shsTestLevel ][ i ] ) - return( ERROR ); - return( OK ); + return( -1 ); + return( 0 ); } main() @@ -59,11 +59,11 @@ main() shsInit( &shsInfo ); shsUpdate( &shsInfo, ( BYTE * ) "abc", 3 ); shsFinal( &shsInfo ); - if( compareSHSresults( &shsInfo, 0 ) == ERROR ) + if( compareSHSresults( &shsInfo, 0 ) == -1 ) { putchar( '\n' ); puts( "SHS test 1 failed" ); - exit( ERROR ); + exit( -1 ); } #ifdef NEW_SHS puts( "passed, result= A9993E364706816ABA3E25717850C26C9CD0D89D" ); @@ -75,11 +75,11 @@ main() shsInit( &shsInfo ); shsUpdate( &shsInfo, ( BYTE * ) "abcdbcdecdefdefgefghfghighijhijkijkljklmklmnlmnomnopnopq", 56 ); shsFinal( &shsInfo ); - if( compareSHSresults( &shsInfo, 1 ) == ERROR ) + if( compareSHSresults( &shsInfo, 1 ) == -1 ) { putchar( '\n' ); puts( "SHS test 2 failed" ); - exit( ERROR ); + exit( -1 ); } #ifdef NEW_SHS puts( "passed, result= 84983E441C3BD26EBAAE4AA1F95129E5E54670F1" ); @@ -92,11 +92,11 @@ main() for( i = 0; i < 15625; i++ ) shsUpdate( &shsInfo, ( BYTE * ) "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa", 64 ); shsFinal( &shsInfo ); - if( compareSHSresults( &shsInfo, 2 ) == ERROR ) + if( compareSHSresults( &shsInfo, 2 ) == -1 ) { putchar( '\n' ); puts( "SHS test 3 failed" ); - exit( ERROR ); + exit( -1 ); } #ifdef NEW_SHS puts( "passed, result= 34AA973CD4C4DAA4F61EEB2BDBAD27316534016F" ); @@ -116,5 +116,5 @@ main() #endif puts( "\nAll SHS tests passed" ); - exit( OK ); + exit( 0 ); } |