sphinx.addnodesdocument)}( rawsourcechildren]( translations LanguagesNode)}(hhh](h pending_xref)}(hhh]docutils.nodesTextChinese (Simplified)}parenthsba attributes}(ids]classes]names]dupnames]backrefs] refdomainstdreftypedoc reftarget'/translations/zh_CN/crypto/api-akciphermodnameN classnameN refexplicitutagnamehhh ubh)}(hhh]hChinese (Traditional)}hh2sbah}(h]h ]h"]h$]h&] refdomainh)reftypeh+ reftarget'/translations/zh_TW/crypto/api-akciphermodnameN classnameN refexplicituh1hhh ubh)}(hhh]hItalian}hhFsbah}(h]h ]h"]h$]h&] refdomainh)reftypeh+ reftarget'/translations/it_IT/crypto/api-akciphermodnameN classnameN refexplicituh1hhh ubh)}(hhh]hJapanese}hhZsbah}(h]h ]h"]h$]h&] refdomainh)reftypeh+ reftarget'/translations/ja_JP/crypto/api-akciphermodnameN classnameN refexplicituh1hhh ubh)}(hhh]hKorean}hhnsbah}(h]h ]h"]h$]h&] refdomainh)reftypeh+ reftarget'/translations/ko_KR/crypto/api-akciphermodnameN classnameN refexplicituh1hhh ubh)}(hhh]hSpanish}hhsbah}(h]h ]h"]h$]h&] refdomainh)reftypeh+ reftarget'/translations/sp_SP/crypto/api-akciphermodnameN classnameN refexplicituh1hhh ubeh}(h]h ]h"]h$]h&]current_languageEnglishuh1h hh _documenthsourceNlineNubhsection)}(hhh](htitle)}(hAsymmetric Cipherh]hAsymmetric Cipher}(hhhhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhhhA/var/lib/git/docbuild/linux/Documentation/crypto/api-akcipher.rsthKubh)}(hhh](h)}(h'Asymmetric Cipher Algorithm Definitionsh]h'Asymmetric Cipher Algorithm Definitions}(hhhhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhhhhhKubhindex)}(hhh]h}(h]h ]h"]h$]h&]entries](singleakcipher_request (C struct)c.akcipher_requesthNtauh1hhhhhhNhNubhdesc)}(hhh](hdesc_signature)}(hakcipher_requesth]hdesc_signature_line)}(hstruct akcipher_requesth](hdesc_sig_keyword)}(hstructh]hstruct}(hhhhhNhNubah}(h]h ]kah"]h$]h&]uh1hhhhhh\/var/lib/git/docbuild/linux/Documentation/crypto/api-akcipher:7: ./include/crypto/akcipher.hhKubhdesc_sig_space)}(h h]h }(hhhhhNhNubah}(h]h ]wah"]h$]h&]uh1hhhhhhhhKubh desc_name)}(hakcipher_requesth]h desc_sig_name)}(hhh]hakcipher_request}(hjhhhNhNubah}(h]h ]nah"]h$]h&]uh1jhjubah}(h]h ](sig-namedescnameeh"]h$]h&] xml:spacepreserveuh1j hhhhhhhKubeh}(h]h ]h"]h$]h&]j+j, add_permalinkuh1hsphinx_line_type declaratorhhhhhhhKubah}(h]hah ](sig sig-objecteh"]h$]h&] is_multiline _toc_parts) _toc_namehuh1hhhhKhhhhubh desc_content)}(hhh]h paragraph)}(hpublic key cipher requesth]hpublic key cipher request}(hjHhhhNhNubah}(h]h ]h"]h$]h&]uh1jFh\/var/lib/git/docbuild/linux/Documentation/crypto/api-akcipher:7: ./include/crypto/akcipher.hhKhjChhubah}(h]h ]h"]h$]h&]uh1jAhhhhhhhKubeh}(h]h ](cstructeh"]h$]h&]domainj`objtypejadesctypejanoindex noindexentrynocontentsentryuh1hhhhhhNhNubh container)}(hX**Definition**:: struct akcipher_request { struct crypto_async_request base; struct scatterlist *src; struct scatterlist *dst; unsigned int src_len; unsigned int dst_len; void *__ctx[] ; }; **Members** ``base`` Common attributes for async crypto requests ``src`` Source data ``dst`` Destination data ``src_len`` Size of the input buffer ``dst_len`` Size of **dst** buffer It needs to be at least as big as the expected result depending on the operation. After operation it will be updated with the actual size of the result. In case of error where the dst sgl size was insufficient, it will be updated to the size required for the operation. ``__ctx`` Start of private context datah](jG)}(h**Definition**::h](hstrong)}(h**Definition**h]h Definition}(hjwhhhNhNubah}(h]h ]h"]h$]h&]uh1juhjqubh:}(hjqhhhNhNubeh}(h]h ]h"]h$]h&]uh1jFh\/var/lib/git/docbuild/linux/Documentation/crypto/api-akcipher:7: ./include/crypto/akcipher.hhKhjmubh literal_block)}(hstruct akcipher_request { struct crypto_async_request base; struct scatterlist *src; struct scatterlist *dst; unsigned int src_len; unsigned int dst_len; void *__ctx[] ; };h]hstruct akcipher_request { struct crypto_async_request base; struct scatterlist *src; struct scatterlist *dst; unsigned int src_len; unsigned int dst_len; void *__ctx[] ; };}hjsbah}(h]h ]h"]h$]h&]j+j,uh1jh\/var/lib/git/docbuild/linux/Documentation/crypto/api-akcipher:7: ./include/crypto/akcipher.hhKhjmubjG)}(h **Members**h]jv)}(hjh]hMembers}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1juhjubah}(h]h ]h"]h$]h&]uh1jFh\/var/lib/git/docbuild/linux/Documentation/crypto/api-akcipher:7: ./include/crypto/akcipher.hhKhjmubhdefinition_list)}(hhh](hdefinition_list_item)}(h5``base`` Common attributes for async crypto requests h](hterm)}(h``base``h]hliteral)}(hjh]hbase}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jhjubah}(h]h ]h"]h$]h&]uh1jh\/var/lib/git/docbuild/linux/Documentation/crypto/api-akcipher:7: ./include/crypto/akcipher.hhKhjubh definition)}(hhh]jG)}(h+Common attributes for async crypto requestsh]h+Common attributes for async crypto requests}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jFhjhKhjubah}(h]h ]h"]h$]h&]uh1jhjubeh}(h]h ]h"]h$]h&]uh1jhjhKhjubj)}(h``src`` Source data h](j)}(h``src``h]j)}(hjh]hsrc}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jhjubah}(h]h ]h"]h$]h&]uh1jh\/var/lib/git/docbuild/linux/Documentation/crypto/api-akcipher:7: ./include/crypto/akcipher.hhKhjubj)}(hhh]jG)}(h Source datah]h Source data}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jFhjhKhjubah}(h]h ]h"]h$]h&]uh1jhjubeh}(h]h ]h"]h$]h&]uh1jhjhKhjubj)}(h``dst`` Destination data h](j)}(h``dst``h]j)}(hj>h]hdst}(hj@hhhNhNubah}(h]h ]h"]h$]h&]uh1jhj<ubah}(h]h ]h"]h$]h&]uh1jh\/var/lib/git/docbuild/linux/Documentation/crypto/api-akcipher:7: ./include/crypto/akcipher.hhKhj8ubj)}(hhh]jG)}(hDestination datah]hDestination data}(hjWhhhNhNubah}(h]h ]h"]h$]h&]uh1jFhjShKhjTubah}(h]h ]h"]h$]h&]uh1jhj8ubeh}(h]h ]h"]h$]h&]uh1jhjShKhjubj)}(h%``src_len`` Size of the input buffer h](j)}(h ``src_len``h]j)}(hjwh]hsrc_len}(hjyhhhNhNubah}(h]h ]h"]h$]h&]uh1jhjuubah}(h]h ]h"]h$]h&]uh1jh\/var/lib/git/docbuild/linux/Documentation/crypto/api-akcipher:7: ./include/crypto/akcipher.hhKhjqubj)}(hhh]jG)}(hSize of the input bufferh]hSize of the input buffer}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jFhjhKhjubah}(h]h ]h"]h$]h&]uh1jhjqubeh}(h]h ]h"]h$]h&]uh1jhjhKhjubj)}(hX1``dst_len`` Size of **dst** buffer It needs to be at least as big as the expected result depending on the operation. After operation it will be updated with the actual size of the result. In case of error where the dst sgl size was insufficient, it will be updated to the size required for the operation. h](j)}(h ``dst_len``h]j)}(hjh]hdst_len}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jhjubah}(h]h ]h"]h$]h&]uh1jh\/var/lib/git/docbuild/linux/Documentation/crypto/api-akcipher:7: ./include/crypto/akcipher.hhKhjubj)}(hhh]jG)}(hX$Size of **dst** buffer It needs to be at least as big as the expected result depending on the operation. After operation it will be updated with the actual size of the result. In case of error where the dst sgl size was insufficient, it will be updated to the size required for the operation.h](hSize of }(hjhhhNhNubjv)}(h**dst**h]hdst}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1juhjubhX buffer It needs to be at least as big as the expected result depending on the operation. After operation it will be updated with the actual size of the result. In case of error where the dst sgl size was insufficient, it will be updated to the size required for the operation.}(hjhhhNhNubeh}(h]h ]h"]h$]h&]uh1jFh\/var/lib/git/docbuild/linux/Documentation/crypto/api-akcipher:7: ./include/crypto/akcipher.hhKhjubah}(h]h ]h"]h$]h&]uh1jhjubeh}(h]h ]h"]h$]h&]uh1jhjhKhjubj)}(h'``__ctx`` Start of private context datah](j)}(h ``__ctx``h]j)}(hjh]h__ctx}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jhjubah}(h]h ]h"]h$]h&]uh1jh\/var/lib/git/docbuild/linux/Documentation/crypto/api-akcipher:7: ./include/crypto/akcipher.hhKhjubj)}(hhh]jG)}(hStart of private context datah]hStart of private context data}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jFh\/var/lib/git/docbuild/linux/Documentation/crypto/api-akcipher:7: ./include/crypto/akcipher.hhKhjubah}(h]h ]h"]h$]h&]uh1jhjubeh}(h]h ]h"]h$]h&]uh1jhjhKhjubeh}(h]h ]h"]h$]h&]uh1jhjmubeh}(h]h ] kernelindentah"]h$]h&]uh1jkhhhhhNhNubh)}(hhh]h}(h]h ]h"]h$]h&]entries](hՌakcipher_alg (C struct)c.akcipher_alghNtauh1hhhhhhNhNubh)}(hhh](h)}(h akcipher_algh]h)}(hstruct akcipher_algh](h)}(hhh]hstruct}(hjVhhhNhNubah}(h]h ]hah"]h$]h&]uh1hhjRhhh\/var/lib/git/docbuild/linux/Documentation/crypto/api-akcipher:7: ./include/crypto/akcipher.hhK#ubh)}(h h]h }(hjdhhhNhNubah}(h]h ]j ah"]h$]h&]uh1hhjRhhhjchK#ubj)}(h akcipher_algh]j)}(hjPh]h akcipher_alg}(hjvhhhNhNubah}(h]h ]jah"]h$]h&]uh1jhjrubah}(h]h ](j&j'eh"]h$]h&]j+j,uh1j hjRhhhjchK#ubeh}(h]h ]h"]h$]h&]j+j,j3uh1hj4j5hjNhhhjchK#ubah}(h]jIah ](j9j:eh"]h$]h&]j>j?)j@huh1hhjchK#hjKhhubjB)}(hhh]jG)}(h#generic public key cipher algorithmh]h#generic public key cipher algorithm}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jFh\/var/lib/git/docbuild/linux/Documentation/crypto/api-akcipher:7: ./include/crypto/akcipher.hhK5hjhhubah}(h]h ]h"]h$]h&]uh1jAhjKhhhjchK#ubeh}(h]h ](j`structeh"]h$]h&]jej`jfjjgjjhjijjuh1hhhhhhNhNubjl)}(hX2**Definition**:: struct akcipher_alg { int (*encrypt)(struct akcipher_request *req); int (*decrypt)(struct akcipher_request *req); int (*set_pub_key)(struct crypto_akcipher *tfm, const void *key, unsigned int keylen); int (*set_priv_key)(struct crypto_akcipher *tfm, const void *key, unsigned int keylen); unsigned int (*max_size)(struct crypto_akcipher *tfm); int (*init)(struct crypto_akcipher *tfm); void (*exit)(struct crypto_akcipher *tfm); struct crypto_alg base; }; **Members** ``encrypt`` Function performs an encrypt operation as defined by public key algorithm. In case of error, where the dst_len was insufficient, the req->dst_len will be updated to the size required for the operation ``decrypt`` Function performs a decrypt operation as defined by public key algorithm. In case of error, where the dst_len was insufficient, the req->dst_len will be updated to the size required for the operation ``set_pub_key`` Function invokes the algorithm specific set public key function, which knows how to decode and interpret the BER encoded public key and parameters ``set_priv_key`` Function invokes the algorithm specific set private key function, which knows how to decode and interpret the BER encoded private key and parameters ``max_size`` Function returns dest buffer size required for a given key. ``init`` 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. ``exit`` Deinitialize the cryptographic transformation object. This is a counterpart to **init**, used to remove various changes set in **init**. ``base`` Common crypto API algorithm data structureh](jG)}(h**Definition**::h](jv)}(h**Definition**h]h Definition}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1juhjubh:}(hjhhhNhNubeh}(h]h ]h"]h$]h&]uh1jFh\/var/lib/git/docbuild/linux/Documentation/crypto/api-akcipher:7: ./include/crypto/akcipher.hhK9hjubj)}(hXstruct akcipher_alg { int (*encrypt)(struct akcipher_request *req); int (*decrypt)(struct akcipher_request *req); int (*set_pub_key)(struct crypto_akcipher *tfm, const void *key, unsigned int keylen); int (*set_priv_key)(struct crypto_akcipher *tfm, const void *key, unsigned int keylen); unsigned int (*max_size)(struct crypto_akcipher *tfm); int (*init)(struct crypto_akcipher *tfm); void (*exit)(struct crypto_akcipher *tfm); struct crypto_alg base; };h]hXstruct akcipher_alg { int (*encrypt)(struct akcipher_request *req); int (*decrypt)(struct akcipher_request *req); int (*set_pub_key)(struct crypto_akcipher *tfm, const void *key, unsigned int keylen); int (*set_priv_key)(struct crypto_akcipher *tfm, const void *key, unsigned int keylen); unsigned int (*max_size)(struct crypto_akcipher *tfm); int (*init)(struct crypto_akcipher *tfm); void (*exit)(struct crypto_akcipher *tfm); struct crypto_alg base; };}hjsbah}(h]h ]h"]h$]h&]j+j,uh1jh\/var/lib/git/docbuild/linux/Documentation/crypto/api-akcipher:7: ./include/crypto/akcipher.hhK;hjubjG)}(h **Members**h]jv)}(hjh]hMembers}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1juhjubah}(h]h ]h"]h$]h&]uh1jFh\/var/lib/git/docbuild/linux/Documentation/crypto/api-akcipher:7: ./include/crypto/akcipher.hhKFhjubj)}(hhh](j)}(h``encrypt`` Function performs an encrypt operation as defined by public key algorithm. In case of error, where the dst_len was insufficient, the req->dst_len will be updated to the size required for the operation h](j)}(h ``encrypt``h]j)}(hjh]hencrypt}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jhjubah}(h]h ]h"]h$]h&]uh1jh\/var/lib/git/docbuild/linux/Documentation/crypto/api-akcipher:7: ./include/crypto/akcipher.hhK;hjubj)}(hhh]jG)}(hFunction performs an encrypt operation as defined by public key algorithm. In case of error, where the dst_len was insufficient, the req->dst_len will be updated to the size required for the operationh]hFunction performs an encrypt operation as defined by public key algorithm. In case of error, where the dst_len was insufficient, the req->dst_len will be updated to the size required for the operation}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jFh\/var/lib/git/docbuild/linux/Documentation/crypto/api-akcipher:7: ./include/crypto/akcipher.hhK8hjubah}(h]h ]h"]h$]h&]uh1jhjubeh}(h]h ]h"]h$]h&]uh1jhjhK;hjubj)}(h``decrypt`` Function performs a decrypt operation as defined by public key algorithm. In case of error, where the dst_len was insufficient, the req->dst_len will be updated to the size required for the operation h](j)}(h ``decrypt``h]j)}(hj?h]hdecrypt}(hjAhhhNhNubah}(h]h ]h"]h$]h&]uh1jhj=ubah}(h]h ]h"]h$]h&]uh1jh\/var/lib/git/docbuild/linux/Documentation/crypto/api-akcipher:7: ./include/crypto/akcipher.hhK?hj9ubj)}(hhh]jG)}(hFunction performs a decrypt operation as defined by public key algorithm. In case of error, where the dst_len was insufficient, the req->dst_len will be updated to the size required for the operationh]hFunction performs a decrypt operation as defined by public key algorithm. In case of error, where the dst_len was insufficient, the req->dst_len will be updated to the size required for the operation}(hjXhhhNhNubah}(h]h ]h"]h$]h&]uh1jFh\/var/lib/git/docbuild/linux/Documentation/crypto/api-akcipher:7: ./include/crypto/akcipher.hhKj?)j@huh1hhjMhKjhj5hhubjB)}(hhh]jG)}(hallocate AKCIPHER tfm handleh]hallocate AKCIPHER tfm handle}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jFh]/var/lib/git/docbuild/linux/Documentation/crypto/api-akcipher:16: ./include/crypto/akcipher.hhKjhjhhubah}(h]h ]h"]h$]h&]uh1jAhj5hhhjMhKjubeh}(h]h ](j`functioneh"]h$]h&]jej`jfjjgjjhjijjuh1hhhhjhNhNubjl)}(hX0**Parameters** ``const char *alg_name`` is the cra_name / name or cra_driver_name / driver name of the public key algorithm e.g. "rsa" ``u32 type`` specifies the type of the algorithm ``u32 mask`` specifies the mask for the algorithm **Description** Allocate a handle for public key algorithm. The returned struct crypto_akcipher is the handle that is required for any subsequent API invocation for the public key operations. **Return** allocated handle in case of success; IS_ERR() is true in case of an error, PTR_ERR() returns the error code.h](jG)}(h**Parameters**h]jv)}(hjh]h Parameters}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1juhjubah}(h]h ]h"]h$]h&]uh1jFh]/var/lib/git/docbuild/linux/Documentation/crypto/api-akcipher:16: ./include/crypto/akcipher.hhKnhjubj)}(hhh](j)}(hx``const char *alg_name`` is the cra_name / name or cra_driver_name / driver name of the public key algorithm e.g. "rsa" h](j)}(h``const char *alg_name``h]j)}(hj h]hconst char *alg_name}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jhj ubah}(h]h ]h"]h$]h&]uh1jh]/var/lib/git/docbuild/linux/Documentation/crypto/api-akcipher:16: ./include/crypto/akcipher.hhKlhjubj)}(hhh]jG)}(h^is the cra_name / name or cra_driver_name / driver name of the public key algorithm e.g. "rsa"h]hbis the cra_name / name or cra_driver_name / driver name of the public key algorithm e.g. “rsa”}(hj&hhhNhNubah}(h]h ]h"]h$]h&]uh1jFh]/var/lib/git/docbuild/linux/Documentation/crypto/api-akcipher:16: ./include/crypto/akcipher.hhKkhj#ubah}(h]h ]h"]h$]h&]uh1jhjubeh}(h]h ]h"]h$]h&]uh1jhj"hKlhjubj)}(h1``u32 type`` specifies the type of the algorithm h](j)}(h ``u32 type``h]j)}(hjGh]hu32 type}(hjIhhhNhNubah}(h]h ]h"]h$]h&]uh1jhjEubah}(h]h ]h"]h$]h&]uh1jh]/var/lib/git/docbuild/linux/Documentation/crypto/api-akcipher:16: ./include/crypto/akcipher.hhKmhjAubj)}(hhh]jG)}(h#specifies the type of the algorithmh]h#specifies the type of the algorithm}(hj`hhhNhNubah}(h]h ]h"]h$]h&]uh1jFhj\hKmhj]ubah}(h]h ]h"]h$]h&]uh1jhjAubeh}(h]h ]h"]h$]h&]uh1jhj\hKmhjubj)}(h2``u32 mask`` specifies the mask for the algorithm h](j)}(h ``u32 mask``h]j)}(hjh]hu32 mask}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jhj~ubah}(h]h ]h"]h$]h&]uh1jh]/var/lib/git/docbuild/linux/Documentation/crypto/api-akcipher:16: ./include/crypto/akcipher.hhKnhjzubj)}(hhh]jG)}(h$specifies the mask for the algorithmh]h$specifies the mask for the algorithm}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jFhjhKnhjubah}(h]h ]h"]h$]h&]uh1jhjzubeh}(h]h ]h"]h$]h&]uh1jhjhKnhjubeh}(h]h ]h"]h$]h&]uh1jhjubjG)}(h**Description**h]jv)}(hjh]h Description}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1juhjubah}(h]h ]h"]h$]h&]uh1jFh]/var/lib/git/docbuild/linux/Documentation/crypto/api-akcipher:16: ./include/crypto/akcipher.hhKphjubjG)}(hAllocate a handle for public key algorithm. The returned struct crypto_akcipher is the handle that is required for any subsequent API invocation for the public key operations.h]hAllocate a handle for public key algorithm. The returned struct crypto_akcipher is the handle that is required for any subsequent API invocation for the public key operations.}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jFh]/var/lib/git/docbuild/linux/Documentation/crypto/api-akcipher:16: ./include/crypto/akcipher.hhKohjubjG)}(h **Return**h]jv)}(hjh]hReturn}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1juhjubah}(h]h ]h"]h$]h&]uh1jFh]/var/lib/git/docbuild/linux/Documentation/crypto/api-akcipher:16: ./include/crypto/akcipher.hhKshjubjG)}(hlallocated handle in case of success; IS_ERR() is true in case of an error, PTR_ERR() returns the error code.h]hlallocated handle in case of success; IS_ERR() is true in case of an error, PTR_ERR() returns the error code.}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jFh]/var/lib/git/docbuild/linux/Documentation/crypto/api-akcipher:16: ./include/crypto/akcipher.hhKthjubeh}(h]h ] kernelindentah"]h$]h&]uh1jkhjhhhNhNubh)}(hhh]h}(h]h ]h"]h$]h&]entries](hՌ!crypto_free_akcipher (C function)c.crypto_free_akcipherhNtauh1hhjhhhNhNubh)}(hhh](h)}(h7void crypto_free_akcipher (struct crypto_akcipher *tfm)h]h)}(h6void crypto_free_akcipher(struct crypto_akcipher *tfm)h](j)}(hvoidh]hvoid}(hj' hhhNhNubah}(h]h ]jah"]h$]h&]uh1jhj# hhh]/var/lib/git/docbuild/linux/Documentation/crypto/api-akcipher:16: ./include/crypto/akcipher.hhKubh)}(h h]h }(hj6 hhhNhNubah}(h]h ]j ah"]h$]h&]uh1hhj# hhhj5 hKubj)}(hcrypto_free_akcipherh]j)}(hcrypto_free_akcipherh]hcrypto_free_akcipher}(hjH hhhNhNubah}(h]h ]jah"]h$]h&]uh1jhjD ubah}(h]h ](j&j'eh"]h$]h&]j+j,uh1j hj# hhhj5 hKubj)}(h(struct crypto_akcipher *tfm)h]j)}(hstruct crypto_akcipher *tfmh](h)}(hhh]hstruct}(hjd hhhNhNubah}(h]h ]hah"]h$]h&]uh1hhj` ubh)}(h h]h }(hjq hhhNhNubah}(h]h ]j ah"]h$]h&]uh1hhj` ubh)}(hhh]j)}(hcrypto_akcipherh]hcrypto_akcipher}(hj hhhNhNubah}(h]h ]jah"]h$]h&]uh1jhj ubah}(h]h ]h"]h$]h&] refdomainj`reftypeju reftargetj modnameN classnameNjyj|)}j]j)}jujJ sbc.crypto_free_akcipherasbuh1hhj` ubh)}(h h]h }(hj hhhNhNubah}(h]h ]j ah"]h$]h&]uh1hhj` ubj)}(hjh]h*}(hj hhhNhNubah}(h]h ]jah"]h$]h&]uh1jhj` ubj)}(htfmh]htfm}(hj hhhNhNubah}(h]h ]jah"]h$]h&]uh1jhj` ubeh}(h]h ]h"]h$]h&]noemphj+j,uh1jhj\ ubah}(h]h ]h"]h$]h&]j+j,uh1jhj# hhhj5 hKubeh}(h]h ]h"]h$]h&]j+j,j3uh1hj4j5hj hhhj5 hKubah}(h]j ah ](j9j:eh"]h$]h&]j>j?)j@huh1hhj5 hKhj hhubjB)}(hhh]jG)}(hfree AKCIPHER tfm handleh]hfree AKCIPHER tfm handle}(hj hhhNhNubah}(h]h ]h"]h$]h&]uh1jFh]/var/lib/git/docbuild/linux/Documentation/crypto/api-akcipher:16: ./include/crypto/akcipher.hhKhj hhubah}(h]h ]h"]h$]h&]uh1jAhj hhhj5 hKubeh}(h]h ](j`functioneh"]h$]h&]jej`jfj jgj jhjijjuh1hhhhjhNhNubjl)}(h**Parameters** ``struct crypto_akcipher *tfm`` AKCIPHER tfm handle allocated with crypto_alloc_akcipher() **Description** If **tfm** is a NULL or error pointer, this function does nothing.h](jG)}(h**Parameters**h]jv)}(hj h]h Parameters}(hj hhhNhNubah}(h]h ]h"]h$]h&]uh1juhj ubah}(h]h ]h"]h$]h&]uh1jFh]/var/lib/git/docbuild/linux/Documentation/crypto/api-akcipher:16: ./include/crypto/akcipher.hhKhj ubj)}(hhh]j)}(h[``struct crypto_akcipher *tfm`` AKCIPHER tfm handle allocated with crypto_alloc_akcipher() h](j)}(h``struct crypto_akcipher *tfm``h]j)}(hj( h]hstruct crypto_akcipher *tfm}(hj* hhhNhNubah}(h]h ]h"]h$]h&]uh1jhj& ubah}(h]h ]h"]h$]h&]uh1jh]/var/lib/git/docbuild/linux/Documentation/crypto/api-akcipher:16: ./include/crypto/akcipher.hhKhj" ubj)}(hhh]jG)}(h:AKCIPHER tfm handle allocated with crypto_alloc_akcipher()h]h:AKCIPHER tfm handle allocated with crypto_alloc_akcipher()}(hjA hhhNhNubah}(h]h ]h"]h$]h&]uh1jFhj= hKhj> ubah}(h]h ]h"]h$]h&]uh1jhj" ubeh}(h]h ]h"]h$]h&]uh1jhj= hKhj ubah}(h]h ]h"]h$]h&]uh1jhj ubjG)}(h**Description**h]jv)}(hjc h]h Description}(hje hhhNhNubah}(h]h ]h"]h$]h&]uh1juhja ubah}(h]h ]h"]h$]h&]uh1jFh]/var/lib/git/docbuild/linux/Documentation/crypto/api-akcipher:16: ./include/crypto/akcipher.hhKhj ubjG)}(hBIf **tfm** is a NULL or error pointer, this function does nothing.h](hIf }(hjy hhhNhNubjv)}(h**tfm**h]htfm}(hj hhhNhNubah}(h]h ]h"]h$]h&]uh1juhjy ubh8 is a NULL or error pointer, this function does nothing.}(hjy hhhNhNubeh}(h]h ]h"]h$]h&]uh1jFh]/var/lib/git/docbuild/linux/Documentation/crypto/api-akcipher:16: ./include/crypto/akcipher.hhKhj ubeh}(h]h ] kernelindentah"]h$]h&]uh1jkhjhhhNhNubh)}(hhh]h}(h]h ]h"]h$]h&]entries](hՌ$crypto_akcipher_maxsize (C function)c.crypto_akcipher_maxsizehNtauh1hhjhhhNhNubh)}(hhh](h)}(hBunsigned int crypto_akcipher_maxsize (struct crypto_akcipher *tfm)h]h)}(hAunsigned int crypto_akcipher_maxsize(struct crypto_akcipher *tfm)h](j)}(hunsignedh]hunsigned}(hj hhhNhNubah}(h]h ]jah"]h$]h&]uh1jhj hhh]/var/lib/git/docbuild/linux/Documentation/crypto/api-akcipher:16: ./include/crypto/akcipher.hhKubh)}(h h]h }(hj hhhNhNubah}(h]h ]j ah"]h$]h&]uh1hhj hhhj hKubj)}(hinth]hint}(hj hhhNhNubah}(h]h ]jah"]h$]h&]uh1jhj hhhj hKubh)}(h h]h }(hj hhhNhNubah}(h]h ]j ah"]h$]h&]uh1hhj hhhj hKubj)}(hcrypto_akcipher_maxsizeh]j)}(hcrypto_akcipher_maxsizeh]hcrypto_akcipher_maxsize}(hj hhhNhNubah}(h]h ]jah"]h$]h&]uh1jhj ubah}(h]h ](j&j'eh"]h$]h&]j+j,uh1j hj hhhj hKubj)}(h(struct crypto_akcipher *tfm)h]j)}(hstruct crypto_akcipher *tfmh](h)}(hhh]hstruct}(hj hhhNhNubah}(h]h ]hah"]h$]h&]uh1hhj ubh)}(h h]h }(hj hhhNhNubah}(h]h ]j ah"]h$]h&]uh1hhj ubh)}(hhh]j)}(hcrypto_akcipherh]hcrypto_akcipher}(hj1 hhhNhNubah}(h]h ]jah"]h$]h&]uh1jhj. ubah}(h]h ]h"]h$]h&] refdomainj`reftypeju reftargetj3 modnameN classnameNjyj|)}j]j)}juj sbc.crypto_akcipher_maxsizeasbuh1hhj ubh)}(h h]h }(hjQ hhhNhNubah}(h]h ]j ah"]h$]h&]uh1hhj ubj)}(hjh]h*}(hj_ hhhNhNubah}(h]h ]jah"]h$]h&]uh1jhj ubj)}(htfmh]htfm}(hjl hhhNhNubah}(h]h ]jah"]h$]h&]uh1jhj ubeh}(h]h ]h"]h$]h&]noemphj+j,uh1jhj ubah}(h]h ]h"]h$]h&]j+j,uh1jhj hhhj hKubeh}(h]h ]h"]h$]h&]j+j,j3uh1hj4j5hj hhhj hKubah}(h]j ah ](j9j:eh"]h$]h&]j>j?)j@huh1hhj hKhj hhubjB)}(hhh]jG)}(hGet len for output bufferh]hGet len for output buffer}(hj hhhNhNubah}(h]h ]h"]h$]h&]uh1jFh]/var/lib/git/docbuild/linux/Documentation/crypto/api-akcipher:16: ./include/crypto/akcipher.hhKhj hhubah}(h]h ]h"]h$]h&]uh1jAhj hhhj hKubeh}(h]h ](j`functioneh"]h$]h&]jej`jfj jgj jhjijjuh1hhhhjhNhNubjl)}(hXn**Parameters** ``struct crypto_akcipher *tfm`` AKCIPHER tfm handle allocated with crypto_alloc_akcipher() **Description** Function returns the dest buffer size required for a given key. Function assumes that the key is already set in the transformation. If this function is called without a setkey or with a failed setkey, you will end up in a NULL dereference.h](jG)}(h**Parameters**h]jv)}(hj h]h Parameters}(hj hhhNhNubah}(h]h ]h"]h$]h&]uh1juhj ubah}(h]h ]h"]h$]h&]uh1jFh]/var/lib/git/docbuild/linux/Documentation/crypto/api-akcipher:16: ./include/crypto/akcipher.hhKhj ubj)}(hhh]j)}(h[``struct crypto_akcipher *tfm`` AKCIPHER tfm handle allocated with crypto_alloc_akcipher() h](j)}(h``struct crypto_akcipher *tfm``h]j)}(hj h]hstruct crypto_akcipher *tfm}(hj hhhNhNubah}(h]h ]h"]h$]h&]uh1jhj ubah}(h]h ]h"]h$]h&]uh1jh]/var/lib/git/docbuild/linux/Documentation/crypto/api-akcipher:16: ./include/crypto/akcipher.hhMhj ubj)}(hhh]jG)}(h:AKCIPHER tfm handle allocated with crypto_alloc_akcipher()h]h:AKCIPHER tfm handle allocated with crypto_alloc_akcipher()}(hj hhhNhNubah}(h]h ]h"]h$]h&]uh1jFhj hMhj ubah}(h]h ]h"]h$]h&]uh1jhj ubeh}(h]h ]h"]h$]h&]uh1jhj hMhj ubah}(h]h ]h"]h$]h&]uh1jhj ubjG)}(h**Description**h]jv)}(hj h]h Description}(hj hhhNhNubah}(h]h ]h"]h$]h&]uh1juhj ubah}(h]h ]h"]h$]h&]uh1jFh]/var/lib/git/docbuild/linux/Documentation/crypto/api-akcipher:16: ./include/crypto/akcipher.hhMhj ubjG)}(hFunction returns the dest buffer size required for a given key. Function assumes that the key is already set in the transformation. If this function is called without a setkey or with a failed setkey, you will end up in a NULL dereference.h]hFunction returns the dest buffer size required for a given key. Function assumes that the key is already set in the transformation. If this function is called without a setkey or with a failed setkey, you will end up in a NULL dereference.}(hj( hhhNhNubah}(h]h ]h"]h$]h&]uh1jFh]/var/lib/git/docbuild/linux/Documentation/crypto/api-akcipher:16: ./include/crypto/akcipher.hhKhj ubeh}(h]h ] kernelindentah"]h$]h&]uh1jkhjhhhNhNubh)}(hhh]h}(h]h ]h"]h$]h&]entries](hՌ$crypto_akcipher_encrypt (C function)c.crypto_akcipher_encrypthNtauh1hhjhhhNhNubh)}(hhh](h)}(h:int crypto_akcipher_encrypt (struct akcipher_request *req)h]h)}(h9int crypto_akcipher_encrypt(struct akcipher_request *req)h](j)}(hinth]hint}(hjW hhhNhNubah}(h]h ]jah"]h$]h&]uh1jhjS hhh]/var/lib/git/docbuild/linux/Documentation/crypto/api-akcipher:16: ./include/crypto/akcipher.hhM ubh)}(h h]h }(hjf hhhNhNubah}(h]h ]j ah"]h$]h&]uh1hhjS hhhje hM ubj)}(hcrypto_akcipher_encrypth]j)}(hcrypto_akcipher_encrypth]hcrypto_akcipher_encrypt}(hjx hhhNhNubah}(h]h ]jah"]h$]h&]uh1jhjt ubah}(h]h ](j&j'eh"]h$]h&]j+j,uh1j hjS hhhje hM ubj)}(h(struct akcipher_request *req)h]j)}(hstruct akcipher_request *reqh](h)}(hhh]hstruct}(hj hhhNhNubah}(h]h ]hah"]h$]h&]uh1hhj ubh)}(h h]h }(hj hhhNhNubah}(h]h ]j ah"]h$]h&]uh1hhj ubh)}(hhh]j)}(hakcipher_requesth]hakcipher_request}(hj hhhNhNubah}(h]h ]jah"]h$]h&]uh1jhj ubah}(h]h ]h"]h$]h&] refdomainj`reftypeju reftargetj modnameN classnameNjyj|)}j]j)}jujz sbc.crypto_akcipher_encryptasbuh1hhj ubh)}(h h]h }(hj hhhNhNubah}(h]h ]j ah"]h$]h&]uh1hhj ubj)}(hjh]h*}(hj hhhNhNubah}(h]h ]jah"]h$]h&]uh1jhj ubj)}(hreqh]hreq}(hj hhhNhNubah}(h]h ]jah"]h$]h&]uh1jhj ubeh}(h]h ]h"]h$]h&]noemphj+j,uh1jhj ubah}(h]h ]h"]h$]h&]j+j,uh1jhjS hhhje hM ubeh}(h]h ]h"]h$]h&]j+j,j3uh1hj4j5hjO hhhje hM ubah}(h]jJ ah ](j9j:eh"]h$]h&]j>j?)j@huh1hhje hM hjL hhubjB)}(hhh]jG)}(h#Invoke public key encrypt operationh]h#Invoke public key encrypt operation}(hj hhhNhNubah}(h]h ]h"]h$]h&]uh1jFh]/var/lib/git/docbuild/linux/Documentation/crypto/api-akcipher:16: ./include/crypto/akcipher.hhM hj hhubah}(h]h ]h"]h$]h&]uh1jAhjL hhhje hM ubeh}(h]h ](j`functioneh"]h$]h&]jej`jfj/ jgj/ jhjijjuh1hhhhjhNhNubjl)}(h**Parameters** ``struct akcipher_request *req`` asymmetric key request **Description** Function invokes the specific public key encrypt operation for a given public key algorithm **Return** zero on success; error code in case of errorh](jG)}(h**Parameters**h]jv)}(hj9 h]h Parameters}(hj; hhhNhNubah}(h]h ]h"]h$]h&]uh1juhj7 ubah}(h]h ]h"]h$]h&]uh1jFh]/var/lib/git/docbuild/linux/Documentation/crypto/api-akcipher:16: ./include/crypto/akcipher.hhMhj3 ubj)}(hhh]j)}(h8``struct akcipher_request *req`` asymmetric key request h](j)}(h ``struct akcipher_request *req``h]j)}(hjX h]hstruct akcipher_request *req}(hjZ hhhNhNubah}(h]h ]h"]h$]h&]uh1jhjV ubah}(h]h ]h"]h$]h&]uh1jh]/var/lib/git/docbuild/linux/Documentation/crypto/api-akcipher:16: ./include/crypto/akcipher.hhMhjR ubj)}(hhh]jG)}(hasymmetric key requesth]hasymmetric key request}(hjq hhhNhNubah}(h]h ]h"]h$]h&]uh1jFhjm hMhjn ubah}(h]h ]h"]h$]h&]uh1jhjR ubeh}(h]h ]h"]h$]h&]uh1jhjm hMhjO ubah}(h]h ]h"]h$]h&]uh1jhj3 ubjG)}(h**Description**h]jv)}(hj h]h Description}(hj hhhNhNubah}(h]h ]h"]h$]h&]uh1juhj ubah}(h]h ]h"]h$]h&]uh1jFh]/var/lib/git/docbuild/linux/Documentation/crypto/api-akcipher:16: ./include/crypto/akcipher.hhMhj3 ubjG)}(h[Function invokes the specific public key encrypt operation for a given public key algorithmh]h[Function invokes the specific public key encrypt operation for a given public key algorithm}(hj hhhNhNubah}(h]h ]h"]h$]h&]uh1jFh]/var/lib/git/docbuild/linux/Documentation/crypto/api-akcipher:16: ./include/crypto/akcipher.hhM hj3 ubjG)}(h **Return**h]jv)}(hj h]hReturn}(hj hhhNhNubah}(h]h ]h"]h$]h&]uh1juhj ubah}(h]h ]h"]h$]h&]uh1jFh]/var/lib/git/docbuild/linux/Documentation/crypto/api-akcipher:16: ./include/crypto/akcipher.hhMhj3 ubjG)}(h,zero on success; error code in case of errorh]h,zero on success; error code in case of error}(hj hhhNhNubah}(h]h ]h"]h$]h&]uh1jFh]/var/lib/git/docbuild/linux/Documentation/crypto/api-akcipher:16: ./include/crypto/akcipher.hhMhj3 ubeh}(h]h ] kernelindentah"]h$]h&]uh1jkhjhhhNhNubh)}(hhh]h}(h]h ]h"]h$]h&]entries](hՌ$crypto_akcipher_decrypt (C function)c.crypto_akcipher_decrypthNtauh1hhjhhhNhNubh)}(hhh](h)}(h:int crypto_akcipher_decrypt (struct akcipher_request *req)h]h)}(h9int crypto_akcipher_decrypt(struct akcipher_request *req)h](j)}(hinth]hint}(hj hhhNhNubah}(h]h ]jah"]h$]h&]uh1jhj hhh]/var/lib/git/docbuild/linux/Documentation/crypto/api-akcipher:16: ./include/crypto/akcipher.hhMubh)}(h h]h }(hjhhhNhNubah}(h]h ]j ah"]h$]h&]uh1hhj hhhj hMubj)}(hcrypto_akcipher_decrypth]j)}(hcrypto_akcipher_decrypth]hcrypto_akcipher_decrypt}(hj hhhNhNubah}(h]h ]jah"]h$]h&]uh1jhjubah}(h]h ](j&j'eh"]h$]h&]j+j,uh1j hj hhhj hMubj)}(h(struct akcipher_request *req)h]j)}(hstruct akcipher_request *reqh](h)}(hhh]hstruct}(hj<hhhNhNubah}(h]h ]hah"]h$]h&]uh1hhj8ubh)}(h h]h }(hjIhhhNhNubah}(h]h ]j ah"]h$]h&]uh1hhj8ubh)}(hhh]j)}(hakcipher_requesth]hakcipher_request}(hjZhhhNhNubah}(h]h ]jah"]h$]h&]uh1jhjWubah}(h]h ]h"]h$]h&] refdomainj`reftypeju reftargetj\modnameN classnameNjyj|)}j]j)}juj"sbc.crypto_akcipher_decryptasbuh1hhj8ubh)}(h h]h }(hjzhhhNhNubah}(h]h ]j ah"]h$]h&]uh1hhj8ubj)}(hjh]h*}(hjhhhNhNubah}(h]h ]jah"]h$]h&]uh1jhj8ubj)}(hreqh]hreq}(hjhhhNhNubah}(h]h ]jah"]h$]h&]uh1jhj8ubeh}(h]h ]h"]h$]h&]noemphj+j,uh1jhj4ubah}(h]h ]h"]h$]h&]j+j,uh1jhj hhhj hMubeh}(h]h ]h"]h$]h&]j+j,j3uh1hj4j5hj hhhj hMubah}(h]j ah ](j9j:eh"]h$]h&]j>j?)j@huh1hhj hMhj hhubjB)}(hhh]jG)}(h#Invoke public key decrypt operationh]h#Invoke public key decrypt operation}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jFh]/var/lib/git/docbuild/linux/Documentation/crypto/api-akcipher:16: ./include/crypto/akcipher.hhMhjhhubah}(h]h ]h"]h$]h&]uh1jAhj hhhj hMubeh}(h]h ](j`functioneh"]h$]h&]jej`jfjjgjjhjijjuh1hhhhjhNhNubjl)}(h**Parameters** ``struct akcipher_request *req`` asymmetric key request **Description** Function invokes the specific public key decrypt operation for a given public key algorithm **Return** zero on success; error code in case of errorh](jG)}(h**Parameters**h]jv)}(hjh]h Parameters}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1juhjubah}(h]h ]h"]h$]h&]uh1jFh]/var/lib/git/docbuild/linux/Documentation/crypto/api-akcipher:16: ./include/crypto/akcipher.hhMhjubj)}(hhh]j)}(h8``struct akcipher_request *req`` asymmetric key request h](j)}(h ``struct akcipher_request *req``h]j)}(hjh]hstruct akcipher_request *req}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jhjubah}(h]h ]h"]h$]h&]uh1jh]/var/lib/git/docbuild/linux/Documentation/crypto/api-akcipher:16: ./include/crypto/akcipher.hhM hjubj)}(hhh]jG)}(hasymmetric key requesth]hasymmetric key request}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jFhjhM hjubah}(h]h ]h"]h$]h&]uh1jhjubeh}(h]h ]h"]h$]h&]uh1jhjhM hjubah}(h]h ]h"]h$]h&]uh1jhjubjG)}(h**Description**h]jv)}(hj;h]h Description}(hj=hhhNhNubah}(h]h ]h"]h$]h&]uh1juhj9ubah}(h]h ]h"]h$]h&]uh1jFh]/var/lib/git/docbuild/linux/Documentation/crypto/api-akcipher:16: ./include/crypto/akcipher.hhM"hjubjG)}(h[Function invokes the specific public key decrypt operation for a given public key algorithmh]h[Function invokes the specific public key decrypt operation for a given public key algorithm}(hjQhhhNhNubah}(h]h ]h"]h$]h&]uh1jFh]/var/lib/git/docbuild/linux/Documentation/crypto/api-akcipher:16: ./include/crypto/akcipher.hhMhjubjG)}(h **Return**h]jv)}(hjbh]hReturn}(hjdhhhNhNubah}(h]h ]h"]h$]h&]uh1juhj`ubah}(h]h ]h"]h$]h&]uh1jFh]/var/lib/git/docbuild/linux/Documentation/crypto/api-akcipher:16: ./include/crypto/akcipher.hhMhjubjG)}(h,zero on success; error code in case of errorh]h,zero on success; error code in case of error}(hjxhhhNhNubah}(h]h ]h"]h$]h&]uh1jFh]/var/lib/git/docbuild/linux/Documentation/crypto/api-akcipher:16: ./include/crypto/akcipher.hhM"hjubeh}(h]h ] kernelindentah"]h$]h&]uh1jkhjhhhNhNubh)}(hhh]h}(h]h ]h"]h$]h&]entries](hՌ(crypto_akcipher_set_pub_key (C function)c.crypto_akcipher_set_pub_keyhNtauh1hhjhhhNhNubh)}(hhh](h)}(hcint crypto_akcipher_set_pub_key (struct crypto_akcipher *tfm, const void *key, unsigned int keylen)h]h)}(hbint crypto_akcipher_set_pub_key(struct crypto_akcipher *tfm, const void *key, unsigned int keylen)h](j)}(hinth]hint}(hjhhhNhNubah}(h]h ]jah"]h$]h&]uh1jhjhhh]/var/lib/git/docbuild/linux/Documentation/crypto/api-akcipher:16: ./include/crypto/akcipher.hhMPubh)}(h h]h }(hjhhhNhNubah}(h]h ]j ah"]h$]h&]uh1hhjhhhjhMPubj)}(hcrypto_akcipher_set_pub_keyh]j)}(hcrypto_akcipher_set_pub_keyh]hcrypto_akcipher_set_pub_key}(hjhhhNhNubah}(h]h ]jah"]h$]h&]uh1jhjubah}(h]h ](j&j'eh"]h$]h&]j+j,uh1j hjhhhjhMPubj)}(hC(struct crypto_akcipher *tfm, const void *key, unsigned int keylen)h](j)}(hstruct crypto_akcipher *tfmh](h)}(hhh]hstruct}(hjhhhNhNubah}(h]h ]hah"]h$]h&]uh1hhjubh)}(h h]h }(hjhhhNhNubah}(h]h ]j ah"]h$]h&]uh1hhjubh)}(hhh]j)}(hcrypto_akcipherh]hcrypto_akcipher}(hjhhhNhNubah}(h]h ]jah"]h$]h&]uh1jhjubah}(h]h ]h"]h$]h&] refdomainj`reftypeju reftargetjmodnameN classnameNjyj|)}j]j)}jujsbc.crypto_akcipher_set_pub_keyasbuh1hhjubh)}(h h]h }(hj"hhhNhNubah}(h]h ]j ah"]h$]h&]uh1hhjubj)}(hjh]h*}(hj0hhhNhNubah}(h]h ]jah"]h$]h&]uh1jhjubj)}(htfmh]htfm}(hj=hhhNhNubah}(h]h ]jah"]h$]h&]uh1jhjubeh}(h]h ]h"]h$]h&]noemphj+j,uh1jhjubj)}(hconst void *keyh](h)}(hjh]hconst}(hjVhhhNhNubah}(h]h ]hah"]h$]h&]uh1hhjRubh)}(h h]h }(hjchhhNhNubah}(h]h ]j ah"]h$]h&]uh1hhjRubj)}(hvoidh]hvoid}(hjqhhhNhNubah}(h]h ]jah"]h$]h&]uh1jhjRubh)}(h h]h }(hjhhhNhNubah}(h]h ]j ah"]h$]h&]uh1hhjRubj)}(hjh]h*}(hjhhhNhNubah}(h]h ]jah"]h$]h&]uh1jhjRubj)}(hkeyh]hkey}(hjhhhNhNubah}(h]h ]jah"]h$]h&]uh1jhjRubeh}(h]h ]h"]h$]h&]noemphj+j,uh1jhjubj)}(hunsigned int keylenh](j)}(hunsignedh]hunsigned}(hjhhhNhNubah}(h]h ]jah"]h$]h&]uh1jhjubh)}(h h]h }(hjhhhNhNubah}(h]h ]j ah"]h$]h&]uh1hhjubj)}(hinth]hint}(hjhhhNhNubah}(h]h ]jah"]h$]h&]uh1jhjubh)}(h h]h }(hjhhhNhNubah}(h]h ]j ah"]h$]h&]uh1hhjubj)}(hkeylenh]hkeylen}(hjhhhNhNubah}(h]h ]jah"]h$]h&]uh1jhjubeh}(h]h ]h"]h$]h&]noemphj+j,uh1jhjubeh}(h]h ]h"]h$]h&]j+j,uh1jhjhhhjhMPubeh}(h]h ]h"]h$]h&]j+j,j3uh1hj4j5hjhhhjhMPubah}(h]jah ](j9j:eh"]h$]h&]j>j?)j@huh1hhjhMPhjhhubjB)}(hhh]jG)}(hInvoke set public key operationh]hInvoke set public key operation}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jFh]/var/lib/git/docbuild/linux/Documentation/crypto/api-akcipher:16: ./include/crypto/akcipher.hhMPhjhhubah}(h]h ]h"]h$]h&]uh1jAhjhhhjhMPubeh}(h]h ](j`functioneh"]h$]h&]jej`jfj-jgj-jhjijjuh1hhhhjhNhNubjl)}(hX**Parameters** ``struct crypto_akcipher *tfm`` tfm handle ``const void *key`` BER encoded public key, algo OID, paramlen, BER encoded parameters ``unsigned int keylen`` length of the key (not including other data) **Description** Function invokes the algorithm specific set key function, which knows how to decode and interpret the encoded key and parameters **Return** zero on success; error code in case of errorh](jG)}(h**Parameters**h]jv)}(hj7h]h Parameters}(hj9hhhNhNubah}(h]h ]h"]h$]h&]uh1juhj5ubah}(h]h ]h"]h$]h&]uh1jFh]/var/lib/git/docbuild/linux/Documentation/crypto/api-akcipher:16: ./include/crypto/akcipher.hhMThj1ubj)}(hhh](j)}(h+``struct crypto_akcipher *tfm`` tfm handle h](j)}(h``struct crypto_akcipher *tfm``h]j)}(hjVh]hstruct crypto_akcipher *tfm}(hjXhhhNhNubah}(h]h ]h"]h$]h&]uh1jhjTubah}(h]h ]h"]h$]h&]uh1jh]/var/lib/git/docbuild/linux/Documentation/crypto/api-akcipher:16: ./include/crypto/akcipher.hhMUhjPubj)}(hhh]jG)}(h tfm handleh]h tfm handle}(hjohhhNhNubah}(h]h ]h"]h$]h&]uh1jFhjkhMUhjlubah}(h]h ]h"]h$]h&]uh1jhjPubeh}(h]h ]h"]h$]h&]uh1jhjkhMUhjMubj)}(hW``const void *key`` BER encoded public key, algo OID, paramlen, BER encoded parameters h](j)}(h``const void *key``h]j)}(hjh]hconst void *key}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jhjubah}(h]h ]h"]h$]h&]uh1jh]/var/lib/git/docbuild/linux/Documentation/crypto/api-akcipher:16: ./include/crypto/akcipher.hhMWhjubj)}(hhh]jG)}(hBBER encoded public key, algo OID, paramlen, BER encoded parametersh]hBBER encoded public key, algo OID, paramlen, BER encoded parameters}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jFh]/var/lib/git/docbuild/linux/Documentation/crypto/api-akcipher:16: ./include/crypto/akcipher.hhMVhjubah}(h]h ]h"]h$]h&]uh1jhjubeh}(h]h ]h"]h$]h&]uh1jhjhMWhjMubj)}(hE``unsigned int keylen`` length of the key (not including other data) h](j)}(h``unsigned int keylen``h]j)}(hjh]hunsigned int keylen}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jhjubah}(h]h ]h"]h$]h&]uh1jh]/var/lib/git/docbuild/linux/Documentation/crypto/api-akcipher:16: ./include/crypto/akcipher.hhMXhjubj)}(hhh]jG)}(h,length of the key (not including other data)h]h,length of the key (not including other data)}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jFhjhMXhjubah}(h]h ]h"]h$]h&]uh1jhjubeh}(h]h ]h"]h$]h&]uh1jhjhMXhjMubeh}(h]h ]h"]h$]h&]uh1jhj1ubjG)}(h**Description**h]jv)}(hjh]h Description}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1juhjubah}(h]h ]h"]h$]h&]uh1jFh]/var/lib/git/docbuild/linux/Documentation/crypto/api-akcipher:16: ./include/crypto/akcipher.hhMZhj1ubjG)}(hFunction invokes the algorithm specific set key function, which knows how to decode and interpret the encoded key and parametersh]hFunction invokes the algorithm specific set key function, which knows how to decode and interpret the encoded key and parameters}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jFh]/var/lib/git/docbuild/linux/Documentation/crypto/api-akcipher:16: ./include/crypto/akcipher.hhMQhj1ubjG)}(h **Return**h]jv)}(hj+h]hReturn}(hj-hhhNhNubah}(h]h ]h"]h$]h&]uh1juhj)ubah}(h]h ]h"]h$]h&]uh1jFh]/var/lib/git/docbuild/linux/Documentation/crypto/api-akcipher:16: ./include/crypto/akcipher.hhMThj1ubjG)}(h,zero on success; error code in case of errorh]h,zero on success; error code in case of error}(hjAhhhNhNubah}(h]h ]h"]h$]h&]uh1jFh]/var/lib/git/docbuild/linux/Documentation/crypto/api-akcipher:16: ./include/crypto/akcipher.hhMZhj1ubeh}(h]h ] kernelindentah"]h$]h&]uh1jkhjhhhNhNubh)}(hhh]h}(h]h ]h"]h$]h&]entries](hՌ)crypto_akcipher_set_priv_key (C function)c.crypto_akcipher_set_priv_keyhNtauh1hhjhhhNhNubh)}(hhh](h)}(hdint crypto_akcipher_set_priv_key (struct crypto_akcipher *tfm, const void *key, unsigned int keylen)h]h)}(hcint crypto_akcipher_set_priv_key(struct crypto_akcipher *tfm, const void *key, unsigned int keylen)h](j)}(hinth]hint}(hjphhhNhNubah}(h]h ]jah"]h$]h&]uh1jhjlhhh]/var/lib/git/docbuild/linux/Documentation/crypto/api-akcipher:16: ./include/crypto/akcipher.hhMfubh)}(h h]h }(hjhhhNhNubah}(h]h ]j ah"]h$]h&]uh1hhjlhhhj~hMfubj)}(hcrypto_akcipher_set_priv_keyh]j)}(hcrypto_akcipher_set_priv_keyh]hcrypto_akcipher_set_priv_key}(hjhhhNhNubah}(h]h ]jah"]h$]h&]uh1jhjubah}(h]h ](j&j'eh"]h$]h&]j+j,uh1j hjlhhhj~hMfubj)}(hC(struct crypto_akcipher *tfm, const void *key, unsigned int keylen)h](j)}(hstruct crypto_akcipher *tfmh](h)}(hhh]hstruct}(hjhhhNhNubah}(h]h ]hah"]h$]h&]uh1hhjubh)}(h h]h }(hjhhhNhNubah}(h]h ]j ah"]h$]h&]uh1hhjubh)}(hhh]j)}(hcrypto_akcipherh]hcrypto_akcipher}(hjhhhNhNubah}(h]h ]jah"]h$]h&]uh1jhjubaߙh}(h]h ]h"]h$]h&] refdomainj`reftypeju reftargetjmodnameN classnameNjyj|)}j]j)}jujsbc.crypto_akcipher_set_priv_keyasbuh1hhjubh)}(h h]h }(hjhhhNhNubah}(h]h ]j ah"]h$]h&]uh1hhjubj)}(hjh]h*}(hjhhhNhNubah}(h]h ]jah"]h$]h&]uh1jhjubj)}(htfmh]htfm}(hjhhhNhNubah}(h]h ]jah"]h$]h&]uh1jhjubeh}(h]h ]h"]h$]h&]noemphj+j,uh1jhjubj)}(hconst void *keyh](h)}(hjh]hconst}(hjhhhNhNubah}(h]h ]hah"]h$]h&]uh1hhjubh)}(h h]h }(hj,hhhNhNubah}(h]h ]j ah"]h$]h&]uh1hhjubj)}(hvoidh]hvoid}(hj:hhhNhNubah}(h]h ]jah"]h$]h&]uh1jhjubh)}(h h]h }(hjHhhhNhNubah}(h]h ]j ah"]h$]h&]uh1hhjubj)}(hjh]h*}(hjVhhhNhNubah}(h]h ]jah"]h$]h&]uh1jhjubj)}(hkeyh]hkey}(hjchhhNhNubah}(h]h ]jah"]h$]h&]uh1jhjubeh}(h]h ]h"]h$]h&]noemphj+j,uh1jhjubj)}(hunsigned int keylenh](j)}(hunsignedh]hunsigned}(hj|hhhNhNubah}(h]h ]jah"]h$]h&]uh1jhjxubh)}(h h]h }(hjhhhNhNubah}(h]h ]j ah"]h$]h&]uh1hhjxubj)}(hinth]hint}(hjhhhNhNubah}(h]h ]jah"]h$]h&]uh1jhjxubh)}(h h]h }(hjhhhNhNubah}(h]h ]j ah"]h$]h&]uh1hhjxubj)}(hkeylenh]hkeylen}(hjhhhNhNubah}(h]h ]jah"]h$]h&]uh1jhjxubeh}(h]h ]h"]h$]h&]noemphj+j,uh1jhjubeh}(h]h ]h"]h$]h&]j+j,uh1jhjlhhhj~hMfubeh}(h]h ]h"]h$]h&]j+j,j3uh1hj4j5hjhhhhj~hMfubah}(h]jcah ](j9j:eh"]h$]h&]j>j?)j@huh1hhj~hMfhjehhubjB)}(hhh]jG)}(h Invoke set private key operationh]h Invoke set private key operation}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jFh]/var/lib/git/docbuild/linux/Documentation/crypto/api-akcipher:16: ./include/crypto/akcipher.hhMfhjhhubah}(h]h ]h"]h$]h&]uh1jAhjehhhj~hMfubeh}(h]h ](j`functioneh"]h$]h&]jej`jfjjgjjhjijjuh1hhhhjhNhNubjl)}(hX**Parameters** ``struct crypto_akcipher *tfm`` tfm handle ``const void *key`` BER encoded private key, algo OID, paramlen, BER encoded parameters ``unsigned int keylen`` length of the key (not including other data) **Description** Function invokes the algorithm specific set key function, which knows how to decode and interpret the encoded key and parameters **Return** zero on success; error code in case of errorh](jG)}(h**Parameters**h]jv)}(hjh]h Parameters}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1juhjubah}(h]h ]h"]h$]h&]uh1jFh]/var/lib/git/docbuild/linux/Documentation/crypto/api-akcipher:16: ./include/crypto/akcipher.hhMjhjubj)}(hhh](j)}(h+``struct crypto_akcipher *tfm`` tfm handle h](j)}(h``struct crypto_akcipher *tfm``h]j)}(hjh]hstruct crypto_akcipher *tfm}(hj!hhhNhNubah}(h]h ]h"]h$]h&]uh1jhjubah}(h]h ]h"]h$]h&]uh1jh]/var/lib/git/docbuild/linux/Documentation/crypto/api-akcipher:16: ./include/crypto/akcipher.hhMkhjubj)}(hhh]jG)}(h tfm handleh]h tfm handle}(hj8hhhNhNubah}(h]h ]h"]h$]h&]uh1jFhj4hMkhj5ubah}(h]h ]h"]h$]h&]uh1jhjubeh}(h]h ]h"]h$]h&]uh1jhj4hMkhjubj)}(hX``const void *key`` BER encoded private key, algo OID, paramlen, BER encoded parameters h](j)}(h``const void *key``h]j)}(hjXh]hconst void *key}(hjZhhhNhNubah}(h]h ]h"]h$]h&]uh1jhjVubah}(h]h ]h"]h$]h&]uh1jh]/var/lib/git/docbuild/linux/Documentation/crypto/api-akcipher:16: ./include/crypto/akcipher.hhMmhjRubj)}(hhh]jG)}(hCBER encoded private key, algo OID, paramlen, BER encoded parametersh]hCBER encoded private key, algo OID, paramlen, BER encoded parameters}(hjqhhhNhNubah}(h]h ]h"]h$]h&]uh1jFh]/var/lib/git/docbuild/linux/Documentation/crypto/api-akcipher:16: ./include/crypto/akcipher.hhMlhjnubah}(h]h ]h"]h$]h&]uh1jhjRubeh}(h]h ]h"]h$]h&]uh1jhjmhMmhjubj)}(hE``unsigned int keylen`` length of the key (not including other data) h](j)}(h``unsigned int keylen``h]j)}(hjh]hunsigned int keylen}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jhjubah}(h]h ]h"]h$]h&]uh1jh]/var/lib/git/docbuild/linux/Documentation/crypto/api-akcipher:16: ./include/crypto/akcipher.hhMnhjubj)}(hhh]jG)}(h,length of the key (not including other data)h]h,length of the key (not including other data)}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jFhjhMnhjubah}(h]h ]h"]h$]h&]uh1jhjubeh}(h]h ]h"]h$]h&]uh1jhjhMnhjubeh}(h]h ]h"]h$]h&]uh1jhjubjG)}(h**Description**h]jv)}(hjh]h Description}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1juhjubah}(h]h ]h"]h$]h&]uh1jFh]/var/lib/git/docbuild/linux/Documentation/crypto/api-akcipher:16: ./include/crypto/akcipher.hhMphjubjG)}(hFunction invokes the algorithm specific set key function, which knows how to decode and interpret the encoded key and parametersh]hFunction invokes the algorithm specific set key function, which knows how to decode and interpret the encoded key and parameters}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jFh]/var/lib/git/docbuild/linux/Documentation/crypto/api-akcipher:16: ./include/crypto/akcipher.hhMghjubjG)}(h **Return**h]jv)}(hjh]hReturn}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1juhjubah}(h]h ]h"]h$]h&]uh1jFh]/var/lib/git/docbuild/linux/Documentation/crypto/api-akcipher:16: ./include/crypto/akcipher.hhMjhjubjG)}(h,zero on success; error code in case of errorh]h,zero on success; error code in case of error}(hj hhhNhNubah}(h]h ]h"]h$]h&]uh1jFh]/var/lib/git/docbuild/linux/Documentation/crypto/api-akcipher:16: ./include/crypto/akcipher.hhMphjubeh}(h]h ] kernelindentah"]h$]h&]uh1jkhjhhhNhNubeh}(h]asymmetric-cipher-apiah ]h"]asymmetric cipher apiah$]h&]uh1hhhhhhhhK ubh)}(hhh](h)}(h Asymmetric Cipher Request Handleh]h Asymmetric Cipher Request Handle}(hj+hhhNhNubah}(h]h ]h"]h$]h&]uh1hhj(hhhhhKubh)}(hhh]h}(h]h ]h"]h$]h&]entries](hՌ#akcipher_request_alloc (C function)c.akcipher_request_allochNtauh1hhj(hhhNhNubh)}(hhh](h)}(hYstruct akcipher_request * akcipher_request_alloc (struct crypto_akcipher *tfm, gfp_t gfp)h]h)}(hWstruct akcipher_request *akcipher_request_alloc(struct crypto_akcipher *tfm, gfp_t gfp)h](h)}(hhh]hstruct}(hjRhhhNhNubah}(h]h ]hah"]h$]h&]uh1hhjNhhh]/var/lib/git/docbuild/linux/Documentation/crypto/api-akcipher:22: ./include/crypto/akcipher.hhKubh)}(h h]h }(hj`hhhNhNubah}(h]h ]j ah"]h$]h&]uh1hhjNhhhj_hKubh)}(hhh]j)}(hakcipher_requesth]hakcipher_request}(hjqhhhNhNubah}(h]h ]jah"]h$]h&]uh1jhjnubah}(h]h ]h"]h$]h&] refdomainj`reftypeju reftargetjsmodnameN classnameNjyj|)}j]j)}juakcipher_request_allocsbc.akcipher_request_allocasbuh1hhjNhhhj_hKubh)}(h h]h }(hjhhhNhNubah}(h]h ]j ah"]h$]h&]uh1hhjNhhhj_hKubj)}(hjh]h*}(hjhhhNhNubah}(h]h ]jah"]h$]h&]uh1jhjNhhhj_hKubj)}(hakcipher_request_alloch]j)}(hjh]hakcipher_request_alloc}(hjhhhNhNubah}(h]h ]jah"]h$]h&]uh1jhjubah}(h]h ](j&j'eh"]h$]h&]j+j,uh1j hjNhhhj_hKubj)}(h((struct crypto_akcipher *tfm, gfp_t gfp)h](j)}(hstruct crypto_akcipher *tfmh](h)}(hhh]hstruct}(hjhhhNhNubah}(h]h ]hah"]h$]h&]uh1hhjubh)}(h h]h }(hjhhhNhNubah}(h]h ]j ah"]h$]h&]uh1hhjubh)}(hhh]j)}(hcrypto_akcipherh]hcrypto_akcipher}(hjhhhNhNubah}(h]h ]jah"]h$]h&]uh1jhjubah}(h]h ]h"]h$]h&] refdomainj`reftypeju reftargetjmodnameN classnameNjyj|)}j]jc.akcipher_request_allocasbuh1hhjubh)}(h h]h }(hjhhhNhNubah}(h]h ]j ah"]h$]h&]uh1hhjubj)}(hjh]h*}(hjhhhNhNubah}(h]h ]jah"]h$]h&]uh1jhjubj)}(htfmh]htfm}(hj#hhhNhNubah}(h]h ]jah"]h$]h&]uh1jhjubeh}(h]h ]h"]h$]h&]noemphj+j,uh1jhjubj)}(h gfp_t gfph](h)}(hhh]j)}(hgfp_th]hgfp_t}(hj?hhhNhNubah}(h]h ]jah"]h$]h&]uh1jhj<ubah}(h]h ]h"]h$]h&] refdomainj`reftypeju reftargetjAmodnameN classnameNjyj|)}j]jc.akcipher_request_allocasbuh1hhj8ubh)}(h h]h }(hj]hhhNhNubah}(h]h ]j ah"]h$]h&]uh1hhj8ubj)}(hgfph]hgfp}(hjkhhhNhNubah}(h]h ]jah"]h$]h&]uh1jhj8ubeh}(h]h ]h"]h$]h&]noemphj+j,uh1jhjubeh}(h]h ]h"]h$]h&]j+j,uh1jhjNhhhj_hKubeh}(h]h ]h"]h$]h&]j+j,j3uh1hj4j5hjJhhhj_hKubah}(h]jEah ](j9j:eh"]h$]h&]j>j?)j@huh1hhj_hKhjGhhubjB)}(hhh]jG)}(hallocates public key requesth]hallocates public key request}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jFh]/var/lib/git/docbuild/linux/Documentation/crypto/api-akcipher:22: ./include/crypto/akcipher.hhKhjhhubah}(h]h ]h"]h$]h&]uh1jAhjGhhhj_hKubeh}(h]h ](j`functioneh"]h$]h&]jej`jfjjgjjhjijjuh1hhhhj(hNhNubjl)}(h**Parameters** ``struct crypto_akcipher *tfm`` AKCIPHER tfm handle allocated with crypto_alloc_akcipher() ``gfp_t gfp`` allocation flags **Return** allocated handle in case of success or NULL in case of an error.h](jG)}(h**Parameters**h]jv)}(hjh]h Parameters}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1juhjubah}(h]h ]h"]h$]h&]uh1jFh]/var/lib/git/docbuild/linux/Documentation/crypto/api-akcipher:22: ./include/crypto/akcipher.hhKhjubj)}(hhh](j)}(h[``struct crypto_akcipher *tfm`` AKCIPHER tfm handle allocated with crypto_alloc_akcipher() h](j)}(h``struct crypto_akcipher *tfm``h]j)}(hjh]hstruct crypto_akcipher *tfm}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jhjubah}(h]h ]h"]h$]h&]uh1jh]/var/lib/git/docbuild/linux/Documentation/crypto/api-akcipher:22: ./include/crypto/akcipher.hhKhjubj)}(hhh]jG)}(h:AKCIPHER tfm handle allocated with crypto_alloc_akcipher()h]h:AKCIPHER tfm handle allocated with crypto_alloc_akcipher()}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jFhjhKhjubah}(h]h ]h"]h$]h&]uh1jhjubeh}(h]h ]h"]h$]h&]uh1jhjhKhjubj)}(h``gfp_t gfp`` allocation flags h](j)}(h ``gfp_t gfp``h]j)}(hjh]h gfp_t gfp}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jhj ubah}(h]h ]h"]h$]h&]uh1jh]/var/lib/git/docbuild/linux/Documentation/crypto/api-akcipher:22: ./include/crypto/akcipher.hhKhj ubj)}(hhh]jG)}(hallocation flagsh]hallocation flags}(hj(hhhNhNubah}(h]h ]h"]h$]h&]uh1jFhj$hKhj%ubah}(h]h ]h"]h$]h&]uh1jhj ubeh}(h]h ]h"]h$]h&]uh1jhj$hKhjubeh}(h]h ]h"]h$]h&]uh1jhjubjG)}(h **Return**h]jv)}(hjJh]hReturn}(hjLhhhNhNubah}(h]h ]h"]h$]h&]uh1juhjHubah}(h]h ]h"]h$]h&]uh1jFh]/var/lib/git/docbuild/linux/Documentation/crypto/api-akcipher:22: ./include/crypto/akcipher.hhKhjubjG)}(h@allocated handle in case of success or NULL in case of an error.h]h@allocated handle in case of success or NULL in case of an error.}(hj`hhhNhNubah}(h]h ]h"]h$]h&]uh1jFh]/var/lib/git/docbuild/linux/Documentation/crypto/api-akcipher:22: ./include/crypto/akcipher.hhKhjubeh}(h]h ] kernelindentah"]h$]h&]uh1jkhj(hhhNhNubh)}(hhh]h}(h]h ]h"]h$]h&]entries](hՌ"akcipher_request_free (C function)c.akcipher_request_freehNtauh1hhj(hhhNhNubh)}(hhh](h)}(h9void akcipher_request_free (struct akcipher_request *req)h]h)}(h8void akcipher_request_free(struct akcipher_request *req)h](j)}(hvoidh]hvoid}(hjhhhNhNubah}(h]h ]jah"]h$]h&]uh1jhjhhh]/var/lib/git/docbuild/linux/Documentation/crypto/api-akcipher:22: ./include/crypto/akcipher.hhKubh)}(h h]h }(hjhhhNhNubah}(h]h ]j ah"]h$]h&]uh1hhjhhhjhKubj)}(hakcipher_request_freeh]j)}(hakcipher_request_freeh]hakcipher_request_free}(hjhhhNhNubah}(h]h ]jah"]h$]h&]uh1jhjubah}(h]h ](j&j'eh"]h$]h&]j+j,uh1j hjhhhjhKubj)}(h(struct akcipher_request *req)h]j)}(hstruct akcipher_request *reqh](h)}(hhh]hstruct}(hjhhhNhNubah}(h]h ]hah"]h$]h&]uh1hhjubh)}(h h]h }(hjhhhNhNubah}(h]h ]j ah"]h$]h&]uh1hhjubh)}(hhh]j)}(hakcipher_requesth]hakcipher_request}(hjhhhNhNubah}(h]h ]jah"]h$]h&]uh1jhjubah}(h]h ]h"]h$]h&] refdomainj`reftypeju reftargetjmodnameN classnameNjyj|)}j]j)}jujsbc.akcipher_request_freeasbuh1hhjubh)}(h h]h }(hj hhhNhNubah}(h]h ]j ah"]h$]h&]uh1hhjubj)}(hjh]h*}(hjhhhNhNubah}(h]h ]jah"]h$]h&]uh1jhjubj)}(hreqh]hreq}(hj%hhhNhNubah}(h]h ]jah"]h$]h&]uh1jhjubeh}(h]h ]h"]h$]h&]noemphj+j,uh1jhjubah}(h]h ]h"]h$]h&]j+j,uh1jhjhhhjhKubeh}(h]h ]h"]h$]h&]j+j,j3uh1hj4j5hjhhhjhKubah}(h]jah ](j9j:eh"]h$]h&]j>j?)j@huh1hhjhKhjhhubjB)}(hhh]jG)}(h#zeroize and free public key requesth]h#zeroize and free public key request}(hjOhhhNhNubah}(h]h ]h"]h$]h&]uh1jFh]/var/lib/git/docbuild/linux/Documentation/crypto/api-akcipher:22: ./include/crypto/akcipher.hhKhjLhhubah}(h]h ]h"]h$]h&]uh1jAhjhhhjhKubeh}(h]h ](j`functioneh"]h$]h&]jej`jfjgjgjgjhjijjuh1hhhhj(hNhNubjl)}(hB**Parameters** ``struct akcipher_request *req`` request to freeh](jG)}(h**Parameters**h]jv)}(hjqh]h Parameters}(hjshhhNhNubah}(h]h ]h"]h$]h&]uh1juhjoubah}(h]h ]h"]h$]h&]uh1jFh]/var/lib/git/docbuild/linux/Documentation/crypto/api-akcipher:22: ./include/crypto/akcipher.hhKhjkubj)}(hhh]j)}(h0``struct akcipher_request *req`` request to freeh](j)}(h ``struct akcipher_request *req``h]j)}(hjh]hstruct akcipher_request *req}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jhjubah}(h]h ]h"]h$]h&]uh1jh]/var/lib/git/docbuild/linux/Documentation/crypto/api-akcipher:22: ./include/crypto/akcipher.hhKhjubj)}(hhh]jG)}(hrequest to freeh]hrequest to free}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jFh]/var/lib/git/docbuild/linux/Documentation/crypto/api-akcipher:22: ./include/crypto/akcipher.hhKhjubah}(h]h ]h"]h$]h&]uh1jhjubeh}(h]h ]h"]h$]h&]uh1jhjhKhjubah}(h]h ]h"]h$]h&]uh1jhjkubeh}(h]h ] kernelindentah"]h$]h&]uh1jkhj(hhhNhNubh)}(hhh]h}(h]h ]h"]h$]h&]entries](hՌ*akcipher_request_set_callback (C function)c.akcipher_request_set_callbackhNtauh1hhj(hhhNhNubh)}(hhh](h)}(hqvoid akcipher_request_set_callback (struct akcipher_request *req, u32 flgs, crypto_completion_t cmpl, void *data)h]h)}(hpvoid akcipher_request_set_callback(struct akcipher_request *req, u32 flgs, crypto_completion_t cmpl, void *data)h](j)}(hvoidh]hvoid}(hjhhhNhNubah}(h]h ]jah"]h$]h&]uh1jhjhhh]/var/lib/git/docbuild/linux/Documentation/crypto/api-akcipher:22: ./include/crypto/akcipher.hhKubh)}(h h]h }(hjhhhNhNubah}(h]h ]j ah"]h$]h&]uh1hhjhhhjhKubj)}(hakcipher_request_set_callbackh]j)}(hakcipher_request_set_callbackh]hakcipher_request_set_callback}(hj hhhNhNubah}(h]h ]jah"]h$]h&]uh1jhjubah}(h]h ](j&j'eh"]h$]h&]j+j,uh1j hjhhhjhKubj)}(hN(struct akcipher_request *req, u32 flgs, crypto_completion_t cmpl, void *data)h](j)}(hstruct akcipher_request *reqh](h)}(hhh]hstruct}(hj'hhhNhNubah}(h]h ]hah"]h$]h&]uh1hhj#ubh)}(h h]h }(hj4hhhNhNubah}(h]h ]j ah"]h$]h&]uh1hhj#ubh)}(hhh]j)}(hakcipher_requesth]hakcipher_request}(hjEhhhNhNubah}(h]h ]jah"]h$]h&]uh1jhjBubah}(h]h ]h"]h$]h&] refdomainj`reftypeju reftargetjGmodnameN classnameNjyj|)}j]j)}juj sbc.akcipher_request_set_callbackasbuh1hhj#ubh)}(h h]h }(hjehhhNhNubah}(h]h ]j ah"]h$]h&]uh1hhj#ubj)}(hjh]h*}(hjshhhNhNubah}(h]h ]jah"]h$]h&]uh1jhj#ubj)}(hreqh]hreq}(hjhhhNhNubah}(h]h ]jah"]h$]h&]uh1jhj#ubeh}(h]h ]h"]h$]h&]noemphj+j,uh1jhjubj)}(hu32 flgsh](h)}(hhh]j)}(hu32h]hu32}(hjhhhNhNubah}(h]h ]jah"]h$]h&]uh1jhjubah}(h]h ]h"]h$]h&] refdomainj`reftypeju reftargetjmodnameN classnameNjyj|)}j]jac.akcipher_request_set_callbackasbuh1hhjubh)}(h h]h }(hjhhhNhNubah}(h]h ]j ah"]h$]h&]uh1hhjubj)}(hflgsh]hflgs}(hjhhhNhNubah}(h]h ]jah"]h$]h&]uh1jhjubeh}(h]h ]h"]h$]h&]noemphj+j,uh1jhjubj)}(hcrypto_completion_t cmplh](h)}(hhh]j)}(hcrypto_completion_th]hcrypto_completion_t}(hjhhhNhNubah}(h]h ]jah"]h$]h&]uh1jhjubah}(h]h ]h"]h$]h&] refdomainj`reftypeju reftargetjmodnameN classnameNjyj|)}j]jac.akcipher_request_set_callbackasbuh1hhjubh)}(h h]h }(hjhhhNhNubah}(h]h ]j ah"]h$]h&]uh1hhjubj)}(hcmplh]hcmpl}(hjhhhNhNubah}(h]h ]jah"]h$]h&]uh1jhjubeh}(h]h ]h"]h$]h&]noemphj+j,uh1jhjubj)}(h void *datah](j)}(hvoidh]hvoid}(hj)hhhNhNubah}(h]h ]jah"]h$]h&]uh1jhj%ubh)}(h h]h }(hj7hhhNhNubah}(h]h ]j ah"]h$]h&]uh1hhj%ubj)}(hjh]h*}(hjEhhhNhNubah}(h]h ]jah"]h$]h&]uh1jhj%ubj)}(hdatah]hdata}(hjRhhhNhNubah}(h]h ]jah"]h$]h&]uh1jhj%ubeh}(h]h ]h"]h$]h&]noemphj+j,uh1jhjubeh}(h]h ]h"]h$]h&]j+j,uh1jhjhhhjhKubeh}(h]h ]h"]h$]h&]j+j,j3uh1hj4j5hjhhhjhKubah}(h]jah ](j9j:eh"]h$]h&]j>j?)j@huh1hhjhKhjhhubjB)}(hhh]jG)}(hSets an asynchronous callback.h]hSets an asynchronous callback.}(hj|hhhNhNubah}(h]h ]h"]h$]h&]uh1jFh]/var/lib/git/docbuild/linux/Documentation/crypto/api-akcipher:22: ./include/crypto/akcipher.hhKhjyhhubah}(h]h ]h"]h$]h&]uh1jAhjhhhjhKubeh}(h]h ](j`functioneh"]h$]h&]jej`jfjjgjjhjijjuh1hhhhj(hNhNubjl)}(hXw**Parameters** ``struct akcipher_request *req`` request that the callback will be set for ``u32 flgs`` specify for instance if the operation may backlog ``crypto_completion_t cmpl`` callback which will be called ``void *data`` private data used by the caller **Description** Callback will be called when an asynchronous operation on a given request is finished.h](jG)}(h**Parameters**h]jv)}(hjh]h Parameters}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1juhjubah}(h]h ]h"]h$]h&]uh1jFh]/var/lib/git/docbuild/linux/Documentation/crypto/api-akcipher:22: ./include/crypto/akcipher.hhKhjubj)}(hhh](j)}(hK``struct akcipher_request *req`` request that the callback will be set for h](j)}(h ``struct akcipher_request *req``h]j)}(hjh]hstruct akcipher_request *req}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jhjubah}(h]h ]h"]h$]h&]uh1jh]/var/lib/git/docbuild/linux/Documentation/crypto/api-akcipher:22: ./include/crypto/akcipher.hhKhjubj)}(hhh]jG)}(h)request that the callback will be set forh]h)request that the callback will be set for}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jFhjhKhjubah}(h]h ]h"]h$]h&]uh1jhjubeh}(h]h ]h"]h$]h&]uh1jhjhKhjubj)}(h?``u32 flgs`` specify for instance if the operation may backlog h](j)}(h ``u32 flgs``h]j)}(hjh]hu32 flgs}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jhjubah}(h]h ]h"]h$]h&]uh1jh]/var/lib/git/docbuild/linux/Documentation/crypto/api-akcipher:22: ./include/crypto/akcipher.hhKhjubj)}(hhh]jG)}(h1specify for instance if the operation may backlogh]h1specify for instance if the operation may backlog}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jFhj hKhj ubah}(h]h ]h"]h$]h&]uh1jhjubeh}(h]h ]h"]h$]h&]uh1jhj hKhjubj)}(h;``crypto_completion_t cmpl`` callback which will be called h](j)}(h``crypto_completion_t cmpl``h]j)}(hj/h]hcrypto_completion_t cmpl}(hj1hhhNhNubah}(h]h ]h"]h$]h&]uh1jhj-ubah}(h]h ]h"]h$]h&]uh1jh]/var/lib/git/docbuild/linux/Documentation/crypto/api-akcipher:22: ./include/crypto/akcipher.hhKhj)ubj)}(hhh]jG)}(hcallback which will be calledh]hcallback which will be called}(hjHhhhNhNubah}(h]h ]h"]h$]h&]uh1jFhjDhKhjEubah}(h]h ]h"]h$]h&]uh1jhj)ubeh}(h]h ]h"]h$]h&]uh1jhjDhKhjubj)}(h/``void *data`` private data used by the caller h](j)}(h``void *data``h]j)}(hjhh]h void *data}(hjjhhhNhNubah}(h]h ]h"]h$]h&]uh1jhjfubah}(h]h ]h"]h$]h&]uh1jh]/var/lib/git/docbuild/linux/Documentation/crypto/api-akcipher:22: ./include/crypto/akcipher.hhKhjbubj)}(hhh]jG)}(hprivate data used by the callerh]hprivate data used by the caller}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jFhj}hKhj~ubah}(h]h ]h"]h$]h&]uh1jhjbubeh}(h]h ]h"]h$]h&]uh1jhj}hKhjubeh}(h]h ]h"]h$]h&]uh1jhjubjG)}(h**Description**h]jv)}(hjh]h Description}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1juhjubah}(h]h ]h"]h$]h&]uh1jFh]/var/lib/git/docbuild/linux/Documentation/crypto/api-akcipher:22: ./include/crypto/akcipher.hhKhjubjG)}(hVCallback will be called when an asynchronous operation on a given request is finished.h]hVCallback will be called when an asynchronous operation on a given request is finished.}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jFh]/var/lib/git/docbuild/linux/Documentation/crypto/api-akcipher:22: ./include/crypto/akcipher.hhKhjubeh}(h]h ] kernelindentah"]h$]h&]uh1jkhj(hhhNhNubh)}(hhh]h}(h]h ]h"]h$]h&]entries](hՌ'akcipher_request_set_crypt (C function)c.akcipher_request_set_crypthNtauh1hhj(hhhNhNubh)}(hhh](h)}(hvoid akcipher_request_set_crypt (struct akcipher_request *req, struct scatterlist *src, struct scatterlist *dst, unsigned int src_len, unsigned int dst_len)h]h)}(hvoid akcipher_request_set_crypt(struct akcipher_request *req, struct scatterlist *src, struct scatterlist *dst, unsigned int src_len, unsigned int dst_len)h](j)}(hvoidh]hvoid}(hjhhhNhNubah}(h]h ]jah"]h$]h&]uh1jhjhhh]/var/lib/git/docbuild/linux/Documentation/crypto/api-akcipher:22: ./include/crypto/akcipher.hhKubh)}(h h]h }(hjhhhNhNubah}(h]h ]j ah"]h$]h&]uh1hhjhhhjhKubj)}(hakcipher_request_set_crypth]j)}(hakcipher_request_set_crypth]hakcipher_request_set_crypt}(hj hhhNhNubah}(h]h ]jah"]h$]h&]uh1jhjubah}(h]h ](j&j'eh"]h$]h&]j+j,uh1j hjhhhjhKubj)}(h|(struct akcipher_request *req, struct scatterlist *src, struct scatterlist *dst, unsigned int src_len, unsigned int dst_len)h](j)}(hstruct akcipher_request *reqh](h)}(hhh]hstruct}(hj%hhhNhNubah}(h]h ]hah"]h$]h&]uh1hhj!ubh)}(h h]h }(hj2hhhNhNubah}(h]h ]j ah"]h$]h&]uh1hhj!ubh)}(hhh]j)}(hakcipher_requesth]hakcipher_request}(hjChhhNhNubah}(h]h ]jah"]h$]h&]uh1jhj@ubah}(h]h ]h"]h$]h&] refdomainj`reftypeju reftargetjEmodnameN classnameNjyj|)}j]j)}juj sbc.akcipher_request_set_cryptasbuh1hhj!ubh)}(h h]h }(hjchhhNhNubah}(h]h ]j ah"]h$]h&]uh1hhj!ubj)}(hjh]h*}(hjqhhhNhNubah}(h]h ]jah"]h$]h&]uh1jhj!ubj)}(hreqh]hreq}(hj~hhhNhNubah}(h]h ]jah"]h$]h&]uh1jhj!ubeh}(h]h ]h"]h$]h&]noemphj+j,uh1jhjubj)}(hstruct scatterlist *srch](h)}(hhh]hstruct}(hjhhhNhNubah}(h]h ]hah"]h$]h&]uh1hhjubh)}(h h]h }(hjhhhNhNubah}(h]h ]j ah"]h$]h&]uh1hhjubh)}(hhh]j)}(h scatterlisth]h scatterlist}(hjhhhNhNubah}(h]h ]jah"]h$]h&]uh1jhjubah}(h]h ]h"]h$]h&] refdomainj`reftypeju reftargetjmodnameN classnameNjyj|)}j]j_c.akcipher_request_set_cryptasbuh1hhjubh)}(h h]h }(hjhhhNhNubah}(h]h ]j ah"]h$]h&]uh1hhjubj)}(hjh]h*}(hjhhhNhNubah}(h]h ]jah"]h$]h&]uh1jhjubj)}(hsrch]hsrc}(hjhhhNhNubah}(h]h ]jah"]h$]h&]uh1jhjubeh}(h]h ]h"]h$]h&]noemphj+j,uh1jhjubj)}(hstruct scatterlist *dsth](h)}(hhh]hstruct}(hjhhhNhNubah}(h]h ]hah"]h$]h&]uh1hhjubh)}(h h]h }(hjhhhNhNubah}(h]h ]j ah"]h$]h&]uh1hhjubh)}(hhh]j)}(h scatterlisth]h scatterlist}(hj%hhhNhNubah}(h]h ]jah"]h$]h&]uh1jhj"ubah}(h]h ]h"]h$]h&] refdomainj`reftypeju reftargetj'modnameN classnameNjyj|)}j]j_c.akcipher_request_set_cryptasbuh1hhjubh)}(h h]h }(hjChhhNhNubah}(h]h ]j ah"]h$]h&]uh1hhjubj)}(hjh]h*}(hjQhhhNhNubah}(h]h ]jah"]h$]h&]uh1jhjubj)}(hdsth]hdst}(hj^hhhNhNubah}(h]h ]jah"]h$]h&]uh1jhjubeh}(h]h ]h"]h$]h&]noemphj+j,uh1jhjubj)}(hunsigned int src_lenh](j)}(hunsignedh]hunsigned}(hjwhhhNhNubah}(h]h ]jah"]h$]h&]uh1jhjsubh)}(h h]h }(hjhhhNhNubah}(h]h ]j ah"]h$]h&]uh1hhjsubj)}(hinth]hint}(hjhhhNhNubah}(h]h ]jah"]h$]h&]uh1jhjsubh)}(h h]h }(hjhhhNhNubah}(h]h ]j ah"]h$]h&]uh1hhjsubj)}(hsrc_lenh]hsrc_len}(hjhhhNhNubah}(h]h ]jah"]h$]h&]uh1jhjsubeh}(h]h ]h"]h$]h&]noemphj+j,uh1jhjubj)}(hunsigned int dst_lenh](j)}(hunsignedh]hunsigned}(hjhhhNhNubah}(h]h ]jah"]h$]h&]uh1jhjubh)}(h h]h }(hjhhhNhNubah}(h]h ]j ah"]h$]h&]uh1hhjubj)}(hinth]hint}(hjhhhNhNubah}(h]h ]jah"]h$]h&]uh1jhjubh)}(h h]h }(hjhhhNhNubah}(h]h ]j ah"]h$]h&]uh1hhjubj)}(hdst_lenh]hdst_len}(hjhhhNhNubah}(h]h ]jah"]h$]h&]uh1jhjubeh}(h]h ]h"]h$]h&]noemphj+j,uh1jhjubeh}(h]h ]h"]h$]h&]j+j,uh1jhjhhhjhKubeh}(h]h ]h"]h$]h&]j+j,j3uh1hj4j5hjhhhjhKubah}(h]jah ](j9j:eh"]h$]h&]j>j?)j@huh1hhjhKhjhhubjB)}(hhh]jG)}(hSets request parametersh]hSets request parameters}(hj*hhhNhNubah}(h]h ]h"]h$]h&]uh1jFh]/var/lib/git/docbuild/linux/Documentation/crypto/api-akcipher:22: ./include/crypto/akcipher.hhKhj'hhubah}(h]h ]h"]h$]h&]uh1jAhjhhhjhKubeh}(h]h ](j`functioneh"]h$]h&]jej`jfjBjgjBjhjijjuh1hhhhj(hNhNubjl)}(hX**Parameters** ``struct akcipher_request *req`` public key request ``struct scatterlist *src`` ptr to input scatter list ``struct scatterlist *dst`` ptr to output scatter list ``unsigned int src_len`` size of the src input scatter list to be processed ``unsigned int dst_len`` size of the dst output scatter list **Description** Sets parameters required by crypto operationh](jG)}(h**Parameters**h]jv)}(hjLh]h Parameters}(hjNhhhNhNubah}(h]h ]h"]h$]h&]uh1juhjJubah}(h]h ]h"]h$]h&]uh1jFh]/var/lib/git/docbuild/linux/Documentation/crypto/api-akcipher:22: ./include/crypto/akcipher.hhKhjFubj)}(hhh](j)}(h4``struct akcipher_request *req`` public key request h](j)}(h ``struct akcipher_request *req``h]j)}(hjkh]hstruct akcipher_request *req}(hjmhhhNhNubah}(h]h ]h"]h$]h&]uh1jhjiubah}(h]h ]h"]h$]h&]uh1jh]/var/lib/git/docbuild/linux/Documentation/crypto/api-akcipher:22: ./include/crypto/akcipher.hhKhjeubj)}(hhh]jG)}(hpublic key requesth]hpublic key request}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jFhjhKhjubah}(h]h ]h"]h$]h&]uh1jhjeubeh}(h]h ]h"]h$]h&]uh1jhjhKhjbubj)}(h6``struct scatterlist *src`` ptr to input scatter list h](j)}(h``struct scatterlist *src``h]j)}(hjh]hstruct scatterlist *src}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jhjubah}(h]h ]h"]h$]h&]uh1jh]/var/lib/git/docbuild/linux/Documentation/crypto/api-akcipher:22: ./include/crypto/akcipher.hhKhjubj)}(hhh]jG)}(hptr to input scatter listh]hptr to input scatter list}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jFhjhKhjubah}(h]h ]h"]h$]h&]uh1jhjubeh}(h]h ]h"]h$]h&]uh1jhjhKhjbubj)}(h7``struct scatterlist *dst`` ptr to output scatter list h](j)}(h``struct scatterlist *dst``h]j)}(hjh]hstruct scatterlist *dst}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jhjubah}(h]h ]h"]h$]h&]uh1jh]/var/lib/git/docbuild/linux/Documentation/crypto/api-akcipher:22: ./include/crypto/akcipher.hhKhjubj)}(hhh]jG)}(hptr to output scatter listh]hptr to output scatter list}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jFhjhKhjubah}(h]h ]h"]h$]h&]uh1jhjubeh}(h]h ]h"]h$]h&]uh1jhjhKhjbubj)}(hL``unsigned int src_len`` size of the src input scatter list to be processed h](j)}(h``unsigned int src_len``h]j)}(hjh]hunsigned int src_len}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jhjubah}(h]h ]h"]h$]h&]uh1jh]/var/lib/git/docbuild/linux/Documentation/crypto/api-akcipher:22: ./include/crypto/akcipher.hhKhjubj)}(hhh]jG)}(h2size of the src input scatter list to be processedh]h2size of the src input scatter list to be processed}(hj/hhhNhNubah}(h]h ]h"]h$]h&]uh1jFhj+hKhj,ubah}(h]h ]h"]h$]h&]uh1jhjubeh}(h]h ]h"]h$]h&]uh1jhj+hKhjbubj)}(h=``unsigned int dst_len`` size of the dst output scatter list h](j)}(h``unsigned int dst_len``h]j)}(hjOh]hunsigned int dst_len}(hjQhhhNhNubah}(h]h ]h"]h$]h&]uh1jhjMubah}(h]h ]h"]h$]h&]uh1jh]/var/lib/git/docbuild/linux/Documentation/crypto/api-akcipher:22: ./include/crypto/akcipher.hhKhjIubj)}(hhh]jG)}(h#size of the dst output scatter listh]h#size of the dst output scatter list}(hjhhhhNhNubah}(h]h ]h"]h$]h&]uh1jFhjdhKhjeubah}(h]h ]h"]h$]h&]uh1jhjIubeh}(h]h ]h"]h$]h&]uh1jhjdhKhjbubeh}(h]h ]h"]h$]h&]uh1jhjFubjG)}(h**Description**h]jv)}(hjh]h Description}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1juhjubah}(h]h ]h"]h$]h&]uh1jFh]/var/lib/git/docbuild/linux/Documentation/crypto/api-akcipher:22: ./include/crypto/akcipher.hhKhjFubjG)}(h,Sets parameters required by crypto operationh]h,Sets parameters required by crypto operation}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jFh]/var/lib/git/docbuild/linux/Documentation/crypto/api-akcipher:22: ./include/crypto/akcipher.hhKhjFubeh}(h]h ] kernelindentah"]h$]h&]uh1jkhj(hhhNhNubeh}(h] asymmetric-cipher-request-handleah ]h"] asymmetric cipher request handleah$]h&]uh1hhhhhhhhKubeh}(h]asymmetric-cipherah ]h"]asymmetric cipherah$]h&]uh1hhhhhhhhKubeh}(h]h ]h"]h$]h&]sourcehuh1hcurrent_sourceN current_lineNsettingsdocutils.frontendValues)}(hN generatorN datestampN source_linkN source_urlN toc_backlinksentryfootnote_backlinksK sectnum_xformKstrip_commentsNstrip_elements_with_classesN strip_classesN report_levelK halt_levelKexit_status_levelKdebugNwarning_streamN tracebackinput_encoding utf-8-siginput_encoding_error_handlerstrictoutput_encodingutf-8output_encoding_error_handlerjerror_encodingutf-8error_encoding_error_handlerbackslashreplace language_codeenrecord_dependenciesNconfigN id_prefixhauto_id_prefixid dump_settingsNdump_internalsNdump_transformsNdump_pseudo_xmlNexpose_internalsNstrict_visitorN_disable_configN_sourceh _destinationN _config_files]7/var/lib/git/docbuild/linux/Documentation/docutils.confafile_insertion_enabled raw_enabledKline_length_limitM'pep_referencesN pep_base_urlhttps://peps.python.org/pep_file_url_templatepep-%04drfc_referencesN rfc_base_url&https://datatracker.ietf.org/doc/html/ tab_widthKtrim_footnote_reference_spacesyntax_highlightlong smart_quotessmartquotes_locales]character_level_inline_markupdoctitle_xform docinfo_xformKsectsubtitle_xform image_loadinglinkembed_stylesheetcloak_email_addressessection_self_linkenvNubreporterNindirect_targets]substitution_defs}substitution_names}refnames}refids}nameids}(jjjjj%j"jju nametypes}(jjj%juh}(jhjhhhjIjNj"jj3j8j j j j jJ jO j j jjjcjhjj(jEjJjjjjjju footnote_refs} citation_refs} autofootnotes]autofootnote_refs]symbol_footnotes]symbol_footnote_refs] footnotes] citations]autofootnote_startKsymbol_footnote_startK id_counter collectionsCounter}Rparse_messages]transform_messages] transformerN include_log] decorationNhhub.