'\" t .\" Title: struct aead_alg .\" Author: .\" Generator: DocBook XSL Stylesheets v1.79.1 .\" Date: April 2019 .\" Manual: Programming Interface .\" Source: Kernel Hackers Manual 4.9.168 .\" Language: English .\" .TH "STRUCT AEAD_ALG" "9" "April 2019" "Kernel Hackers Manual 4\&.9\&." "Programming Interface" .\" ----------------------------------------------------------------- .\" * Define some portability stuff .\" ----------------------------------------------------------------- .\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .\" http://bugs.debian.org/507673 .\" http://lists.gnu.org/archive/html/groff/2009-02/msg00013.html .\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .ie \n(.g .ds Aq \(aq .el .ds Aq ' .\" ----------------------------------------------------------------- .\" * set default formatting .\" ----------------------------------------------------------------- .\" disable hyphenation .nh .\" disable justification (adjust text to left margin only) .ad l .\" ----------------------------------------------------------------- .\" * MAIN CONTENT STARTS HERE * .\" ----------------------------------------------------------------- .SH "NAME" struct_aead_alg \- AEAD cipher definition .SH "SYNOPSIS" .sp .nf struct aead_alg { int (* setkey) (struct crypto_aead *tfm, const u8 *key,unsigned int keylen); int (* setauthsize) (struct crypto_aead *tfm, unsigned int authsize); int (* encrypt) (struct aead_request *req); int (* decrypt) (struct aead_request *req); int (* init) (struct crypto_aead *tfm); void (* exit) (struct crypto_aead *tfm); const char * geniv; unsigned int ivsize; unsigned int maxauthsize; unsigned int chunksize; struct crypto_alg base; }; .fi .SH "MEMBERS" .PP setkey .RS 4 see struct skcipher_alg .RE .PP setauthsize .RS 4 Set authentication size for the AEAD transformation\&. This function is used to specify the consumer requested size of the authentication tag to be either generated by the transformation during encryption or the size of the authentication tag to be supplied during the decryption operation\&. This function is also responsible for checking the authentication tag size for validity\&. .RE .PP encrypt .RS 4 see struct skcipher_alg .RE .PP decrypt .RS 4 see struct skcipher_alg .RE .PP init .RS 4 Initialize the cryptographic transformation object\&. This function is used to initialize the cryptographic transformation object\&. This function is called only once at the instantiation time, right after the transformation context was allocated\&. In case the cryptographic hardware has some special requirements which need to be handled by software, this function shall check for the precise requirement of the transformation and put any software fallbacks in place\&. .RE .PP exit .RS 4 Deinitialize the cryptographic transformation object\&. This is a counterpart to \fIinit\fR, used to remove various changes set in \fIinit\fR\&. .RE .PP geniv .RS 4 see struct skcipher_alg .RE .PP ivsize .RS 4 see struct skcipher_alg .RE .PP maxauthsize .RS 4 Set the maximum authentication tag size supported by the transformation\&. A transformation may support smaller tag sizes\&. As the authentication tag is a message digest to ensure the integrity of the encrypted data, a consumer typically wants the largest authentication tag possible as defined by this variable\&. .RE .PP chunksize .RS 4 see struct skcipher_alg .RE .PP base .RS 4 Definition of a generic crypto cipher algorithm\&. .RE .SH "DESCRIPTION" .PP All fields except \fIivsize\fR is mandatory and must be filled\&. .SH "AUTHORS" .PP \fBStephan Mueller\fR <\&smueller@chronox.de\&> .RS 4 Author. .RE .PP \fBMarek Vasut\fR <\&marek@denx.de\&> .RS 4 Author. .RE .SH "COPYRIGHT" .br