1
2/*
3 * Copyright (C) 1998 by the FundsXpress, INC.
4 *
5 * All rights reserved.
6 *
7 * Export of this software from the United States of America may require
8 * a specific license from the United States Government.  It is the
9 * responsibility of any person or organization contemplating export to
10 * obtain such a license before exporting.
11 *
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 FundsXpress. not be used in advertising or publicity pertaining
18 * to distribution of the software without specific, written prior
19 * permission.  FundsXpress makes no representations about the suitability of
20 * this software for any purpose.  It is provided "as is" without express
21 * or implied warranty.
22 *
23 * THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR
24 * IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
25 * WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE.
26 */
27
28#include "k5-int.h"
29#include "cksumtypes.h"
30
31krb5_boolean KRB5_CALLCONV
32krb5_c_is_keyed_cksum(krb5_cksumtype ctype)
33{
34    int i;
35
36    for (i=0; i<krb5_cksumtypes_length; i++) {
37	if (krb5_cksumtypes_list[i].ctype == ctype) {
38	    if (krb5_cksumtypes_list[i].keyhash ||
39		(krb5_cksumtypes_list[i].flags &
40		 KRB5_CKSUMFLAG_DERIVE))
41		return(1);
42	    else
43		return(0);
44	}
45    }
46
47    /* ick, but it's better than coredumping, which is what the
48       old code would have done */
49    return 0;   /* error case */
50}
51
52krb5_boolean KRB5_CALLCONV
53is_keyed_cksum(krb5_cksumtype ctype)
54{
55    return krb5_c_is_keyed_cksum (ctype);
56}
57