1 /* 2 * Copyright 2003 Sun Microsystems, Inc. All rights reserved. 3 * Use is subject to license terms. 4 */ 5 6 #pragma ident "%Z%%M% %I% %E% SMI" 7 8 #ifndef ARCFOUR_H 9 #define ARCFOUR_H 10 11 #define CONFOUNDERLENGTH 8 12 13 extern void 14 krb5_arcfour_encrypt_length(const struct krb5_enc_provider *, 15 const struct krb5_hash_provider *, 16 size_t, 17 size_t *); 18 19 extern 20 krb5_error_code krb5_arcfour_encrypt(krb5_context, 21 const struct krb5_enc_provider *, 22 const struct krb5_hash_provider *, 23 const krb5_keyblock *, 24 krb5_keyusage, 25 const krb5_data *, 26 const krb5_data *, 27 krb5_data *); 28 29 extern 30 krb5_error_code krb5_arcfour_decrypt(krb5_context, 31 const struct krb5_enc_provider *, 32 const struct krb5_hash_provider *, 33 const krb5_keyblock *, 34 krb5_keyusage, 35 const krb5_data *, 36 const krb5_data *, 37 krb5_data *); 38 39 #ifndef _KERNEL 40 extern krb5_error_code krb5int_arcfour_string_to_key( 41 krb5_context, 42 const struct krb5_enc_provider *, 43 const krb5_data *, 44 const krb5_data *, 45 const krb5_data *, 46 krb5_keyblock *); 47 #endif /* _KERNEL */ 48 49 extern const struct krb5_enc_provider krb5int_enc_arcfour; 50 51 krb5_keyusage krb5int_arcfour_translate_usage(krb5_keyusage usage); 52 53 #endif /* ARCFOUR_H */ 54