rijndael: refactor to reduce number of #ifdefs and branches
[libgcrypt.git] / cipher / gost.h
1 /* gost.h - GOST 28147-89 implementation
2  * Copyright (C) 2012 Free Software Foundation, Inc.
3  *
4  * This file is part of Libgcrypt.
5  *
6  * Libgcrypt is free software; you can redistribute it and/or modify
7  * it under the terms of the GNU Lesser General Public License as
8  * published by the Free Software Foundation; either version 2.1 of
9  * the License, or (at your option) any later version.
10  *
11  * Libgcrypt is distributed in the hope that it will be useful,
12  * but WITHOUT ANY WARRANTY; without even the implied warranty of
13  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
14  * GNU Lesser General Public License for more details.
15  *
16  * You should have received a copy of the GNU Lesser General Public
17  * License along with this program; if not, see <http://www.gnu.org/licenses/>.
18  */
19
20 #ifndef _GCRY_GOST_H
21 #define _GCRY_GOST_H
22
23 typedef struct {
24   u32 key[8];
25   const u32 *sbox;
26 } GOST28147_context;
27
28 /* This is a simple interface that will be used by GOST R 34.11-94 */
29 unsigned int _gcry_gost_enc_data (GOST28147_context *c, const u32 *key,
30     u32 *o1, u32 *o2, u32 n1, u32 n2, int cryptopro);
31
32 #endif