diff options
author | Theodore Tso <tytso@mit.edu> | 1995-08-28 21:03:13 +0000 |
---|---|---|
committer | Theodore Tso <tytso@mit.edu> | 1995-08-28 21:03:13 +0000 |
commit | 4d61972fe3ca4d81a4ed067a11ae4253998614c2 (patch) | |
tree | 7baf6b17c3cde2a69b053aa2d596384035e584b5 /src/tests/asn.1/ktest.c | |
parent | 8a8fd722880a25f7edd37d65d30f15420b0d6da7 (diff) | |
download | krb5-4d61972fe3ca4d81a4ed067a11ae4253998614c2.tar.gz krb5-4d61972fe3ca4d81a4ed067a11ae4253998614c2.tar.xz krb5-4d61972fe3ca4d81a4ed067a11ae4253998614c2.zip |
krb5_decode_test.c (main): Add tests for decode_krb5_{etype_info,alt_method}
krb5_encode_test.c (main): Add tests for encode_krb5_{etype_info,alt_method}
ktest_equal.c (ktest_equal_krb5_alt_method,
ktest_equal_krb5_etype_info_entry,
ktest_equal_krb5_etype_info) New functions to test
{encode,decode}_krb5_{etype_info,alt_method}.
ktest.c (ktest_make_sample_etype_info_entry,
ktest_make_sample_etype_info,
ktest_make_sample_alt_method,
ktest_destroy_etype_info_entry, ktest_destroy_etype_info):
New functions to test {encode,decode}_krb5_{etype_info,alt_method}.
git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@6607 dc483132-0cff-0310-8789-dd5450dbe970
Diffstat (limited to 'src/tests/asn.1/ktest.c')
-rw-r--r-- | src/tests/asn.1/ktest.c | 72 |
1 files changed, 72 insertions, 0 deletions
diff --git a/src/tests/asn.1/ktest.c b/src/tests/asn.1/ktest.c index 4951e15d3e..2a01cb353a 100644 --- a/src/tests/asn.1/ktest.c +++ b/src/tests/asn.1/ktest.c @@ -637,6 +637,58 @@ krb5_error_code ktest_make_sample_krb5_pwd_data(pd) return 0; } +krb5_error_code ktest_make_sample_alt_method(p) + krb5_alt_method * p; +{ + p->method = 42; + p->data = "secret"; + p->length = strlen(p->data); + return 0; +} + +krb5_error_code ktest_make_sample_etype_info_entry(p) + krb5_etype_info_entry * p; +{ + p->etype = 1; + p->salt = "Morton"; + p->length = strlen(p->salt); + return 0; +} + +krb5_error_code ktest_make_sample_etype_info(p) + krb5_etype_info_entry *** p; +{ + krb5_etype_info_entry **info; + int i; + char buf[80]; + + info = malloc(sizeof(krb5_etype_info_entry *) * 4); + if (!info) + return ENOMEM; + memset(info, 0, sizeof(krb5_etype_info_entry *) * 4); + + for (i=0; i < 3; i++) { + info[i] = malloc(sizeof(krb5_etype_info_entry)); + if (info[i] == 0) + goto memfail; + info[i]->etype = i; + sprintf(buf, "Morton's #%d", i); + info[i]->length = strlen(buf); + info[i]->salt = malloc(info[i]->length+1); + if (info[i]->salt == 0) + goto memfail; + strcpy(info[i]->salt, buf); + info[i]->magic = KV5M_ETYPE_INFO_ENTRY; + } + free(info[1]->salt); + info[1]->length = 0; + info[1]->salt = 0; + *p = info; + return 0; +memfail: + ktest_destroy_etype_info(info); + return ENOMEM; +} /****************************************************************/ /* destructors */ @@ -814,3 +866,23 @@ void ktest_destroy_enc_data(ed) ktest_empty_data(&(ed->ciphertext)); ed->kvno = 0; } + +void ktest_destroy_etype_info_entry(i) + krb5_etype_info_entry *i; +{ + if (i->salt) + free(i->salt); + free(i); +} + +void ktest_destroy_etype_info(info) + krb5_etype_info_entry **info; +{ + int i; + + for(i=0; info[i] != NULL; i++) + ktest_destroy_etype_info_entry(info[i]); + free(info); +} + + |