1/*
2 * Copyright 2006-2016 The OpenSSL Project Authors. All Rights Reserved.
3 *
4 * Licensed under the OpenSSL license (the "License").  You may not use
5 * this file except in compliance with the License.  You can obtain a copy
6 * in the file LICENSE in the source distribution or at
7 * https://www.openssl.org/source/license.html
8 */
9
10/* ====================================================================
11 * Copyright 2006 NTT (Nippon Telegraph and Telephone Corporation) .
12 * ALL RIGHTS RESERVED.
13 *
14 * Intellectual Property information for Camellia:
15 *     http://info.isl.ntt.co.jp/crypt/eng/info/chiteki.html
16 *
17 * News Release for Announcement of Camellia open source:
18 *     http://www.ntt.co.jp/news/news06e/0604/060413a.html
19 *
20 * The Camellia Code included herein is developed by
21 * NTT (Nippon Telegraph and Telephone Corporation), and is contributed
22 * to the OpenSSL project.
23 */
24
25#ifndef OSSL_CRYPTO_CAMELLIA_CMLL_LOCAL_H
26# define OSSL_CRYPTO_CAMELLIA_CMLL_LOCAL_H
27
28typedef unsigned int u32;
29typedef unsigned char u8;
30
31int Camellia_Ekeygen(int keyBitLength, const u8 *rawKey,
32                     KEY_TABLE_TYPE keyTable);
33void Camellia_EncryptBlock_Rounds(int grandRounds, const u8 plaintext[],
34                                  const KEY_TABLE_TYPE keyTable,
35                                  u8 ciphertext[]);
36void Camellia_DecryptBlock_Rounds(int grandRounds, const u8 ciphertext[],
37                                  const KEY_TABLE_TYPE keyTable,
38                                  u8 plaintext[]);
39void Camellia_EncryptBlock(int keyBitLength, const u8 plaintext[],
40                           const KEY_TABLE_TYPE keyTable, u8 ciphertext[]);
41void Camellia_DecryptBlock(int keyBitLength, const u8 ciphertext[],
42                           const KEY_TABLE_TYPE keyTable, u8 plaintext[]);
43#endif                          /* #ifndef OSSL_CRYPTO_CAMELLIA_CMLL_LOCAL_H */
44