summaryrefslogtreecommitdiffstats
path: root/src/lib/crypto/krb/arcfour/arcfour.h
blob: 34cbcc0f34ea1d2a54480d16a2960b7a91f40502 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
/* -*- mode: c; c-basic-offset: 4; indent-tabs-mode: nil -*- */
#ifndef ARCFOUR_H
#define ARCFOUR_H

#include "etypes.h"

krb5_keyusage
krb5int_arcfour_translate_usage(krb5_keyusage usage);

unsigned int
krb5int_arcfour_crypto_length(const struct krb5_keytypes *ktp,
                              krb5_cryptotype type);

krb5_error_code
krb5int_arcfour_encrypt(const struct krb5_keytypes *ktp, krb5_key key,
                        krb5_keyusage usage, const krb5_data *ivec,
                        krb5_crypto_iov *data, size_t num_data);

krb5_error_code
krb5int_arcfour_decrypt(const struct krb5_keytypes *ktp, krb5_key key,
                        krb5_keyusage usage, const krb5_data *ivec,
                        krb5_crypto_iov *data, size_t num_data);

extern krb5_error_code
krb5int_arcfour_string_to_key(
    const struct krb5_keytypes *,
    const krb5_data *,
    const krb5_data *,
    const krb5_data *,
    krb5_keyblock *);

extern const struct krb5_enc_provider krb5int_enc_arcfour;

#endif /* ARCFOUR_H */