• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 /*
2  * if_alg: User-space algorithm interface
3  *
4  * Copyright (c) 2010 Herbert Xu <herbert@gondor.apana.org.au>
5  *
6  * This program is free software; you can redistribute it and/or modify it
7  * under the terms of the GNU General Public License as published by the Free
8  * Software Foundation; either version 2 of the License, or (at your option)
9  * any later version.
10  *
11  */
12 
13 #ifndef _LINUX_IF_ALG_H
14 #define _LINUX_IF_ALG_H
15 
16 #include <linux/types.h>
17 
18 struct sockaddr_alg {
19 	__u16	salg_family;
20 	__u8	salg_type[14];
21 	__u32	salg_feat;
22 	__u32	salg_mask;
23 	__u8	salg_name[64];
24 };
25 
26 struct af_alg_iv {
27 	__u32	ivlen;
28 	__u8	iv[0];
29 };
30 
31 /* Socket options */
32 #define ALG_SET_KEY			1
33 #define ALG_SET_IV			2
34 #define ALG_SET_OP			3
35 #define ALG_SET_AEAD_ASSOCLEN		4
36 #define ALG_SET_AEAD_AUTHSIZE		5
37 
38 /* Operations */
39 #define ALG_OP_DECRYPT			0
40 #define ALG_OP_ENCRYPT			1
41 
42 #endif	/* _LINUX_IF_ALG_H */
43