2 * lib/crypto/md4/md4glue.c
4 * Copyright 1990,1991 by the Massachusetts Institute of Technology.
7 * Export of this software from the United States of America may
8 * require a specific license from the United States Government.
9 * It is the responsibility of any person or organization contemplating
10 * export to obtain such a license before exporting.
12 * WITHIN THAT CONSTRAINT, permission to use, copy, modify, and
13 * distribute this software and its documentation for any purpose and
14 * without fee is hereby granted, provided that the above copyright
15 * notice appear in all copies and that both that copyright notice and
16 * this permission notice appear in supporting documentation, and that
17 * the name of M.I.T. not be used in advertising or publicity pertaining
18 * to distribution of the software without specific, written prior
19 * permission. M.I.T. makes no representations about the suitability of
20 * this software for any purpose. It is provided "as is" without express
21 * or implied warranty.
23 * Kerberos glue for MD4 sample implementation.
29 krb5_error_code INTERFACE
30 md4_sum_func NPROTOTYPE((krb5_pointer in, size_t in_length,
31 krb5_pointer seed, size_t seed_length, krb5_checksum *outcksum));
33 krb5_error_code INTERFACE
34 md4_sum_func(in, in_length, seed, seed_length, outcksum)
39 krb5_checksum FAR *outcksum;
41 krb5_octet *input = (krb5_octet *)in;
45 MD4Update(&working, input, in_length);
48 outcksum->checksum_type = CKSUMTYPE_RSA_MD4;
49 outcksum->length = RSA_MD4_CKSUM_LENGTH;
51 memcpy((char *)outcksum->contents, (char *)&working.digest[0], 16);
53 memset((char *)&working, 0, sizeof(working));
57 krb5_checksum_entry rsa_md4_cksumtable_entry = {
61 1, /* is collision proof */
62 0, /* doesn't use key */