summaryrefslogtreecommitdiffstats
path: root/src/lib/crypto
diff options
context:
space:
mode:
authorSam Hartman <hartmans@mit.edu>2002-03-29 05:05:27 +0000
committerSam Hartman <hartmans@mit.edu>2002-03-29 05:05:27 +0000
commitfdeda13512d0a90457ca0004d4cc1e9c8e8c410a (patch)
treede908ae979d5a46c9e7eb9976eda38913839a5cf /src/lib/crypto
parent6d00f0ec4c4423d1836b546a3be0700b8bde7489 (diff)
downloadkrb5-fdeda13512d0a90457ca0004d4cc1e9c8e8c410a.tar.gz
krb5-fdeda13512d0a90457ca0004d4cc1e9c8e8c410a.tar.xz
krb5-fdeda13512d0a90457ca0004d4cc1e9c8e8c410a.zip
Add krb5_init_keyblock
git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@14312 dc483132-0cff-0310-8789-dd5450dbe970
Diffstat (limited to 'src/lib/crypto')
-rw-r--r--src/lib/crypto/ChangeLog4
-rw-r--r--src/lib/crypto/Makefile.in2
-rw-r--r--src/lib/crypto/t_encrypt.c25
3 files changed, 17 insertions, 14 deletions
diff --git a/src/lib/crypto/ChangeLog b/src/lib/crypto/ChangeLog
index aeb31e678..a1e6355ca 100644
--- a/src/lib/crypto/ChangeLog
+++ b/src/lib/crypto/ChangeLog
@@ -1,3 +1,7 @@
+2002-03-28 Sam Hartman <hartmans@mit.edu>
+
+ * t_encrypt.c (main): Test krb5_init_keyblock
+
2002-01-14 Sam Hartman <hartmans@mit.edu>
* t_prng.expected: Update to be correct for 0 MSW in v_i calculation.
diff --git a/src/lib/crypto/Makefile.in b/src/lib/crypto/Makefile.in
index a51f06efe..59102ad6b 100644
--- a/src/lib/crypto/Makefile.in
+++ b/src/lib/crypto/Makefile.in
@@ -153,7 +153,7 @@ t_nfold$(EXEEXT): t_nfold.$(OBJEXT) nfold.$(OBJEXT)
$(CC_LINK) -o $@ t_nfold.$(OBJEXT) nfold.$(OBJEXT)
t_encrypt$(EXEEXT): t_encrypt.$(OBJEXT) nfold.$(OBJEXT)
- $(CC_LINK) -o $@ t_encrypt.$(OBJEXT) -lk5crypto -lcom_err
+ $(CC_LINK) -o $@ t_encrypt.$(OBJEXT) -lkrb5 -lk5crypto -lcom_err
t_prng$(EXEEXT): t_prng.$(OBJEXT)
$(CC_LINK) -o $@ t_prng.$(OBJEXT) -lk5crypto -lcom_err
diff --git a/src/lib/crypto/t_encrypt.c b/src/lib/crypto/t_encrypt.c
index a52c22659..e15d2d039 100644
--- a/src/lib/crypto/t_encrypt.c
+++ b/src/lib/crypto/t_encrypt.c
@@ -62,7 +62,7 @@ main ()
size_t len;
krb5_enc_data enc_out;
krb5_error_code retval;
- krb5_keyblock key;
+ krb5_keyblock *key;
in.data = "This is a test.\n";
in.length = strlen (in.data);
@@ -75,30 +75,29 @@ main ()
for (i = 0; interesting_enctypes[i]; i++) {
krb5_enctype enctype = interesting_enctypes [i];
printf ("Testing enctype %d\n", enctype);
+ test ("Initializing a keyblock",
+ krb5_init_keyblock (context, enctype, 0, &key));
test ("Generating random key",
- krb5_c_make_random_key (context, enctype, &key));
+ krb5_c_make_random_key (context, enctype, key));
enc_out.ciphertext.data = out.data;
enc_out.ciphertext.length = out.length;
/* We use an intermediate `len' because size_t may be different size
than `int' */
- krb5_c_encrypt_length (context, key.enctype, in.length, &len);
+ krb5_c_encrypt_length (context, key->enctype, in.length, &len);
enc_out.ciphertext.length = len;
test ("Encrypting",
- krb5_c_encrypt (context, &key, 7, 0, &in, &enc_out));
+ krb5_c_encrypt (context, key, 7, 0, &in, &enc_out));
test ("Decrypting",
- krb5_c_decrypt (context, &key, 7, 0, &enc_out, &check));
+ krb5_c_decrypt (context, key, 7, 0, &enc_out, &check));
test ("init_state",
- krb5_c_init_state (context, &key, 7, &state));
+ krb5_c_init_state (context, key, 7, &state));
test ("Encrypting with state",
- krb5_c_encrypt (context, &key, 7, &state, &in, &enc_out));
+ krb5_c_encrypt (context, key, 7, &state, &in, &enc_out));
test ("Decrypting",
- krb5_c_decrypt (context, &key, 7, 0, &enc_out, &check));
+ krb5_c_decrypt (context, key, 7, 0, &enc_out, &check));
test ("free_state",
- krb5_c_free_state (context, &key, &state));
- if(key.contents) {
- free(key.contents);
- key.contents = NULL;
- }
+ krb5_c_free_state (context, key, &state));
+ krb5_free_keyblock (context, key);
}
free(out.data);