€•<Œsphinx.addnodes”Œdocument”“”)�”}”(Œ rawsource”Œ”Œchildren”]”(Œ translations”Œ LanguagesNode”“”)�”}”(hhh]”(hŒ pending_xref”“”)�”}”(hhh]”Œdocutils.nodes”ŒText”“”ŒChinese (Simplified)”…”�”}”Œparent”hsbaŒ attributes”}”(Œids”]”Œclasses”]”Œnames”]”Œdupnames”]”Œbackrefs”]”Œ refdomain”Œstd”Œreftype”Œdoc”Œ reftarget”Œ'/translations/zh_CN/crypto/api-akcipher”Œmodname”NŒ classname”NŒ refexplicit”ˆuŒtagname”hhh ubh)�”}”(hhh]”hŒChinese (Traditional)”…”�”}”hh2sbah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”h)Œreftype”h+Œ reftarget”Œ'/translations/zh_TW/crypto/api-akcipher”Œmodname”NŒ classname”NŒ refexplicit”ˆuh1hhh ubh)�”}”(hhh]”hŒItalian”…”�”}”hhFsbah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”h)Œreftype”h+Œ reftarget”Œ'/translations/it_IT/crypto/api-akcipher”Œmodname”NŒ classname”NŒ refexplicit”ˆuh1hhh ubh)�”}”(hhh]”hŒJapanese”…”�”}”hhZsbah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”h)Œreftype”h+Œ reftarget”Œ'/translations/ja_JP/crypto/api-akcipher”Œmodname”NŒ classname”NŒ refexplicit”ˆuh1hhh ubh)�”}”(hhh]”hŒKorean”…”�”}”hhnsbah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”h)Œreftype”h+Œ reftarget”Œ'/translations/ko_KR/crypto/api-akcipher”Œmodname”NŒ classname”NŒ refexplicit”ˆuh1hhh ubh)�”}”(hhh]”hŒPortuguese (Brazilian)”…”�”}”hh‚sbah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”h)Œreftype”h+Œ reftarget”Œ'/translations/pt_BR/crypto/api-akcipher”Œmodname”NŒ classname”NŒ refexplicit”ˆuh1hhh ubh)�”}”(hhh]”hŒSpanish”…”�”}”hh–sbah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”h)Œreftype”h+Œ reftarget”Œ'/translations/sp_SP/crypto/api-akcipher”Œmodname”NŒ classname”NŒ refexplicit”ˆuh1hhh ubeh}”(h]”h ]”h"]”h$]”h&]”Œcurrent_language”ŒEnglish”uh1h hhŒ _document”hŒsource”NŒline”NubhŒsection”“”)�”}”(hhh]”(hŒtitle”“”)�”}”(hŒAsymmetric Cipher”h]”hŒAsymmetric Cipher”…”�”}”(hh¼h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hºhh·h²hh³ŒA/var/lib/git/docbuild/linux/Documentation/crypto/api-akcipher.rst”h´Kubh¶)�”}”(hhh]”(h»)�”}”(hŒ'Asymmetric Cipher Algorithm Definitions”h]”hŒ'Asymmetric Cipher Algorithm Definitions”…”�”}”(hhÎh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hºhhËh²hh³hÊh´KubhŒindex”“”)�”}”(hhh]”h}”(h]”h ]”h"]”h$]”h&]”Œentries”]”(Œsingle”Œakcipher_request (C struct)”Œc.akcipher_request”hNt”auh1hÜhhËh²hh³Nh´NubhŒdesc”“”)�”}”(hhh]”(hŒdesc_signature”“”)�”}”(hŒakcipher_request”h]”hŒdesc_signature_line”“”)�”}”(hŒstruct akcipher_request”h]”(hŒdesc_sig_keyword”“”)�”}”(hŒstruct”h]”hŒstruct”…”�”}”(hjh²hh³Nh´Nubah}”(h]”h ]”Œk”ah"]”h$]”h&]”uh1hþhhúh²hh³Œ\/var/lib/git/docbuild/linux/Documentation/crypto/api-akcipher:7: ./include/crypto/akcipher.h”h´KubhŒdesc_sig_space”“”)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjh²hh³Nh´Nubah}”(h]”h ]”Œw”ah"]”h$]”h&]”uh1jhhúh²hh³jh´KubhŒ desc_name”“”)�”}”(hŒakcipher_request”h]”hŒ desc_sig_name”“”)�”}”(hhöh]”hŒakcipher_request”…”�”}”(hj)h²hh³Nh´Nubah}”(h]”h ]”Œn”ah"]”h$]”h&]”uh1j'hj#ubah}”(h]”h ]”(Œsig-name”Œdescname”eh"]”h$]”h&]”Œ xml:space”Œpreserve”uh1j!hhúh²hh³jh´Kubeh}”(h]”h ]”h"]”h$]”h&]”j?j@Œ add_permalink”ˆuh1høŒsphinx_line_type”Œ declarator”hhôh²hh³jh´Kubah}”(h]”hëah ]”(Œsig”Œ sig-object”eh"]”h$]”h&]”Œ is_multiline”ˆŒ _toc_parts”)Œ _toc_name”huh1hòh³jh´Khhïh²hubhŒ desc_content”“”)�”}”(hhh]”hŒ paragraph”“”)�”}”(hŒpublic key cipher request”h]”hŒpublic key cipher request”…”�”}”(hj\h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jZh³Œ\/var/lib/git/docbuild/linux/Documentation/crypto/api-akcipher:7: ./include/crypto/akcipher.h”h´KhjWh²hubah}”(h]”h ]”h"]”h$]”h&]”uh1jUhhïh²hh³jh´Kubeh}”(h]”h ]”(Œc”Œstruct”eh"]”h$]”h&]”Œdomain”jtŒobjtype”juŒdesctype”juŒnoindex”‰Œ noindexentry”‰Œnocontentsentry”‰uh1híh²hhhËh³Nh´NubhŒ 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 data”h]”(j[)�”}”(hŒ**Definition**::”h]”(hŒstrong”“”)�”}”(hŒ**Definition**”h]”hŒ Definition”…”�”}”(hj‹h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j‰hj…ubhŒ:”…”�”}”(hj…h²hh³Nh´Nubeh}”(h]”h ]”h"]”h$]”h&]”uh1jZh³Œ\/var/lib/git/docbuild/linux/Documentation/crypto/api-akcipher:7: ./include/crypto/akcipher.h”h´Khj�ubhŒ literal_block”“”)�”}”(hŒÃstruct akcipher_request { struct crypto_async_request base; struct scatterlist *src; struct scatterlist *dst; unsigned int src_len; unsigned int dst_len; void *__ctx[]; };”h]”hŒÃstruct akcipher_request { struct crypto_async_request base; struct scatterlist *src; struct scatterlist *dst; unsigned int src_len; unsigned int dst_len; void *__ctx[]; };”…”�”}”hj¦sbah}”(h]”h ]”h"]”h$]”h&]”j?j@uh1j¤h³Œ\/var/lib/git/docbuild/linux/Documentation/crypto/api-akcipher:7: ./include/crypto/akcipher.h”h´Khj�ubj[)�”}”(hŒ **Members**”h]”jŠ)�”}”(hj·h]”hŒMembers”…”�”}”(hj¹h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j‰hjµubah}”(h]”h ]”h"]”h$]”h&]”uh1jZh³Œ\/var/lib/git/docbuild/linux/Documentation/crypto/api-akcipher:7: ./include/crypto/akcipher.h”h´Khj�ubhŒdefinition_list”“”)�”}”(hhh]”(hŒdefinition_list_item”“”)�”}”(hŒ5``base`` Common attributes for async crypto requests ”h]”(hŒterm”“”)�”}”(hŒ``base``”h]”hŒliteral”“”)�”}”(hjÜh]”hŒbase”…”�”}”(hjàh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jÞhjÚubah}”(h]”h ]”h"]”h$]”h&]”uh1jØh³Œ\/var/lib/git/docbuild/linux/Documentation/crypto/api-akcipher:7: ./include/crypto/akcipher.h”h´KhjÔubhŒ definition”“”)�”}”(hhh]”j[)�”}”(hŒ+Common attributes for async crypto requests”h]”hŒ+Common attributes for async crypto requests”…”�”}”(hjùh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jZh³jóh´Khjöubah}”(h]”h ]”h"]”h$]”h&]”uh1jôhjÔubeh}”(h]”h ]”h"]”h$]”h&]”uh1jÒh³jóh´KhjÏubjÓ)�”}”(hŒ``src`` Source data ”h]”(jÙ)�”}”(hŒ``src``”h]”jß)�”}”(hjh]”hŒsrc”…”�”}”(hjh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jÞhjubah}”(h]”h ]”h"]”h$]”h&]”uh1jØh³Œ\/var/lib/git/docbuild/linux/Documentation/crypto/api-akcipher:7: ./include/crypto/akcipher.h”h´Khjubjõ)�”}”(hhh]”j[)�”}”(hŒ Source data”h]”hŒ Source data”…”�”}”(hj2h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jZh³j.h´Khj/ubah}”(h]”h ]”h"]”h$]”h&]”uh1jôhjubeh}”(h]”h ]”h"]”h$]”h&]”uh1jÒh³j.h´KhjÏubjÓ)�”}”(hŒ``dst`` Destination data ”h]”(jÙ)�”}”(hŒ``dst``”h]”jß)�”}”(hjRh]”hŒdst”…”�”}”(hjTh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jÞhjPubah}”(h]”h ]”h"]”h$]”h&]”uh1jØh³Œ\/var/lib/git/docbuild/linux/Documentation/crypto/api-akcipher:7: ./include/crypto/akcipher.h”h´KhjLubjõ)�”}”(hhh]”j[)�”}”(hŒDestination data”h]”hŒDestination data”…”�”}”(hjkh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jZh³jgh´Khjhubah}”(h]”h ]”h"]”h$]”h&]”uh1jôhjLubeh}”(h]”h ]”h"]”h$]”h&]”uh1jÒh³jgh´KhjÏubjÓ)�”}”(hŒ%``src_len`` Size of the input buffer ”h]”(jÙ)�”}”(hŒ ``src_len``”h]”jß)�”}”(hj‹h]”hŒsrc_len”…”�”}”(hj�h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jÞhj‰ubah}”(h]”h ]”h"]”h$]”h&]”uh1jØh³Œ\/var/lib/git/docbuild/linux/Documentation/crypto/api-akcipher:7: ./include/crypto/akcipher.h”h´Khj…ubjõ)�”}”(hhh]”j[)�”}”(hŒSize of the input buffer”h]”hŒSize of the input buffer”…”�”}”(hj¤h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jZh³j h´Khj¡ubah}”(h]”h ]”h"]”h$]”h&]”uh1jôhj…ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jÒh³j h´KhjÏubjÓ)�”}”(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ß)�”}”(hjÄh]”hŒdst_len”…”�”}”(hjÆh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jÞhjÂubah}”(h]”h ]”h"]”h$]”h&]”uh1jØh³Œ\/var/lib/git/docbuild/linux/Documentation/crypto/api-akcipher:7: ./include/crypto/akcipher.h”h´Khj¾ubjõ)�”}”(hhh]”j[)�”}”(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]”(hŒSize of ”…”�”}”(hjÝh²hh³Nh´NubjŠ)�”}”(hŒ**dst**”h]”hŒdst”…”�”}”(hjåh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j‰hjÝubhX 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.”…”�”}”(hjÝh²hh³Nh´Nubeh}”(h]”h ]”h"]”h$]”h&]”uh1jZh³Œ\/var/lib/git/docbuild/linux/Documentation/crypto/api-akcipher:7: ./include/crypto/akcipher.h”h´KhjÚubah}”(h]”h ]”h"]”h$]”h&]”uh1jôhj¾ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jÒh³jÙh´KhjÏubjÓ)�”}”(hŒ'``__ctx`` Start of private context data”h]”(jÙ)�”}”(hŒ ``__ctx``”h]”jß)�”}”(hjh]”hŒ__ctx”…”�”}”(hjh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jÞhjubah}”(h]”h ]”h"]”h$]”h&]”uh1jØh³Œ\/var/lib/git/docbuild/linux/Documentation/crypto/api-akcipher:7: ./include/crypto/akcipher.h”h´Khj ubjõ)�”}”(hhh]”j[)�”}”(hŒStart of private context data”h]”hŒStart of private context data”…”�”}”(hj)h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jZh³Œ\/var/lib/git/docbuild/linux/Documentation/crypto/api-akcipher:7: ./include/crypto/akcipher.h”h´Khj&ubah}”(h]”h ]”h"]”h$]”h&]”uh1jôhj ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jÒh³j%h´KhjÏubeh}”(h]”h ]”h"]”h$]”h&]”uh1jÍhj�ubeh}”(h]”h ]”Œ kernelindent”ah"]”h$]”h&]”uh1jhhËh²hh³Nh´NubhÝ)�”}”(hhh]”h}”(h]”h ]”h"]”h$]”h&]”Œentries”]”(héŒakcipher_alg (C struct)”Œc.akcipher_alg”hNt”auh1hÜhhËh²hh³Nh´Nubhî)�”}”(hhh]”(hó)�”}”(hŒ akcipher_alg”h]”hù)�”}”(hŒstruct akcipher_alg”h]”(hÿ)�”}”(hjh]”hŒstruct”…”�”}”(hjjh²hh³Nh´Nubah}”(h]”h ]”j ah"]”h$]”h&]”uh1hþhjfh²hh³Œ\/var/lib/git/docbuild/linux/Documentation/crypto/api-akcipher:7: ./include/crypto/akcipher.h”h´K#ubj)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjxh²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhjfh²hh³jwh´K#ubj")�”}”(hŒ akcipher_alg”h]”j()�”}”(hjdh]”hŒ akcipher_alg”…”�”}”(hjŠh²hh³Nh´Nubah}”(h]”h ]”j3ah"]”h$]”h&]”uh1j'hj†ubah}”(h]”h ]”(j:j;eh"]”h$]”h&]”j?j@uh1j!hjfh²hh³jwh´K#ubeh}”(h]”h ]”h"]”h$]”h&]”j?j@jGˆuh1højHjIhjbh²hh³jwh´K#ubah}”(h]”j]ah ]”(jMjNeh"]”h$]”h&]”jRˆjS)jThuh1hòh³jwh´K#hj_h²hubjV)�”}”(hhh]”j[)�”}”(hŒ#generic public key cipher algorithm”h]”hŒ#generic public key cipher algorithm”…”�”}”(hj¬h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jZh³Œ\/var/lib/git/docbuild/linux/Documentation/crypto/api-akcipher:7: ./include/crypto/akcipher.h”h´K5hj©h²hubah}”(h]”h ]”h"]”h$]”h&]”uh1jUhj_h²hh³jwh´K#ubeh}”(h]”h ]”(jtŒstruct”eh"]”h$]”h&]”jyjtjzjÄj{jÄj|‰j}‰j~‰uh1híh²hhhËh³Nh´Nubj€)�”}”(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 structure”h]”(j[)�”}”(hŒ**Definition**::”h]”(jŠ)�”}”(hŒ**Definition**”h]”hŒ Definition”…”�”}”(hjÐh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j‰hjÌubhŒ:”…”�”}”(hjÌh²hh³Nh´Nubeh}”(h]”h ]”h"]”h$]”h&]”uh1jZh³Œ\/var/lib/git/docbuild/linux/Documentation/crypto/api-akcipher:7: ./include/crypto/akcipher.h”h´K9hjÈubj¥)�”}”(hXç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; };”h]”hXç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; };”…”�”}”hjésbah}”(h]”h ]”h"]”h$]”h&]”j?j@uh1j¤h³Œ\/var/lib/git/docbuild/linux/Documentation/crypto/api-akcipher:7: ./include/crypto/akcipher.h”h´K;hjÈubj[)�”}”(hŒ **Members**”h]”jŠ)�”}”(hjúh]”hŒMembers”…”�”}”(hjüh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j‰hjøubah}”(h]”h ]”h"]”h$]”h&]”uh1jZh³Œ\/var/lib/git/docbuild/linux/Documentation/crypto/api-akcipher:7: ./include/crypto/akcipher.h”h´KFhjÈubjÎ)�”}”(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]”hŒencrypt”…”�”}”(hjh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jÞhjubah}”(h]”h ]”h"]”h$]”h&]”uh1jØh³Œ\/var/lib/git/docbuild/linux/Documentation/crypto/api-akcipher:7: ./include/crypto/akcipher.h”h´K;hjubjõ)�”}”(hhh]”j[)�”}”(hŒÈ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]”hŒÈ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”…”�”}”(hj2h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jZh³Œ\/var/lib/git/docbuild/linux/Documentation/crypto/api-akcipher:7: ./include/crypto/akcipher.h”h´K8hj/ubah}”(h]”h ]”h"]”h$]”h&]”uh1jôhjubeh}”(h]”h ]”h"]”h$]”h&]”uh1jÒh³j.h´K;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ß)�”}”(hjSh]”hŒdecrypt”…”�”}”(hjUh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jÞhjQubah}”(h]”h ]”h"]”h$]”h&]”uh1jØh³Œ\/var/lib/git/docbuild/linux/Documentation/crypto/api-akcipher:7: ./include/crypto/akcipher.h”h´K?hjMubjõ)�”}”(hhh]”j[)�”}”(hŒÇ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]”hŒÇ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”…”�”}”(hjlh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jZh³Œ\/var/lib/git/docbuild/linux/Documentation/crypto/api-akcipher:7: ./include/crypto/akcipher.h”h´K h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jÞhj: ubah}”(h]”h ]”h"]”h$]”h&]”uh1jØh³Œ]/var/lib/git/docbuild/linux/Documentation/crypto/api-akcipher:16: ./include/crypto/akcipher.h”h´K¥hj6 ubjõ)�”}”(hhh]”j[)�”}”(hŒ:AKCIPHER tfm handle allocated with crypto_alloc_akcipher()”h]”hŒ:AKCIPHER tfm handle allocated with crypto_alloc_akcipher()”…”�”}”(hjU h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jZh³jQ h´K¥hjR ubah}”(h]”h ]”h"]”h$]”h&]”uh1jôhj6 ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jÒh³jQ h´K¥hj3 ubah}”(h]”h ]”h"]”h$]”h&]”uh1jÍhj ubj[)�”}”(hŒ**Description**”h]”jŠ)�”}”(hjw h]”hŒ Description”…”�”}”(hjy h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j‰hju ubah}”(h]”h ]”h"]”h$]”h&]”uh1jZh³Œ]/var/lib/git/docbuild/linux/Documentation/crypto/api-akcipher:16: ./include/crypto/akcipher.h”h´K§hj ubj[)�”}”(hŒBIf **tfm** is a NULL or error pointer, this function does nothing.”h]”(hŒIf ”…”�”}”(hj� h²hh³Nh´NubjŠ)�”}”(hŒ**tfm**”h]”hŒtfm”…”�”}”(hj• h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j‰hj� ubhŒ8 is a NULL or error pointer, this function does nothing.”…”�”}”(hj� h²hh³Nh´Nubeh}”(h]”h ]”h"]”h$]”h&]”uh1jZh³Œ]/var/lib/git/docbuild/linux/Documentation/crypto/api-akcipher:16: ./include/crypto/akcipher.h”h´K¦hj ubeh}”(h]”h ]”Œ kernelindent”ah"]”h$]”h&]”uh1jhjh²hh³Nh´NubhÝ)�”}”(hhh]”h}”(h]”h ]”h"]”h$]”h&]”Œentries”]”(héŒ$crypto_akcipher_maxsize (C function)”Œc.crypto_akcipher_maxsize”hNt”auh1hÜhjh²hh³Nh´Nubhî)�”}”(hhh]”(hó)�”}”(hŒBunsigned int crypto_akcipher_maxsize (struct crypto_akcipher *tfm)”h]”hù)�”}”(hŒAunsigned int crypto_akcipher_maxsize(struct crypto_akcipher *tfm)”h]”(jû)�”}”(hŒunsigned”h]”hŒunsigned”…”�”}”(hjÎ h²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1júhjÊ h²hh³Œ]/var/lib/git/docbuild/linux/Documentation/crypto/api-akcipher:16: ./include/crypto/akcipher.h”h´Kùubj)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjÝ h²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhjÊ h²hh³jÜ h´Kùubjû)�”}”(hŒint”h]”hŒint”…”�”}”(hjë h²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1júhjÊ h²hh³jÜ h´Kùubj)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjù h²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhjÊ h²hh³jÜ h´Kùubj")�”}”(hŒcrypto_akcipher_maxsize”h]”j()�”}”(hŒcrypto_akcipher_maxsize”h]”hŒcrypto_akcipher_maxsize”…”�”}”(hj h²hh³Nh´Nubah}”(h]”h ]”j3ah"]”h$]”h&]”uh1j'hj ubah}”(h]”h ]”(j:j;eh"]”h$]”h&]”j?j@uh1j!hjÊ h²hh³jÜ h´KùubjÓ)�”}”(hŒ(struct crypto_akcipher *tfm)”h]”jÙ)�”}”(hŒstruct crypto_akcipher *tfm”h]”(hÿ)�”}”(hjh]”hŒstruct”…”�”}”(hj' h²hh³Nh´Nubah}”(h]”h ]”j ah"]”h$]”h&]”uh1hþhj# ubj)�”}”(hŒ ”h]”hŒ ”…”�”}”(hj4 h²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhj# ubh)�”}”(hhh]”j()�”}”(hŒcrypto_akcipher”h]”hŒcrypto_akcipher”…”�”}”(hjE h²hh³Nh´Nubah}”(h]”h ]”j3ah"]”h$]”h&]”uh1j'hjB ubah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”jtŒreftype”j‰Œ reftarget”jG Œmodname”NŒ classname”Nj�j�)�”}”j“]”j–)�”}”j‰j sbŒc.crypto_akcipher_maxsize”†”asbuh1hhj# ubj)�”}”(hŒ ”h]”hŒ ”…”�”}”(hje h²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhj# ubj«)�”}”(hj®h]”hŒ*”…”�”}”(hjs h²hh³Nh´Nubah}”(h]”h ]”j·ah"]”h$]”h&]”uh1jªhj# ubj()�”}”(hŒtfm”h]”hŒtfm”…”�”}”(hj€ h²hh³Nh´Nubah}”(h]”h ]”j3ah"]”h$]”h&]”uh1j'hj# ubeh}”(h]”h ]”h"]”h$]”h&]”Œnoemph”ˆj?j@uh1jØhj ubah}”(h]”h ]”h"]”h$]”h&]”j?j@uh1jÒhjÊ h²hh³jÜ h´Kùubeh}”(h]”h ]”h"]”h$]”h&]”j?j@jGˆuh1højHjIhjÆ h²hh³jÜ h´Kùubah}”(h]”jÁ ah ]”(jMjNeh"]”h$]”h&]”jRˆjS)jThuh1hòh³jÜ h´Kùhjà h²hubjV)�”}”(hhh]”j[)�”}”(hŒGet len for output buffer”h]”hŒGet len for output buffer”…”�”}”(hjª h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jZh³Œ]/var/lib/git/docbuild/linux/Documentation/crypto/api-akcipher:16: ./include/crypto/akcipher.h”h´Kùhj§ h²hubah}”(h]”h ]”h"]”h$]”h&]”uh1jUhjà h²hh³jÜ h´Kùubeh}”(h]”h ]”(jtŒfunction”eh"]”h$]”h&]”jyjtjzj j{j j|‰j}‰j~‰uh1híh²hhjh³Nh´Nubj€)�”}”(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]”(j[)�”}”(hŒ**Parameters**”h]”jŠ)�”}”(hjÌ h]”hŒ Parameters”…”�”}”(hjÎ h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j‰hjÊ ubah}”(h]”h ]”h"]”h$]”h&]”uh1jZh³Œ]/var/lib/git/docbuild/linux/Documentation/crypto/api-akcipher:16: ./include/crypto/akcipher.h”h´KýhjÆ 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]”hŒstruct crypto_akcipher *tfm”…”�”}”(hjí h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jÞhjé ubah}”(h]”h ]”h"]”h$]”h&]”uh1jØh³Œ]/var/lib/git/docbuild/linux/Documentation/crypto/api-akcipher:16: ./include/crypto/akcipher.h”h´Mhjå ubjõ)�”}”(hhh]”j[)�”}”(hŒ:AKCIPHER tfm handle allocated with crypto_alloc_akcipher()”h]”hŒ:AKCIPHER tfm handle allocated with crypto_alloc_akcipher()”…”�”}”(hj h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jZh³j h´Mhj ubah}”(h]”h ]”h"]”h$]”h&]”uh1jôhjå ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jÒh³j h´Mhjâ ubah}”(h]”h ]”h"]”h$]”h&]”uh1jÍhjÆ ubj[)�”}”(hŒ**Description**”h]”jŠ)�”}”(hj& h]”hŒ Description”…”�”}”(hj( h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j‰hj$ ubah}”(h]”h ]”h"]”h$]”h&]”uh1jZh³Œ]/var/lib/git/docbuild/linux/Documentation/crypto/api-akcipher:16: ./include/crypto/akcipher.h”h´MhjÆ ubj[)�”}”(hŒï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]”hŒï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.”…”�”}”(hj< h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jZh³Œ]/var/lib/git/docbuild/linux/Documentation/crypto/api-akcipher:16: ./include/crypto/akcipher.h”h´KúhjÆ ubeh}”(h]”h ]”Œ kernelindent”ah"]”h$]”h&]”uh1jhjh²hh³Nh´NubhÝ)�”}”(hhh]”h}”(h]”h ]”h"]”h$]”h&]”Œentries”]”(héŒ$crypto_akcipher_encrypt (C function)”Œc.crypto_akcipher_encrypt”hNt”auh1hÜhjh²hh³Nh´Nubhî)�”}”(hhh]”(hó)�”}”(hŒ:int crypto_akcipher_encrypt (struct akcipher_request *req)”h]”hù)�”}”(hŒ9int crypto_akcipher_encrypt(struct akcipher_request *req)”h]”(jû)�”}”(hŒint”h]”hŒint”…”�”}”(hjk h²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1júhjg h²hh³Œ]/var/lib/git/docbuild/linux/Documentation/crypto/api-akcipher:16: ./include/crypto/akcipher.h”h´M ubj)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjz h²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhjg h²hh³jy h´M ubj")�”}”(hŒcrypto_akcipher_encrypt”h]”j()�”}”(hŒcrypto_akcipher_encrypt”h]”hŒcrypto_akcipher_encrypt”…”�”}”(hjŒ h²hh³Nh´Nubah}”(h]”h ]”j3ah"]”h$]”h&]”uh1j'hjˆ ubah}”(h]”h ]”(j:j;eh"]”h$]”h&]”j?j@uh1j!hjg h²hh³jy h´M ubjÓ)�”}”(hŒ(struct akcipher_request *req)”h]”jÙ)�”}”(hŒstruct akcipher_request *req”h]”(hÿ)�”}”(hjh]”hŒstruct”…”�”}”(hj¨ h²hh³Nh´Nubah}”(h]”h ]”j ah"]”h$]”h&]”uh1hþhj¤ ubj)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjµ h²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhj¤ ubh)�”}”(hhh]”j()�”}”(hŒakcipher_request”h]”hŒakcipher_request”…”�”}”(hjÆ h²hh³Nh´Nubah}”(h]”h ]”j3ah"]”h$]”h&]”uh1j'hjà ubah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”jtŒreftype”j‰Œ reftarget”jÈ Œmodname”NŒ classname”Nj�j�)�”}”j“]”j–)�”}”j‰jŽ sbŒc.crypto_akcipher_encrypt”†”asbuh1hhj¤ ubj)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjæ h²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhj¤ ubj«)�”}”(hj®h]”hŒ*”…”�”}”(hjô h²hh³Nh´Nubah}”(h]”h ]”j·ah"]”h$]”h&]”uh1jªhj¤ ubj()�”}”(hŒreq”h]”hŒreq”…”�”}”(hj h²hh³Nh´Nubah}”(h]”h ]”j3ah"]”h$]”h&]”uh1j'hj¤ ubeh}”(h]”h ]”h"]”h$]”h&]”Œnoemph”ˆj?j@uh1jØhj  ubah}”(h]”h ]”h"]”h$]”h&]”j?j@uh1jÒhjg h²hh³jy h´M ubeh}”(h]”h ]”h"]”h$]”h&]”j?j@jGˆuh1højHjIhjc h²hh³jy h´M ubah}”(h]”j^ ah ]”(jMjNeh"]”h$]”h&]”jRˆjS)jThuh1hòh³jy h´M hj` h²hubjV)�”}”(hhh]”j[)�”}”(hŒ#Invoke public key encrypt operation”h]”hŒ#Invoke public key encrypt operation”…”�”}”(hj+ h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jZh³Œ]/var/lib/git/docbuild/linux/Documentation/crypto/api-akcipher:16: ./include/crypto/akcipher.h”h´M hj( h²hubah}”(h]”h ]”h"]”h$]”h&]”uh1jUhj` h²hh³jy h´M ubeh}”(h]”h ]”(jtŒfunction”eh"]”h$]”h&]”jyjtjzjC j{jC j|‰j}‰j~‰uh1híh²hhjh³Nh´Nubj€)�”}”(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 error”h]”(j[)�”}”(hŒ**Parameters**”h]”jŠ)�”}”(hjM h]”hŒ Parameters”…”�”}”(hjO h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j‰hjK ubah}”(h]”h ]”h"]”h$]”h&]”uh1jZh³Œ]/var/lib/git/docbuild/linux/Documentation/crypto/api-akcipher:16: ./include/crypto/akcipher.h”h´MhjG ubjÎ)�”}”(hhh]”jÓ)�”}”(hŒ8``struct akcipher_request *req`` asymmetric key request ”h]”(jÙ)�”}”(hŒ ``struct akcipher_request *req``”h]”jß)�”}”(hjl h]”hŒstruct akcipher_request *req”…”�”}”(hjn h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jÞhjj ubah}”(h]”h ]”h"]”h$]”h&]”uh1jØh³Œ]/var/lib/git/docbuild/linux/Documentation/crypto/api-akcipher:16: ./include/crypto/akcipher.h”h´Mhjf ubjõ)�”}”(hhh]”j[)�”}”(hŒasymmetric key request”h]”hŒasymmetric key request”…”�”}”(hj… h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jZh³j� h´Mhj‚ ubah}”(h]”h ]”h"]”h$]”h&]”uh1jôhjf ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jÒh³j� h´Mhjc ubah}”(h]”h ]”h"]”h$]”h&]”uh1jÍhjG ubj[)�”}”(hŒ**Description**”h]”jŠ)�”}”(hj§ h]”hŒ Description”…”�”}”(hj© h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j‰hj¥ ubah}”(h]”h ]”h"]”h$]”h&]”uh1jZh³Œ]/var/lib/git/docbuild/linux/Documentation/crypto/api-akcipher:16: ./include/crypto/akcipher.h”h´MhjG ubj[)�”}”(hŒ[Function invokes the specific public key encrypt operation for a given public key algorithm”h]”hŒ[Function invokes the specific public key encrypt operation for a given public key algorithm”…”�”}”(hj½ h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jZh³Œ]/var/lib/git/docbuild/linux/Documentation/crypto/api-akcipher:16: ./include/crypto/akcipher.h”h´M hjG ubj[)�”}”(hŒ **Return**”h]”jŠ)�”}”(hjÎ h]”hŒReturn”…”�”}”(hjÐ h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j‰hjÌ ubah}”(h]”h ]”h"]”h$]”h&]”uh1jZh³Œ]/var/lib/git/docbuild/linux/Documentation/crypto/api-akcipher:16: ./include/crypto/akcipher.h”h´MhjG ubj[)�”}”(hŒ,zero on success; error code in case of error”h]”hŒ,zero on success; error code in case of error”…”�”}”(hjä h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jZh³Œ]/var/lib/git/docbuild/linux/Documentation/crypto/api-akcipher:16: ./include/crypto/akcipher.h”h´MhjG ubeh}”(h]”h ]”Œ kernelindent”ah"]”h$]”h&]”uh1jhjh²hh³Nh´NubhÝ)�”}”(hhh]”h}”(h]”h ]”h"]”h$]”h&]”Œentries”]”(héŒ$crypto_akcipher_decrypt (C function)”Œc.crypto_akcipher_decrypt”hNt”auh1hÜhjh²hh³Nh´Nubhî)�”}”(hhh]”(hó)�”}”(hŒ:int crypto_akcipher_decrypt (struct akcipher_request *req)”h]”hù)�”}”(hŒ9int crypto_akcipher_decrypt(struct akcipher_request *req)”h]”(jû)�”}”(hŒint”h]”hŒint”…”�”}”(hjh²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1júhjh²hh³Œ]/var/lib/git/docbuild/linux/Documentation/crypto/api-akcipher:16: ./include/crypto/akcipher.h”h´Mubj)�”}”(hŒ ”h]”hŒ ”…”�”}”(hj"h²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhjh²hh³j!h´Mubj")�”}”(hŒcrypto_akcipher_decrypt”h]”j()�”}”(hŒcrypto_akcipher_decrypt”h]”hŒcrypto_akcipher_decrypt”…”�”}”(hj4h²hh³Nh´Nubah}”(h]”h ]”j3ah"]”h$]”h&]”uh1j'hj0ubah}”(h]”h ]”(j:j;eh"]”h$]”h&]”j?j@uh1j!hjh²hh³j!h´MubjÓ)�”}”(hŒ(struct akcipher_request *req)”h]”jÙ)�”}”(hŒstruct akcipher_request *req”h]”(hÿ)�”}”(hjh]”hŒstruct”…”�”}”(hjPh²hh³Nh´Nubah}”(h]”h ]”j ah"]”h$]”h&]”uh1hþhjLubj)�”}”(hŒ ”h]”hŒ ”…”�”}”(hj]h²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhjLubh)�”}”(hhh]”j()�”}”(hŒakcipher_request”h]”hŒakcipher_request”…”�”}”(hjnh²hh³Nh´Nubah}”(h]”h ]”j3ah"]”h$]”h&]”uh1j'hjkubah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”jtŒreftype”j‰Œ reftarget”jpŒmodname”NŒ classname”Nj�j�)�”}”j“]”j–)�”}”j‰j6sbŒc.crypto_akcipher_decrypt”†”asbuh1hhjLubj)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjŽh²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhjLubj«)�”}”(hj®h]”hŒ*”…”�”}”(hjœh²hh³Nh´Nubah}”(h]”h ]”j·ah"]”h$]”h&]”uh1jªhjLubj()�”}”(hŒreq”h]”hŒreq”…”�”}”(hj©h²hh³Nh´Nubah}”(h]”h ]”j3ah"]”h$]”h&]”uh1j'hjLubeh}”(h]”h ]”h"]”h$]”h&]”Œnoemph”ˆj?j@uh1jØhjHubah}”(h]”h ]”h"]”h$]”h&]”j?j@uh1jÒhjh²hh³j!h´Mubeh}”(h]”h ]”h"]”h$]”h&]”j?j@jGˆuh1højHjIhj h²hh³j!h´Mubah}”(h]”jah ]”(jMjNeh"]”h$]”h&]”jRˆjS)jThuh1hòh³j!h´Mhjh²hubjV)�”}”(hhh]”j[)�”}”(hŒ#Invoke public key decrypt operation”h]”hŒ#Invoke public key decrypt operation”…”�”}”(hjÓh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jZh³Œ]/var/lib/git/docbuild/linux/Documentation/crypto/api-akcipher:16: ./include/crypto/akcipher.h”h´MhjÐh²hubah}”(h]”h ]”h"]”h$]”h&]”uh1jUhjh²hh³j!h´Mubeh}”(h]”h ]”(jtŒfunction”eh"]”h$]”h&]”jyjtjzjëj{jëj|‰j}‰j~‰uh1híh²hhjh³Nh´Nubj€)�”}”(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 error”h]”(j[)�”}”(hŒ**Parameters**”h]”jŠ)�”}”(hjõh]”hŒ Parameters”…”�”}”(hj÷h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j‰hjóubah}”(h]”h ]”h"]”h$]”h&]”uh1jZh³Œ]/var/lib/git/docbuild/linux/Documentation/crypto/api-akcipher:16: ./include/crypto/akcipher.h”h´MhjïubjÎ)�”}”(hhh]”jÓ)�”}”(hŒ8``struct akcipher_request *req`` asymmetric key request ”h]”(jÙ)�”}”(hŒ ``struct akcipher_request *req``”h]”jß)�”}”(hjh]”hŒstruct akcipher_request *req”…”�”}”(hjh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jÞhjubah}”(h]”h ]”h"]”h$]”h&]”uh1jØh³Œ]/var/lib/git/docbuild/linux/Documentation/crypto/api-akcipher:16: ./include/crypto/akcipher.h”h´M hjubjõ)�”}”(hhh]”j[)�”}”(hŒasymmetric key request”h]”hŒasymmetric key request”…”�”}”(hj-h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jZh³j)h´M hj*ubah}”(h]”h ]”h"]”h$]”h&]”uh1jôhjubeh}”(h]”h ]”h"]”h$]”h&]”uh1jÒh³j)h´M hj ubah}”(h]”h ]”h"]”h$]”h&]”uh1jÍhjïubj[)�”}”(hŒ**Description**”h]”jŠ)�”}”(hjOh]”hŒ Description”…”�”}”(hjQh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j‰hjMubah}”(h]”h ]”h"]”h$]”h&]”uh1jZh³Œ]/var/lib/git/docbuild/linux/Documentation/crypto/api-akcipher:16: ./include/crypto/akcipher.h”h´M"hjïubj[)�”}”(hŒ[Function invokes the specific public key decrypt operation for a given public key algorithm”h]”hŒ[Function invokes the specific public key decrypt operation for a given public key algorithm”…”�”}”(hjeh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jZh³Œ]/var/lib/git/docbuild/linux/Documentation/crypto/api-akcipher:16: ./include/crypto/akcipher.h”h´Mhjïubj[)�”}”(hŒ **Return**”h]”jŠ)�”}”(hjvh]”hŒReturn”…”�”}”(hjxh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j‰hjtubah}”(h]”h ]”h"]”h$]”h&]”uh1jZh³Œ]/var/lib/git/docbuild/linux/Documentation/crypto/api-akcipher:16: ./include/crypto/akcipher.h”h´Mhjïubj[)�”}”(hŒ,zero on success; error code in case of error”h]”hŒ,zero on success; error code in case of error”…”�”}”(hjŒh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jZh³Œ]/var/lib/git/docbuild/linux/Documentation/crypto/api-akcipher:16: ./include/crypto/akcipher.h”h´M"hjïubeh}”(h]”h ]”Œ kernelindent”ah"]”h$]”h&]”uh1jhjh²hh³Nh´NubhÝ)�”}”(hhh]”h}”(h]”h ]”h"]”h$]”h&]”Œentries”]”(héŒ(crypto_akcipher_set_pub_key (C function)”Œc.crypto_akcipher_set_pub_key”hNt”auh1hÜhjh²hh³Nh´Nubhî)�”}”(hhh]”(hó)�”}”(hŒcint crypto_akcipher_set_pub_key (struct crypto_akcipher *tfm, const void *key, unsigned int keylen)”h]”hù)�”}”(hŒbint crypto_akcipher_set_pub_key(struct crypto_akcipher *tfm, const void *key, unsigned int keylen)”h]”(jû)�”}”(hŒint”h]”hŒint”…”�”}”(hj»h²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1júhj·h²hh³Œ]/var/lib/git/docbuild/linux/Documentation/crypto/api-akcipher:16: ./include/crypto/akcipher.h”h´MPubj)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjÊh²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhj·h²hh³jÉh´MPubj")�”}”(hŒcrypto_akcipher_set_pub_key”h]”j()�”}”(hŒcrypto_akcipher_set_pub_key”h]”hŒcrypto_akcipher_set_pub_key”…”�”}”(hjÜh²hh³Nh´Nubah}”(h]”h ]”j3ah"]”h$]”h&]”uh1j'hjØubah}”(h]”h ]”(j:j;eh"]”h$]”h&]”j?j@uh1j!hj·h²hh³jÉh´MPubjÓ)�”}”(hŒC(struct crypto_akcipher *tfm, const void *key, unsigned int keylen)”h]”(jÙ)�”}”(hŒstruct crypto_akcipher *tfm”h]”(hÿ)�”}”(hjh]”hŒstruct”…”�”}”(hjøh²hh³Nh´Nubah}”(h]”h ]”j ah"]”h$]”h&]”uh1hþhjôubj)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjh²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhjôubh)�”}”(hhh]”j()�”}”(hŒcrypto_akcipher”h]”hŒcrypto_akcipher”…”�”}”(hjh²hh³Nh´Nubah}”(h]”h ]”j3ah"]”h$]”h&]”uh1j'hjubah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”jtŒreftype”j‰Œ reftarget”jŒmodname”NŒ classname”Nj�j�)�”}”j“]”j–)�”}”j‰jÞsbŒc.crypto_akcipher_set_pub_key”†”asbuh1hhjôubj)�”}”(hŒ ”h]”hŒ ”…”�”}”(hj6h²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhjôubj«)�”}”(hj®h]”hŒ*”…”�”}”(hjDh²hh³Nh´Nubah}”(h]”h ]”j·ah"]”h$]”h&]”uh1jªhjôubj()�”}”(hŒtfm”h]”hŒtfm”…”�”}”(hjQh²hh³Nh´Nubah}”(h]”h ]”j3ah"]”h$]”h&]”uh1j'hjôubeh}”(h]”h ]”h"]”h$]”h&]”Œnoemph”ˆj?j@uh1jØhjðubjÙ)�”}”(hŒconst void *key”h]”(hÿ)�”}”(hjàh]”hŒconst”…”�”}”(hjjh²hh³Nh´Nubah}”(h]”h ]”j ah"]”h$]”h&]”uh1hþhjfubj)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjwh²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhjfubjû)�”}”(hŒvoid”h]”hŒvoid”…”�”}”(hj…h²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1júhjfubj)�”}”(hŒ ”h]”hŒ ”…”�”}”(hj“h²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhjfubj«)�”}”(hj®h]”hŒ*”…”�”}”(hj¡h²hh³Nh´Nubah}”(h]”h ]”j·ah"]”h$]”h&]”uh1jªhjfubj()�”}”(hŒkey”h]”hŒkey”…”�”}”(hj®h²hh³Nh´Nubah}”(h]”h ]”j3ah"]”h$]”h&]”uh1j'hjfubeh}”(h]”h ]”h"]”h$]”h&]”Œnoemph”ˆj?j@uh1jØhjðubjÙ)�”}”(hŒunsigned int keylen”h]”(jû)�”}”(hŒunsigned”h]”hŒunsigned”…”�”}”(hjÇh²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1júhjÃubj)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjÕh²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhjÃubjû)�”}”(hŒint”h]”hŒint”…”�”}”(hjãh²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1júhjÃubj)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjñh²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhjÃubj()�”}”(hŒkeylen”h]”hŒkeylen”…”�”}”(hjÿh²hh³Nh´Nubah}”(h]”h ]”j3ah"]”h$]”h&]”uh1j'hjÃubeh}”(h]”h ]”h"]”h$]”h&]”Œnoemph”ˆj?j@uh1jØhjðubeh}”(h]”h ]”h"]”h$]”h&]”j?j@uh1jÒhj·h²hh³jÉh´MPubeh}”(h]”h ]”h"]”h$]”h&]”j?j@jGˆuh1højHjIhj³h²hh³jÉh´MPubah}”(h]”j®ah ]”(jMjNeh"]”h$]”h&]”jRˆjS)jThuh1hòh³jÉh´MPhj°h²hubjV)�”}”(hhh]”j[)�”}”(hŒInvoke set public key operation”h]”hŒInvoke set public key operation”…”�”}”(hj)h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jZh³Œ]/var/lib/git/docbuild/linux/Documentation/crypto/api-akcipher:16: ./include/crypto/akcipher.h”h´MPhj&h²hubah}”(h]”h ]”h"]”h$]”h&]”uh1jUhj°h²hh³jÉh´MPubeh}”(h]”h ]”(jtŒfunction”eh"]”h$]”h&]”jyjtjzjAj{jAj|‰j}‰j~‰uh1híh²hhjh³Nh´Nubj€)�”}”(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 error”h]”(j[)�”}”(hŒ**Parameters**”h]”jŠ)�”}”(hjKh]”hŒ Parameters”…”�”}”(hjMh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j‰hjIubah}”(h]”h ]”h"]”h$]”h&]”uh1jZh³Œ]/var/lib/git/docbuild/linux/Documentation/crypto/api-akcipher:16: ./include/crypto/akcipher.h”h´MThjEubjÎ)�”}”(hhh]”(jÓ)�”}”(hŒ+``struct crypto_akcipher *tfm`` tfm handle ”h]”(jÙ)�”}”(hŒ``struct crypto_akcipher *tfm``”h]”jß)�”}”(hjjh]”hŒstruct crypto_akcipher *tfm”…”�”}”(hjlh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jÞhjhubah}”(h]”h ]”h"]”h$]”h&]”uh1jØh³Œ]/var/lib/git/docbuild/linux/Documentation/crypto/api-akcipher:16: ./include/crypto/akcipher.h”h´MUhjdubjõ)�”}”(hhh]”j[)�”}”(hŒ tfm handle”h]”hŒ tfm handle”…”�”}”(hjƒh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jZh³jh´MUhj€ubah}”(h]”h ]”h"]”h$]”h&]”uh1jôhjdubeh}”(h]”h ]”h"]”h$]”h&]”uh1jÒh³jh´MUhjaubjÓ)�”}”(hŒW``const void *key`` BER encoded public key, algo OID, paramlen, BER encoded parameters ”h]”(jÙ)�”}”(hŒ``const void *key``”h]”jß)�”}”(hj£h]”hŒconst void *key”…”�”}”(hj¥h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jÞhj¡ubah}”(h]”h ]”h"]”h$]”h&]”uh1jØh³Œ]/var/lib/git/docbuild/linux/Documentation/crypto/api-akcipher:16: ./include/crypto/akcipher.h”h´MWhj�ubjõ)�”}”(hhh]”j[)�”}”(hŒBBER encoded public key, algo OID, paramlen, BER encoded parameters”h]”hŒBBER encoded public key, algo OID, paramlen, BER encoded parameters”…”�”}”(hj¼h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jZh³Œ]/var/lib/git/docbuild/linux/Documentation/crypto/api-akcipher:16: ./include/crypto/akcipher.h”h´MVhj¹ubah}”(h]”h ]”h"]”h$]”h&]”uh1jôhj�ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jÒh³j¸h´MWhjaubjÓ)�”}”(hŒE``unsigned int keylen`` length of the key (not including other data) ”h]”(jÙ)�”}”(hŒ``unsigned int keylen``”h]”jß)�”}”(hjÝh]”hŒunsigned int keylen”…”�”}”(hjßh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jÞhjÛubah}”(h]”h ]”h"]”h$]”h&]”uh1jØh³Œ]/var/lib/git/docbuild/linux/Documentation/crypto/api-akcipher:16: ./include/crypto/akcipher.h”h´MXhj×ubjõ)�”}”(hhh]”j[)�”}”(hŒ,length of the key (not including other data)”h]”hŒ,length of the key (not including other data)”…”�”}”(hjöh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jZh³jòh´MXhjóubah}”(h]”h ]”h"]”h$]”h&]”uh1jôhj×ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jÒh³jòh´MXhjaubeh}”(h]”h ]”h"]”h$]”h&]”uh1jÍhjEubj[)�”}”(hŒ**Description**”h]”jŠ)�”}”(hjh]”hŒ Description”…”�”}”(hjh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j‰hjubah}”(h]”h ]”h"]”h$]”h&]”uh1jZh³Œ]/var/lib/git/docbuild/linux/Documentation/crypto/api-akcipher:16: ./include/crypto/akcipher.h”h´MZhjEubj[)�”}”(hŒ€Function invokes the algorithm specific set key function, which knows how to decode and interpret the encoded key and parameters”h]”hŒ€Function invokes the algorithm specific set key function, which knows how to decode and interpret the encoded key and parameters”…”�”}”(hj.h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jZh³Œ]/var/lib/git/docbuild/linux/Documentation/crypto/api-akcipher:16: ./include/crypto/akcipher.h”h´MQhjEubj[)�”}”(hŒ **Return**”h]”jŠ)�”}”(hj?h]”hŒReturn”…”�”}”(hjAh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j‰hj=ubah}”(h]”h ]”h"]”h$]”h&]”uh1jZh³Œ]/var/lib/git/docbuild/linux/Documentation/crypto/api-akcipher:16: ./include/crypto/akcipher.h”h´MThjEubj[)�”}”(hŒ,zero on success; error code in case of error”h]”hŒ,zero on success; error code in case of error”…”�”}”(hjUh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jZh³Œ]/var/lib/git/docbuild/linux/Documentation/crypto/api-akcipher:16: ./include/crypto/akcipher.h”h´MZhjEubeh}”(h]”h ]”Œ kernelindent”ah"]”h$]”h&]”uh1jhjh²hh³Nh´NubhÝ)�”}”(hhh]”h}”(h]”h ]”h"]”h$]”h&]”Œentries”]”(héŒ)crypto_akcipher_set_priv_key (C function)”Œc.crypto_akcipher_set_priv_key”hNt”auh1hÜhjh²hh³Nh´Nubhî)�”}”(hhh]”(hó)�”}”(hŒdint crypto_akcipher_set_priv_key (struct crypto_akcipher *tfm, const void *key, unsigned int keylen)”h]”hù)�”}”(hŒcint crypto_akcipher_set_priv_key(struct crypto_akcipher *tfm, const void *key, unsigned int keylen)”h]”(jû)�”}”(hŒint”h]”hŒint”…”�”}”(hj„h²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1júhj€h²hh³Œ]/var/lib/git/docbuild/linux/Documentation/crypto/api-akcipher:16: ./include/crypto/akcipher.h”h´Mfubj)�”}”(hŒ ”h]”hŒ ”…”�”}”(hj“h²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhj€h²hh³j’h´Mfubj")�”}”(hŒcrypto_akcipher_set_priv_key”h]”j()�”}”(hŒcrypto_akcipher_set_priv_key”h]”hŒcrypto_akcipher_set_priv_key”…”�”}”(hj¥h²hh³Nh´Nubah}”(h]”h ]”j3ah"]”h$]”h&]”uh1j'hj¡ubah}”(h]”h ]”(j:j;eh"]”h$]”h&]”j?j@uh1j!hj€h²hh³j’h´MfubjÓ)�”}”(hŒC(struct crypto_akcipher *tfm, const void *key, unsigned int keylen)”•Tœh]”(jÙ)�”}”(hŒstruct crypto_akcipher *tfm”h]”(hÿ)�”}”(hjh]”hŒstruct”…”�”}”(hjÁh²hh³Nh´Nubah}”(h]”h ]”j ah"]”h$]”h&]”uh1hþhj½ubj)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjÎh²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhj½ubh)�”}”(hhh]”j()�”}”(hŒcrypto_akcipher”h]”hŒcrypto_akcipher”…”�”}”(hjßh²hh³Nh´Nubah}”(h]”h ]”j3ah"]”h$]”h&]”uh1j'hjÜubah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”jtŒreftype”j‰Œ reftarget”jáŒmodname”NŒ classname”Nj�j�)�”}”j“]”j–)�”}”j‰j§sbŒc.crypto_akcipher_set_priv_key”†”asbuh1hhj½ubj)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjÿh²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhj½ubj«)�”}”(hj®h]”hŒ*”…”�”}”(hj h²hh³Nh´Nubah}”(h]”h ]”j·ah"]”h$]”h&]”uh1jªhj½ubj()�”}”(hŒtfm”h]”hŒtfm”…”�”}”(hjh²hh³Nh´Nubah}”(h]”h ]”j3ah"]”h$]”h&]”uh1j'hj½ubeh}”(h]”h ]”h"]”h$]”h&]”Œnoemph”ˆj?j@uh1jØhj¹ubjÙ)�”}”(hŒconst void *key”h]”(hÿ)�”}”(hjàh]”hŒconst”…”�”}”(hj3h²hh³Nh´Nubah}”(h]”h ]”j ah"]”h$]”h&]”uh1hþhj/ubj)�”}”(hŒ ”h]”hŒ ”…”�”}”(hj@h²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhj/ubjû)�”}”(hŒvoid”h]”hŒvoid”…”�”}”(hjNh²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1júhj/ubj)�”}”(hŒ ”h]”hŒ ”…”�”}”(hj\h²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhj/ubj«)�”}”(hj®h]”hŒ*”…”�”}”(hjjh²hh³Nh´Nubah}”(h]”h ]”j·ah"]”h$]”h&]”uh1jªhj/ubj()�”}”(hŒkey”h]”hŒkey”…”�”}”(hjwh²hh³Nh´Nubah}”(h]”h ]”j3ah"]”h$]”h&]”uh1j'hj/ubeh}”(h]”h ]”h"]”h$]”h&]”Œnoemph”ˆj?j@uh1jØhj¹ubjÙ)�”}”(hŒunsigned int keylen”h]”(jû)�”}”(hŒunsigned”h]”hŒunsigned”…”�”}”(hj�h²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1júhjŒubj)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjžh²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhjŒubjû)�”}”(hŒint”h]”hŒint”…”�”}”(hj¬h²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1júhjŒubj)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjºh²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhjŒubj()�”}”(hŒkeylen”h]”hŒkeylen”…”�”}”(hjÈh²hh³Nh´Nubah}”(h]”h ]”j3ah"]”h$]”h&]”uh1j'hjŒubeh}”(h]”h ]”h"]”h$]”h&]”Œnoemph”ˆj?j@uh1jØhj¹ubeh}”(h]”h ]”h"]”h$]”h&]”j?j@uh1jÒhj€h²hh³j’h´Mfubeh}”(h]”h ]”h"]”h$]”h&]”j?j@jGˆuh1højHjIhj|h²hh³j’h´Mfubah}”(h]”jwah ]”(jMjNeh"]”h$]”h&]”jRˆjS)jThuh1hòh³j’h´Mfhjyh²hubjV)�”}”(hhh]”j[)�”}”(hŒ Invoke set private key operation”h]”hŒ Invoke set private key operation”…”�”}”(hjòh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jZh³Œ]/var/lib/git/docbuild/linux/Documentation/crypto/api-akcipher:16: ./include/crypto/akcipher.h”h´Mfhjïh²hubah}”(h]”h ]”h"]”h$]”h&]”uh1jUhjyh²hh³j’h´Mfubeh}”(h]”h ]”(jtŒfunction”eh"]”h$]”h&]”jyjtjzj j{j j|‰j}‰j~‰uh1híh²hhjh³Nh´Nubj€)�”}”(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 error”h]”(j[)�”}”(hŒ**Parameters**”h]”jŠ)�”}”(hjh]”hŒ Parameters”…”�”}”(hjh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j‰hjubah}”(h]”h ]”h"]”h$]”h&]”uh1jZh³Œ]/var/lib/git/docbuild/linux/Documentation/crypto/api-akcipher:16: ./include/crypto/akcipher.h”h´MjhjubjÎ)�”}”(hhh]”(jÓ)�”}”(hŒ+``struct crypto_akcipher *tfm`` tfm handle ”h]”(jÙ)�”}”(hŒ``struct crypto_akcipher *tfm``”h]”jß)�”}”(hj3h]”hŒstruct crypto_akcipher *tfm”…”�”}”(hj5h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jÞhj1ubah}”(h]”h ]”h"]”h$]”h&]”uh1jØh³Œ]/var/lib/git/docbuild/linux/Documentation/crypto/api-akcipher:16: ./include/crypto/akcipher.h”h´Mkhj-ubjõ)�”}”(hhh]”j[)�”}”(hŒ tfm handle”h]”hŒ tfm handle”…”�”}”(hjLh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jZh³jHh´MkhjIubah}”(h]”h ]”h"]”h$]”h&]”uh1jôhj-ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jÒh³jHh´Mkhj*ubjÓ)�”}”(hŒX``const void *key`` BER encoded private key, algo OID, paramlen, BER encoded parameters ”h]”(jÙ)�”}”(hŒ``const void *key``”h]”jß)�”}”(hjlh]”hŒconst void *key”…”�”}”(hjnh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jÞhjjubah}”(h]”h ]”h"]”h$]”h&]”uh1jØh³Œ]/var/lib/git/docbuild/linux/Documentation/crypto/api-akcipher:16: ./include/crypto/akcipher.h”h´Mmhjfubjõ)�”}”(hhh]”j[)�”}”(hŒCBER encoded private key, algo OID, paramlen, BER encoded parameters”h]”hŒCBER encoded private key, algo OID, paramlen, BER encoded parameters”…”�”}”(hj…h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jZh³Œ]/var/lib/git/docbuild/linux/Documentation/crypto/api-akcipher:16: ./include/crypto/akcipher.h”h´Mlhj‚ubah}”(h]”h ]”h"]”h$]”h&]”uh1jôhjfubeh}”(h]”h ]”h"]”h$]”h&]”uh1jÒh³j�h´Mmhj*ubjÓ)�”}”(hŒE``unsigned int keylen`` length of the key (not including other data) ”h]”(jÙ)�”}”(hŒ``unsigned int keylen``”h]”jß)�”}”(hj¦h]”hŒunsigned int keylen”…”�”}”(hj¨h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jÞhj¤ubah}”(h]”h ]”h"]”h$]”h&]”uh1jØh³Œ]/var/lib/git/docbuild/linux/Documentation/crypto/api-akcipher:16: ./include/crypto/akcipher.h”h´Mnhj ubjõ)�”}”(hhh]”j[)�”}”(hŒ,length of the key (not including other data)”h]”hŒ,length of the key (not including other data)”…”�”}”(hj¿h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jZh³j»h´Mnhj¼ubah}”(h]”h ]”h"]”h$]”h&]”uh1jôhj ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jÒh³j»h´Mnhj*ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jÍhjubj[)�”}”(hŒ**Description**”h]”jŠ)�”}”(hjáh]”hŒ Description”…”�”}”(hjãh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j‰hjßubah}”(h]”h ]”h"]”h$]”h&]”uh1jZh³Œ]/var/lib/git/docbuild/linux/Documentation/crypto/api-akcipher:16: ./include/crypto/akcipher.h”h´Mphjubj[)�”}”(hŒ€Function invokes the algorithm specific set key function, which knows how to decode and interpret the encoded key and parameters”h]”hŒ€Function invokes the algorithm specific set key function, which knows how to decode and interpret the encoded key and parameters”…”�”}”(hj÷h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jZh³Œ]/var/lib/git/docbuild/linux/Documentation/crypto/api-akcipher:16: ./include/crypto/akcipher.h”h´Mghjubj[)�”}”(hŒ **Return**”h]”jŠ)�”}”(hjh]”hŒReturn”…”�”}”(hj h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j‰hjubah}”(h]”h ]”h"]”h$]”h&]”uh1jZh³Œ]/var/lib/git/docbuild/linux/Documentation/crypto/api-akcipher:16: ./include/crypto/akcipher.h”h´Mjhjubj[)�”}”(hŒ,zero on success; error code in case of error”h]”hŒ,zero on success; error code in case of error”…”�”}”(hjh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jZh³Œ]/var/lib/git/docbuild/linux/Documentation/crypto/api-akcipher:16: ./include/crypto/akcipher.h”h´Mphjubeh}”(h]”h ]”Œ kernelindent”ah"]”h$]”h&]”uh1jhjh²hh³Nh´Nubeh}”(h]”Œasymmetric-cipher-api”ah ]”h"]”Œasymmetric cipher api”ah$]”h&]”uh1hµhh·h²hh³hÊh´K ubh¶)�”}”(hhh]”(h»)�”}”(hŒ Asymmetric Cipher Request Handle”h]”hŒ Asymmetric Cipher Request Handle”…”�”}”(hj?h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hºhj<h²hh³hÊh´KubhÝ)�”}”(hhh]”h}”(h]”h ]”h"]”h$]”h&]”Œentries”]”(héŒ#akcipher_request_alloc (C function)”Œc.akcipher_request_alloc”hNt”auh1hÜhj<h²hh³Nh´Nubhî)�”}”(hhh]”(hó)�”}”(hŒYstruct akcipher_request * akcipher_request_alloc (struct crypto_akcipher *tfm, gfp_t gfp)”h]”hù)�”}”(hŒWstruct akcipher_request *akcipher_request_alloc(struct crypto_akcipher *tfm, gfp_t gfp)”h]”(hÿ)�”}”(hjh]”hŒstruct”…”�”}”(hjfh²hh³Nh´Nubah}”(h]”h ]”j ah"]”h$]”h&]”uh1hþhjbh²hh³Œ]/var/lib/git/docbuild/linux/Documentation/crypto/api-akcipher:22: ./include/crypto/akcipher.h”h´K¯ubj)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjth²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhjbh²hh³jsh´K¯ubh)�”}”(hhh]”j()�”}”(hŒakcipher_request”h]”hŒakcipher_request”…”�”}”(hj…h²hh³Nh´Nubah}”(h]”h ]”j3ah"]”h$]”h&]”uh1j'hj‚ubah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”jtŒreftype”j‰Œ reftarget”j‡Œmodname”NŒ classname”Nj�j�)�”}”j“]”j–)�”}”j‰Œakcipher_request_alloc”sbŒc.akcipher_request_alloc”†”asbuh1hhjbh²hh³jsh´K¯ubj)�”}”(hŒ ”h]”hŒ ”…”�”}”(hj¦h²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhjbh²hh³jsh´K¯ubj«)�”}”(hj®h]”hŒ*”…”�”}”(hj´h²hh³Nh´Nubah}”(h]”h ]”j·ah"]”h$]”h&]”uh1jªhjbh²hh³jsh´K¯ubj")�”}”(hŒakcipher_request_alloc”h]”j()�”}”(hj£h]”hŒakcipher_request_alloc”…”�”}”(hjÅh²hh³Nh´Nubah}”(h]”h ]”j3ah"]”h$]”h&]”uh1j'hjÁubah}”(h]”h ]”(j:j;eh"]”h$]”h&]”j?j@uh1j!hjbh²hh³jsh´K¯ubjÓ)�”}”(hŒ((struct crypto_akcipher *tfm, gfp_t gfp)”h]”(jÙ)�”}”(hŒstruct crypto_akcipher *tfm”h]”(hÿ)�”}”(hjh]”hŒstruct”…”�”}”(hjàh²hh³Nh´Nubah}”(h]”h ]”j ah"]”h$]”h&]”uh1hþhjÜubj)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjíh²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhjÜubh)�”}”(hhh]”j()�”}”(hŒcrypto_akcipher”h]”hŒcrypto_akcipher”…”�”}”(hjþh²hh³Nh´Nubah}”(h]”h ]”j3ah"]”h$]”h&]”uh1j'hjûubah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”jtŒreftype”j‰Œ reftarget”jŒmodname”NŒ classname”Nj�j�)�”}”j“]”j¡Œc.akcipher_request_alloc”†”asbuh1hhjÜubj)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjh²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhjÜubj«)�”}”(hj®h]”hŒ*”…”�”}”(hj*h²hh³Nh´Nubah}”(h]”h ]”j·ah"]”h$]”h&]”uh1jªhjÜubj()�”}”(hŒtfm”h]”hŒtfm”…”�”}”(hj7h²hh³Nh´Nubah}”(h]”h ]”j3ah"]”h$]”h&]”uh1j'hjÜubeh}”(h]”h ]”h"]”h$]”h&]”Œnoemph”ˆj?j@uh1jØhjØubjÙ)�”}”(hŒ gfp_t gfp”h]”(h)�”}”(hhh]”j()�”}”(hŒgfp_t”h]”hŒgfp_t”…”�”}”(hjSh²hh³Nh´Nubah}”(h]”h ]”j3ah"]”h$]”h&]”uh1j'hjPubah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”jtŒreftype”j‰Œ reftarget”jUŒmodname”NŒ classname”Nj�j�)�”}”j“]”j¡Œc.akcipher_request_alloc”†”asbuh1hhjLubj)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjqh²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhjLubj()�”}”(hŒgfp”h]”hŒgfp”…”�”}”(hjh²hh³Nh´Nubah}”(h]”h ]”j3ah"]”h$]”h&]”uh1j'hjLubeh}”(h]”h ]”h"]”h$]”h&]”Œnoemph”ˆj?j@uh1jØhjØubeh}”(h]”h ]”h"]”h$]”h&]”j?j@uh1jÒhjbh²hh³jsh´K¯ubeh}”(h]”h ]”h"]”h$]”h&]”j?j@jGˆuh1højHjIhj^h²hh³jsh´K¯ubah}”(h]”jYah ]”(jMjNeh"]”h$]”h&]”jRˆjS)jThuh1hòh³jsh´K¯hj[h²hubjV)�”}”(hhh]”j[)�”}”(hŒallocates public key request”h]”hŒallocates public key request”…”�”}”(hj©h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jZh³Œ]/var/lib/git/docbuild/linux/Documentation/crypto/api-akcipher:22: ./include/crypto/akcipher.h”h´K¯hj¦h²hubah}”(h]”h ]”h"]”h$]”h&]”uh1jUhj[h²hh³jsh´K¯ubeh}”(h]”h ]”(jtŒfunction”eh"]”h$]”h&]”jyjtjzjÁj{jÁj|‰j}‰j~‰uh1híh²hhj<h³Nh´Nubj€)�”}”(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]”(j[)�”}”(hŒ**Parameters**”h]”jŠ)�”}”(hjËh]”hŒ Parameters”…”�”}”(hjÍh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j‰hjÉubah}”(h]”h ]”h"]”h$]”h&]”uh1jZh³Œ]/var/lib/git/docbuild/linux/Documentation/crypto/api-akcipher:22: ./include/crypto/akcipher.h”h´K³hjÅ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]”hŒstruct crypto_akcipher *tfm”…”�”}”(hjìh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jÞhjèubah}”(h]”h ]”h"]”h$]”h&]”uh1jØh³Œ]/var/lib/git/docbuild/linux/Documentation/crypto/api-akcipher:22: ./include/crypto/akcipher.h”h´K±hjäubjõ)�”}”(hhh]”j[)�”}”(hŒ:AKCIPHER tfm handle allocated with crypto_alloc_akcipher()”h]”hŒ:AKCIPHER tfm handle allocated with crypto_alloc_akcipher()”…”�”}”(hjh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jZh³jÿh´K±hjubah}”(h]”h ]”h"]”h$]”h&]”uh1jôhjäubeh}”(h]”h ]”h"]”h$]”h&]”uh1jÒh³jÿh´K±hjáubjÓ)�”}”(hŒ``gfp_t gfp`` allocation flags ”h]”(jÙ)�”}”(hŒ ``gfp_t gfp``”h]”jß)�”}”(hj#h]”hŒ gfp_t gfp”…”�”}”(hj%h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jÞhj!ubah}”(h]”h ]”h"]”h$]”h&]”uh1jØh³Œ]/var/lib/git/docbuild/linux/Documentation/crypto/api-akcipher:22: ./include/crypto/akcipher.h”h´K²hjubjõ)�”}”(hhh]”j[)�”}”(hŒallocation flags”h]”hŒallocation flags”…”�”}”(hj<h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jZh³j8h´K²hj9ubah}”(h]”h ]”h"]”h$]”h&]”uh1jôhjubeh}”(h]”h ]”h"]”h$]”h&]”uh1jÒh³j8h´K²hjáubeh}”(h]”h ]”h"]”h$]”h&]”uh1jÍhjÅubj[)�”}”(hŒ **Return**”h]”jŠ)�”}”(hj^h]”hŒReturn”…”�”}”(hj`h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j‰hj\ubah}”(h]”h ]”h"]”h$]”h&]”uh1jZh³Œ]/var/lib/git/docbuild/linux/Documentation/crypto/api-akcipher:22: ./include/crypto/akcipher.h”h´K´hjÅubj[)�”}”(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.”…”�”}”(hjth²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jZh³Œ]/var/lib/git/docbuild/linux/Documentation/crypto/api-akcipher:22: ./include/crypto/akcipher.h”h´K´hjÅubeh}”(h]”h ]”Œ kernelindent”ah"]”h$]”h&]”uh1jhj<h²hh³Nh´NubhÝ)�”}”(hhh]”h}”(h]”h ]”h"]”h$]”h&]”Œentries”]”(héŒ"akcipher_request_free (C function)”Œc.akcipher_request_free”hNt”auh1hÜhj<h²hh³Nh´Nubhî)�”}”(hhh]”(hó)�”}”(hŒ9void akcipher_request_free (struct akcipher_request *req)”h]”hù)�”}”(hŒ8void akcipher_request_free(struct akcipher_request *req)”h]”(jû)�”}”(hŒvoid”h]”hŒvoid”…”�”}”(hj£h²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1júhjŸh²hh³Œ]/var/lib/git/docbuild/linux/Documentation/crypto/api-akcipher:22: ./include/crypto/akcipher.h”h´KÃubj)�”}”(hŒ ”h]”hŒ ”…”�”}”(hj²h²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhjŸh²hh³j±h´KÃubj")�”}”(hŒakcipher_request_free”h]”j()�”}”(hŒakcipher_request_free”h]”hŒakcipher_request_free”…”�”}”(hjÄh²hh³Nh´Nubah}”(h]”h ]”j3ah"]”h$]”h&]”uh1j'hjÀubah}”(h]”h ]”(j:j;eh"]”h$]”h&]”j?j@uh1j!hjŸh²hh³j±h´KÃubjÓ)�”}”(hŒ(struct akcipher_request *req)”h]”jÙ)�”}”(hŒstruct akcipher_request *req”h]”(hÿ)�”}”(hjh]”hŒstruct”…”�”}”(hjàh²hh³Nh´Nubah}”(h]”h ]”j ah"]”h$]”h&]”uh1hþhjÜubj)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjíh²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhjÜubh)�”}”(hhh]”j()�”}”(hŒakcipher_request”h]”hŒakcipher_request”…”�”}”(hjþh²hh³Nh´Nubah}”(h]”h ]”j3ah"]”h$]”h&]”uh1j'hjûubah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”jtŒreftype”j‰Œ reftarget”jŒmodname”NŒ classname”Nj�j�)�”}”j“]”j–)�”}”j‰jÆsbŒc.akcipher_request_free”†”asbuh1hhjÜubj)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjh²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhjÜubj«)�”}”(hj®h]”hŒ*”…”�”}”(hj,h²hh³Nh´Nubah}”(h]”h ]”j·ah"]”h$]”h&]”uh1jªhjÜubj()�”}”(hŒreq”h]”hŒreq”…”�”}”(hj9h²hh³Nh´Nubah}”(h]”h ]”j3ah"]”h$]”h&]”uh1j'hjÜubeh}”(h]”h ]”h"]”h$]”h&]”Œnoemph”ˆj?j@uh1jØhjØubah}”(h]”h ]”h"]”h$]”h&]”j?j@uh1jÒhjŸh²hh³j±h´KÃubeh}”(h]”h ]”h"]”h$]”h&]”j?j@jGˆuh1højHjIhj›h²hh³j±h´KÃubah}”(h]”j–ah ]”(jMjNeh"]”h$]”h&]”jRˆjS)jThuh1hòh³j±h´KÃhj˜h²hubjV)�”}”(hhh]”j[)�”}”(hŒ#zeroize and free public key request”h]”hŒ#zeroize and free public key request”…”�”}”(hjch²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jZh³Œ]/var/lib/git/docbuild/linux/Documentation/crypto/api-akcipher:22: ./include/crypto/akcipher.h”h´KÃhj`h²hubah}”(h]”h ]”h"]”h$]”h&]”uh1jUhj˜h²hh³j±h´KÃubeh}”(h]”h ]”(jtŒfunction”eh"]”h$]”h&]”jyjtjzj{j{j{j|‰j}‰j~‰uh1híh²hhj<h³Nh´Nubj€)�”}”(hŒB**Parameters** ``struct akcipher_request *req`` request to free”h]”(j[)�”}”(hŒ**Parameters**”h]”jŠ)�”}”(hj…h]”hŒ Parameters”…”�”}”(hj‡h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j‰hjƒubah}”(h]”h ]”h"]”h$]”h&]”uh1jZh³Œ]/var/lib/git/docbuild/linux/Documentation/crypto/api-akcipher:22: ./include/crypto/akcipher.h”h´KÇhjubjÎ)�”}”(hhh]”jÓ)�”}”(hŒ0``struct akcipher_request *req`` request to free”h]”(jÙ)�”}”(hŒ ``struct akcipher_request *req``”h]”jß)�”}”(hj¤h]”hŒstruct akcipher_request *req”…”�”}”(hj¦h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jÞhj¢ubah}”(h]”h ]”h"]”h$]”h&]”uh1jØh³Œ]/var/lib/git/docbuild/linux/Documentation/crypto/api-akcipher:22: ./include/crypto/akcipher.h”h´KÉhjžubjõ)�”}”(hhh]”j[)�”}”(hŒrequest to free”h]”hŒrequest to free”…”�”}”(hj½h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jZh³Œ]/var/lib/git/docbuild/linux/Documentation/crypto/api-akcipher:22: ./include/crypto/akcipher.h”h´KÅhjºubah}”(h]”h ]”h"]”h$]”h&]”uh1jôhjžubeh}”(h]”h ]”h"]”h$]”h&]”uh1jÒh³j¹h´KÉhj›ubah}”(h]”h ]”h"]”h$]”h&]”uh1jÍhjubeh}”(h]”h ]”Œ kernelindent”ah"]”h$]”h&]”uh1jhj<h²hh³Nh´NubhÝ)�”}”(hhh]”h}”(h]”h ]”h"]”h$]”h&]”Œentries”]”(héŒ*akcipher_request_set_callback (C function)”Œc.akcipher_request_set_callback”hNt”auh1hÜhj<h²hh³Nh´Nubhî)�”}”(hhh]”(hó)�”}”(hŒqvoid akcipher_request_set_callback (struct akcipher_request *req, u32 flgs, crypto_completion_t cmpl, void *data)”h]”hù)�”}”(hŒpvoid akcipher_request_set_callback(struct akcipher_request *req, u32 flgs, crypto_completion_t cmpl, void *data)”h]”(jû)�”}”(hŒvoid”h]”hŒvoid”…”�”}”(hjþh²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1júhjúh²hh³Œ]/var/lib/git/docbuild/linux/Documentation/crypto/api-akcipher:22: ./include/crypto/akcipher.h”h´KÍubj)�”}”(hŒ ”h]”hŒ ”…”�”}”(hj h²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhjúh²hh³j h´KÍubj")�”}”(hŒakcipher_request_set_callback”h]”j()�”}”(hŒakcipher_request_set_callback”h]”hŒakcipher_request_set_callback”…”�”}”(hjh²hh³Nh´Nubah}”(h]”h ]”j3ah"]”h$]”h&]”uh1j'hjubah}”(h]”h ]”(j:j;eh"]”h$]”h&]”j?j@uh1j!hjúh²hh³j h´KÍubjÓ)�”}”(hŒN(struct akcipher_request *req, u32 flgs, crypto_completion_t cmpl, void *data)”h]”(jÙ)�”}”(hŒstruct akcipher_request *req”h]”(hÿ)�”}”(hjh]”hŒstruct”…”�”}”(hj;h²hh³Nh´Nubah}”(h]”h ]”j ah"]”h$]”h&]”uh1hþhj7ubj)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjHh²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhj7ubh)�”}”(hhh]”j()�”}”(hŒakcipher_request”h]”hŒakcipher_request”…”�”}”(hjYh²hh³Nh´Nubah}”(h]”h ]”j3ah"]”h$]”h&]”uh1j'hjVubah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”jtŒreftype”j‰Œ reftarget”j[Œmodname”NŒ classname”Nj�j�)�”}”j“]”j–)�”}”j‰j!sbŒc.akcipher_request_set_callback”†”asbuh1hhj7ubj)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjyh²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhj7ubj«)�”}”(hj®h]”hŒ*”…”�”}”(hj‡h²hh³Nh´Nubah}”(h]”h ]”j·ah"]”h$]”h&]”uh1jªhj7ubj()�”}”(hŒreq”h]”hŒreq”…”�”}”(hj”h²hh³Nh´Nubah}”(h]”h ]”j3ah"]”h$]”h&]”uh1j'hj7ubeh}”(h]”h ]”h"]”h$]”h&]”Œnoemph”ˆj?j@uh1jØhj3ubjÙ)�”}”(hŒu32 flgs”h]”(h)�”}”(hhh]”j()�”}”(hŒu32”h]”hŒu32”…”�”}”(hj°h²hh³Nh´Nubah}”(h]”h ]”j3ah"]”h$]”h&]”uh1j'hj­ubah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”jtŒreftype”j‰Œ reftarget”j²Œmodname”NŒ classname”Nj�j�)�”}”j“]”juŒc.akcipher_request_set_callback”†”asbuh1hhj©ubj)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjÎh²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhj©ubj()�”}”(hŒflgs”h]”hŒflgs”…”�”}”(hjÜh²hh³Nh´Nubah}”(h]”h ]”j3ah"]”h$]”h&]”uh1j'hj©ubeh}”(h]”h ]”h"]”h$]”h&]”Œnoemph”ˆj?j@uh1jØhj3ubjÙ)�”}”(hŒcrypto_completion_t cmpl”h]”(h)�”}”(hhh]”j()�”}”(hŒcrypto_completion_t”h]”hŒcrypto_completion_t”…”�”}”(hjøh²hh³Nh´Nubah}”(h]”h ]”j3ah"]”h$]”h&]”uh1j'hjõubah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”jtŒreftype”j‰Œ reftarget”júŒmodname”NŒ classname”Nj�j�)�”}”j“]”juŒc.akcipher_request_set_callback”†”asbuh1hhjñubj)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjh²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhjñubj()�”}”(hŒcmpl”h]”hŒcmpl”…”�”}”(hj$h²hh³Nh´Nubah}”(h]”h ]”j3ah"]”h$]”h&]”uh1j'hjñubeh}”(h]”h ]”h"]”h$]”h&]”Œnoemph”ˆj?j@uh1jØhj3ubjÙ)�”}”(hŒ void *data”h]”(jû)�”}”(hŒvoid”h]”hŒvoid”…”�”}”(hj=h²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1júhj9ubj)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjKh²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhj9ubj«)�”}”(hj®h]”hŒ*”…”�”}”(hjYh²hh³Nh´Nubah}”(h]”h ]”j·ah"]”h$]”h&]”uh1jªhj9ubj()�”}”(hŒdata”h]”hŒdata”…”�”}”(hjfh²hh³Nh´Nubah}”(h]”h ]”j3ah"]”h$]”h&]”uh1j'hj9ubeh}”(h]”h ]”h"]”h$]”h&]”Œnoemph”ˆj?j@uh1jØhj3ubeh}”(h]”h ]”h"]”h$]”h&]”j?j@uh1jÒhjúh²hh³j h´KÍubeh}”(h]”h ]”h"]”h$]”h&]”j?j@jGˆuh1højHjIhjöh²hh³j h´KÍubah}”(h]”jñah ]”(jMjNeh"]”h$]”h&]”jRˆjS)jThuh1hòh³j h´KÍhjóh²hubjV)�”}”(hhh]”j[)�”}”(hŒSets an asynchronous callback.”h]”hŒSets an asynchronous callback.”…”�”}”(hj�h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jZh³Œ]/var/lib/git/docbuild/linux/Documentation/crypto/api-akcipher:22: ./include/crypto/akcipher.h”h´KÍhj�h²hubah}”(h]”h ]”h"]”h$]”h&]”uh1jUhjóh²hh³j h´KÍubeh}”(h]”h ]”(jtŒfunction”eh"]”h$]”h&]”jyjtjzj¨j{j¨j|‰j}‰j~‰uh1híh²hhj<h³Nh´Nubj€)�”}”(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]”(j[)�”}”(hŒ**Parameters**”h]”jŠ)�”}”(hj²h]”hŒ Parameters”…”�”}”(hj´h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j‰hj°ubah}”(h]”h ]”h"]”h$]”h&]”uh1jZh³Œ]/var/lib/git/docbuild/linux/Documentation/crypto/api-akcipher:22: ./include/crypto/akcipher.h”h´KÑhj¬ubjÎ)�”}”(hhh]”(jÓ)�”}”(hŒK``struct akcipher_request *req`` request that the callback will be set for ”h]”(jÙ)�”}”(hŒ ``struct akcipher_request *req``”h]”jß)�”}”(hjÑh]”hŒstruct akcipher_request *req”…”�”}”(hjÓh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jÞhjÏubah}”(h]”h ]”h"]”h$]”h&]”uh1jØh³Œ]/var/lib/git/docbuild/linux/Documentation/crypto/api-akcipher:22: ./include/crypto/akcipher.h”h´KÒhjËubjõ)�”}”(hhh]”j[)�”}”(hŒ)request that the callback will be set for”h]”hŒ)request that the callback will be set for”…”�”}”(hjêh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jZh³jæh´KÒhjçubah}”(h]”h ]”h"]”h$]”h&]”uh1jôhjËubeh}”(h]”h ]”h"]”h$]”h&]”uh1jÒh³jæh´KÒhjÈubjÓ)�”}”(hŒ?``u32 flgs`` specify for instance if the operation may backlog ”h]”(jÙ)�”}”(hŒ ``u32 flgs``”h]”jß)�”}”(hj h]”hŒu32 flgs”…”�”}”(hj h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jÞhjubah}”(h]”h ]”h"]”h$]”h&]”uh1jØh³Œ]/var/lib/git/docbuild/linux/Documentation/crypto/api-akcipher:22: ./include/crypto/akcipher.h”h´KÓhjubjõ)�”}”(hhh]”j[)�”}”(hŒ1specify for instance if the operation may backlog”h]”hŒ1specify for instance if the operation may backlog”…”�”}”(hj#h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jZh³jh´KÓhj ubah}”(h]”h ]”h"]”h$]”h&]”uh1jôhjubeh}”(h]”h ]”h"]”h$]”h&]”uh1jÒh³jh´KÓhjÈubjÓ)�”}”(hŒ;``crypto_completion_t cmpl`` callback which will be called ”h]”(jÙ)�”}”(hŒ``crypto_completion_t cmpl``”h]”jß)�”}”(hjCh]”hŒcrypto_completion_t cmpl”…”�”}”(hjEh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jÞhjAubah}”(h]”h ]”h"]”h$]”h&]”uh1jØh³Œ]/var/lib/git/docbuild/linux/Documentation/crypto/api-akcipher:22: ./include/crypto/akcipher.h”h´KÔhj=ubjõ)�”}”(hhh]”j[)�”}”(hŒcallback which will be called”h]”hŒcallback which will be called”…”�”}”(hj\h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jZh³jXh´KÔhjYubah}”(h]”h ]”h"]”h$]”h&]”uh1jôhj=ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jÒh³jXh´KÔhjÈubjÓ)�”}”(hŒ/``void *data`` private data used by the caller ”h]”(jÙ)�”}”(hŒ``void *data``”h]”jß)�”}”(hj|h]”hŒ void *data”…”�”}”(hj~h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jÞhjzubah}”(h]”h ]”h"]”h$]”h&]”uh1jØh³Œ]/var/lib/git/docbuild/linux/Documentation/crypto/api-akcipher:22: ./include/crypto/akcipher.h”h´KÕhjvubjõ)�”}”(hhh]”j[)�”}”(hŒprivate data used by the caller”h]”hŒprivate data used by the caller”…”�”}”(hj•h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jZh³j‘h´KÕhj’ubah}”(h]”h ]”h"]”h$]”h&]”uh1jôhjvubeh}”(h]”h ]”h"]”h$]”h&]”uh1jÒh³j‘h´KÕhjÈubeh}”(h]”h ]”h"]”h$]”h&]”uh1jÍhj¬ubj[)�”}”(hŒ**Description**”h]”jŠ)�”}”(hj·h]”hŒ Description”…”�”}”(hj¹h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j‰hjµubah}”(h]”h ]”h"]”h$]”h&]”uh1jZh³Œ]/var/lib/git/docbuild/linux/Documentation/crypto/api-akcipher:22: ./include/crypto/akcipher.h”h´K×hj¬ubj[)�”}”(hŒVCallback will be called when an asynchronous operation on a given request is finished.”h]”hŒVCallback will be called when an asynchronous operation on a given request is finished.”…”�”}”(hjÍh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jZh³Œ]/var/lib/git/docbuild/linux/Documentation/crypto/api-akcipher:22: ./include/crypto/akcipher.h”h´KÎhj¬ubeh}”(h]”h ]”Œ kernelindent”ah"]”h$]”h&]”uh1jhj<h²hh³Nh´NubhÝ)�”}”(hhh]”h}”(h]”h ]”h"]”h$]”h&]”Œentries”]”(héŒ'akcipher_request_set_crypt (C function)”Œc.akcipher_request_set_crypt”hNt”auh1hÜhj<h²hh³Nh´Nubhî)�”}”(hhh]”(hó)�”}”(hŒœvoid akcipher_request_set_crypt (struct akcipher_request *req, struct scatterlist *src, struct scatterlist *dst, unsigned int src_len, unsigned int dst_len)”h]”hù)�”}”(hŒ›void akcipher_request_set_crypt(struct akcipher_request *req, struct scatterlist *src, struct scatterlist *dst, unsigned int src_len, unsigned int dst_len)”h]”(jû)�”}”(hŒvoid”h]”hŒvoid”…”�”}”(hjüh²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1júhjøh²hh³Œ]/var/lib/git/docbuild/linux/Documentation/crypto/api-akcipher:22: ./include/crypto/akcipher.h”h´Kâubj)�”}”(hŒ ”h]”hŒ ”…”�”}”(hj h²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhjøh²hh³j h´Kâubj")�”}”(hŒakcipher_request_set_crypt”h]”j()�”}”(hŒakcipher_request_set_crypt”h]”hŒakcipher_request_set_crypt”…”�”}”(hjh²hh³Nh´Nubah}”(h]”h ]”j3ah"]”h$]”h&]”uh1j'hjubah}”(h]”h ]”(j:j;eh"]”h$]”h&]”j?j@uh1j!hjøh²hh³j h´KâubjÓ)�”}”(hŒ|(struct akcipher_request *req, struct scatterlist *src, struct scatterlist *dst, unsigned int src_len, unsigned int dst_len)”h]”(jÙ)�”}”(hŒstruct akcipher_request *req”h]”(hÿ)�”}”(hjh]”hŒstruct”…”�”}”(hj9h²hh³Nh´Nubah}”(h]”h ]”j ah"]”h$]”h&]”uh1hþhj5ubj)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjFh²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhj5ubh)�”}”(hhh]”j()�”}”(hŒakcipher_request”h]”hŒakcipher_request”…”�”}”(hjWh²hh³Nh´Nubah}”(h]”h ]”j3ah"]”h$]”h&]”uh1j'hjTubah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”jtŒreftype”j‰Œ reftarget”jYŒmodname”NŒ classname”Nj�j�)�”}”j“]”j–)�”}”j‰jsbŒc.akcipher_request_set_crypt”†”asbuh1hhj5ubj)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjwh²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhj5ubj«)�”}”(hj®h]”hŒ*”…”�”}”(hj…h²hh³Nh´Nubah}”(h]”h ]”j·ah"]”h$]”h&]”uh1jªhj5ubj()�”}”(hŒreq”h]”hŒreq”…”�”}”(hj’h²hh³Nh´Nubah}”(h]”h ]”j3ah"]”h$]”h&]”uh1j'hj5ubeh}”(h]”h ]”h"]”h$]”h&]”Œnoemph”ˆj?j@uh1jØhj1ubjÙ)�”}”(hŒstruct scatterlist *src”h]”(hÿ)�”}”(hjh]”hŒstruct”…”�”}”(hj«h²hh³Nh´Nubah}”(h]”h ]”j ah"]”h$]”h&]”uh1hþhj§ubj)�”}”(hŒ ”h]”hŒ ”…”�”}”(hj¸h²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhj§ubh)�”}”(hhh]”j()�”}”(hŒ scatterlist”h]”hŒ scatterlist”…”�”}”(hjÉh²hh³Nh´Nubah}”(h]”h ]”j3ah"]”h$]”h&]”uh1j'hjÆubah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”jtŒreftype”j‰Œ reftarget”jËŒmodname”NŒ classname”Nj�j�)�”}”j“]”jsŒc.akcipher_request_set_crypt”†”asbuh1hhj§ubj)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjçh²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhj§ubj«)�”}”(hj®h]”hŒ*”…”�”}”(hjõh²hh³Nh´Nubah}”(h]”h ]”j·ah"]”h$]”h&]”uh1jªhj§ubj()�”}”(hŒsrc”h]”hŒsrc”…”�”}”(hjh²hh³Nh´Nubah}”(h]”h ]”j3ah"]”h$]”h&]”uh1j'hj§ubeh}”(h]”h ]”h"]”h$]”h&]”Œnoemph”ˆj?j@uh1jØhj1ubjÙ)�”}”(hŒstruct scatterlist *dst”h]”(hÿ)�”}”(hjh]”hŒstruct”…”�”}”(hjh²hh³Nh´Nubah}”(h]”h ]”j ah"]”h$]”h&]”uh1hþhjubj)�”}”(hŒ ”h]”hŒ ”…”�”}”(hj(h²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhjubh)�”}”(hhh]”j()�”}”(hŒ scatterlist”h]”hŒ scatterlist”…”�”}”(hj9h²hh³Nh´Nubah}”(h]”h ]”j3ah"]”h$]”h&]”uh1j'hj6ubah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”jtŒreftype”j‰Œ reftarget”j;Œmodname”NŒ classname”Nj�j�)�”}”j“]”jsŒc.akcipher_request_set_crypt”†”asbuh1hhjubj)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjWh²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhjubj«)�”}”(hj®h]”hŒ*”…”�”}”(hjeh²hh³Nh´Nubah}”(h]”h ]”j·ah"]”h$]”h&]”uh1jªhjubj()�”}”(hŒdst”h]”hŒdst”…”�”}”(hjrh²hh³Nh´Nubah}”(h]”h ]”j3ah"]”h$]”h&]”uh1j'hjubeh}”(h]”h ]”h"]”h$]”h&]”Œnoemph”ˆj?j@uh1jØhj1ubjÙ)�”}”(hŒunsigned int src_len”h]”(jû)�”}”(hŒunsigned”h]”hŒunsigned”…”�”}”(hj‹h²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1júhj‡ubj)�”}”(hŒ ”h]”hŒ ”…”�”}”(hj™h²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhj‡ubjû)�”}”(hŒint”h]”hŒint”…”�”}”(hj§h²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1júhj‡ubj)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjµh²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhj‡ubj()�”}”(hŒsrc_len”h]”hŒsrc_len”…”�”}”(hjÃh²hh³Nh´Nubah}”(h]”h ]”j3ah"]”h$]”h&]”uh1j'hj‡ubeh}”(h]”h ]”h"]”h$]”h&]”Œnoemph”ˆj?j@uh1jØhj1ubjÙ)�”}”(hŒunsigned int dst_len”h]”(jû)�”}”(hŒunsigned”h]”hŒunsigned”…”�”}”(hjÜh²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1júhjØubj)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjêh²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhjØubjû)�”}”(hŒint”h]”hŒint”…”�”}”(hjøh²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1júhjØubj)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjh²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhjØubj()�”}”(hŒdst_len”h]”hŒdst_len”…”�”}”(hjh²hh³Nh´Nubah}”(h]”h ]”j3ah"]”h$]”h&]”uh1j'hjØubeh}”(h]”h ]”h"]”h$]”h&]”Œnoemph”ˆj?j@uh1jØhj1ubeh}”(h]”h ]”h"]”h$]”h&]”j?j@uh1jÒhjøh²hh³j h´Kâubeh}”(h]”h ]”h"]”h$]”h&]”j?j@jGˆuh1højHjIhjôh²hh³j h´Kâubah}”(h]”jïah ]”(jMjNeh"]”h$]”h&]”jRˆjS)jThuh1hòh³j h´Kâhjñh²hubjV)�”}”(hhh]”j[)�”}”(hŒSets request parameters”h]”hŒSets request parameters”…”�”}”(hj>h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jZh³Œ]/var/lib/git/docbuild/linux/Documentation/crypto/api-akcipher:22: ./include/crypto/akcipher.h”h´Kâhj;h²hubah}”(h]”h ]”h"]”h$]”h&]”uh1jUhjñh²hh³j h´Kâubeh}”(h]”h ]”(jtŒfunction”eh"]”h$]”h&]”jyjtjzjVj{jVj|‰j}‰j~‰uh1híh²hhj<h³Nh´Nubj€)�”}”(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 operation”h]”(j[)�”}”(hŒ**Parameters**”h]”jŠ)�”}”(hj`h]”hŒ Parameters”…”�”}”(hjbh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j‰hj^ubah}”(h]”h ]”h"]”h$]”h&]”uh1jZh³Œ]/var/lib/git/docbuild/linux/Documentation/crypto/api-akcipher:22: ./include/crypto/akcipher.h”h´KæhjZubjÎ)�”}”(hhh]”(jÓ)�”}”(hŒ4``struct akcipher_request *req`` public key request ”h]”(jÙ)�”}”(hŒ ``struct akcipher_request *req``”h]”jß)�”}”(hjh]”hŒstruct akcipher_request *req”…”�”}”(hj�h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jÞhj}ubah}”(h]”h ]”h"]”h$]”h&]”uh1jØh³Œ]/var/lib/git/docbuild/linux/Documentation/crypto/api-akcipher:22: ./include/crypto/akcipher.h”h´Kæhjyubjõ)�”}”(hhh]”j[)�”}”(hŒpublic key request”h]”hŒpublic key request”…”�”}”(hj˜h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jZh³j”h´Kæhj•ubah}”(h]”h ]”h"]”h$]”h&]”uh1jôhjyubeh}”(h]”h ]”h"]”h$]”h&]”uh1jÒh³j”h´KæhjvubjÓ)�”}”(hŒ6``struct scatterlist *src`` ptr to input scatter list ”h]”(jÙ)�”}”(hŒ``struct scatterlist *src``”h]”jß)�”}”(hj¸h]”hŒstruct scatterlist *src”…”�”}”(hjºh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jÞhj¶ubah}”(h]”h ]”h"]”h$]”h&]”uh1jØh³Œ]/var/lib/git/docbuild/linux/Documentation/crypto/api-akcipher:22: ./include/crypto/akcipher.h”h´Kçhj²ubjõ)�”}”(hhh]”j[)�”}”(hŒptr to input scatter list”h]”hŒptr to input scatter list”…”�”}”(hjÑh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jZh³jÍh´KçhjÎubah}”(h]”h ]”h"]”h$]”h&]”uh1jôhj²ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jÒh³jÍh´KçhjvubjÓ)�”}”(hŒ7``struct scatterlist *dst`` ptr to output scatter list ”h]”(jÙ)�”}”(hŒ``struct scatterlist *dst``”h]”jß)�”}”(hjñh]”hŒstruct scatterlist *dst”…”�”}”(hjóh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jÞhjïubah}”(h]”h ]”h"]”h$]”h&]”uh1jØh³Œ]/var/lib/git/docbuild/linux/Documentation/crypto/api-akcipher:22: ./include/crypto/akcipher.h”h´Kèhjëubjõ)�”}”(hhh]”j[)�”}”(hŒptr to output scatter list”h]”hŒptr to output scatter list”…”�”}”(hj h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jZh³jh´Kèhjubah}”(h]”h ]”h"]”h$]”h&]”uh1jôhjëubeh}”(h]”h ]”h"]”h$]”h&]”uh1jÒh³jh´KèhjvubjÓ)�”}”(hŒL``unsigned int src_len`` size of the src input scatter list to be processed ”h]”(jÙ)�”}”(hŒ``unsigned int src_len``”h]”jß)�”}”(hj*h]”hŒunsigned int src_len”…”�”}”(hj,h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jÞhj(ubah}”(h]”h ]”h"]”h$]”h&]”uh1jØh³Œ]/var/lib/git/docbuild/linux/Documentation/crypto/api-akcipher:22: ./include/crypto/akcipher.h”h´Kéhj$ubjõ)�”}”(hhh]”j[)�”}”(hŒ2size of the src input scatter list to be processed”h]”hŒ2size of the src input scatter list to be processed”…”�”}”(hjCh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jZh³j?h´Kéhj@ubah}”(h]”h ]”h"]”h$]”h&]”uh1jôhj$ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jÒh³j?h´KéhjvubjÓ)�”}”(hŒ=``unsigned int dst_len`` size of the dst output scatter list ”h]”(jÙ)�”}”(hŒ``unsigned int dst_len``”h]”jß)�”}”(hjch]”hŒunsigned int dst_len”…”�”}”(hjeh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jÞhjaubah}”(h]”h ]”h"]”h$]”h&]”uh1jØh³Œ]/var/lib/git/docbuild/linux/Documentation/crypto/api-akcipher:22: ./include/crypto/akcipher.h”h´Kêhj]ubjõ)�”}”(hhh]”j[)�”}”(hŒ#size of the dst output scatter list”h]”hŒ#size of the dst output scatter list”…”�”}”(hj|h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jZh³jxh´Kêhjyubah}”(h]”h ]”h"]”h$]”h&]”uh1jôhj]ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jÒh³jxh´Kêhjvubeh}”(h]”h ]”h"]”h$]”h&]”uh1jÍhjZubj[)�”}”(hŒ**Description**”h]”jŠ)�”}”(hjžh]”hŒ Description”…”�”}”(hj h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j‰hjœubah}”(h]”h ]”h"]”h$]”h&]”uh1jZh³Œ]/var/lib/git/docbuild/linux/Documentation/crypto/api-akcipher:22: ./include/crypto/akcipher.h”h´KìhjZubj[)�”}”(hŒ,Sets parameters required by crypto operation”h]”hŒ,Sets parameters required by crypto operation”…”�”}”(hj´h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jZh³Œ]/var/lib/git/docbuild/linux/Documentation/crypto/api-akcipher:22: ./include/crypto/akcipher.h”h´KãhjZubeh}”(h]”h ]”Œ kernelindent”ah"]”h$]”h&]”uh1jhj<h²hh³Nh´Nubeh}”(h]”Œ asymmetric-cipher-request-handle”ah ]”h"]”Œ asymmetric cipher request handle”ah$]”h&]”uh1hµhh·h²hh³hÊh´Kubeh}”(h]”Œasymmetric-cipher”ah ]”h"]”Œasymmetric cipher”ah$]”h&]”uh1hµhhh²hh³hÊh´Kubeh}”(h]”h ]”h"]”h$]”h&]”Œsource”hÊuh1hŒcurrent_source”NŒ current_line”NŒsettings”Œdocutils.frontend”ŒValues”“”)�”}”(hºNŒ generator”NŒ datestamp”NŒ source_link”NŒ source_url”NŒ toc_backlinks”Œentry”Œfootnote_backlinks”KŒ sectnum_xform”KŒstrip_comments”NŒstrip_elements_with_classes”NŒ strip_classes”NŒ report_level”KŒ halt_level”KŒexit_status_level”KŒdebug”NŒwarning_stream”NŒ traceback”ˆŒinput_encoding”Œ utf-8-sig”Œinput_encoding_error_handler”Œstrict”Œoutput_encoding”Œutf-8”Œoutput_encoding_error_handler”jýŒerror_encoding”Œutf-8”Œerror_encoding_error_handler”Œbackslashreplace”Œ language_code”Œen”Œrecord_dependencies”NŒconfig”NŒ id_prefix”hŒauto_id_prefix”Œid”Œ dump_settings”NŒdump_internals”NŒdump_transforms”NŒdump_pseudo_xml”NŒexpose_internals”NŒstrict_visitor”NŒ_disable_config”NŒ_source”hÊŒ _destination”NŒ _config_files”]”Œ7/var/lib/git/docbuild/linux/Documentation/docutils.conf”aŒfile_insertion_enabled”ˆŒ raw_enabled”KŒline_length_limit”M'Œpep_references”NŒ pep_base_url”Œhttps://peps.python.org/”Œpep_file_url_template”Œpep-%04d”Œrfc_references”NŒ rfc_base_url”Œ&https://datatracker.ietf.org/doc/html/”Œ tab_width”KŒtrim_footnote_reference_space”‰Œsyntax_highlight”Œlong”Œ smart_quotes”ˆŒsmartquotes_locales”]”Œcharacter_level_inline_markup”‰Œdoctitle_xform”‰Œ docinfo_xform”KŒsectsubtitle_xform”‰Œ image_loading”Œlink”Œembed_stylesheet”‰Œcloak_email_addresses”ˆŒsection_self_link”‰Œenv”NubŒreporter”NŒindirect_targets”]”Œsubstitution_defs”}”Œsubstitution_names”}”Œrefnames”}”Œrefids”}”Œnameids”}”(j×jÔjjj9j6jÏjÌuŒ nametypes”}”(j׉j‰j9‰jωuh}”(jÔh·jhËhëhôj]jbj6jjGjLj. j3 jÁ jÆ j^ jc jj j®j³jwj|jÌj<jYj^j–j›jñjöjïjôuŒ footnote_refs”}”Œ citation_refs”}”Œ autofootnotes”]”Œautofootnote_refs”]”Œsymbol_footnotes”]”Œsymbol_footnote_refs”]”Œ footnotes”]”Œ citations”]”Œautofootnote_start”KŒsymbol_footnote_start”KŒ id_counter”Œ collections”ŒCounter”“”}”…”R”Œparse_messages”]”Œtransform_messages”]”Œ transformer”NŒ include_log”]”Œ decoration”Nh²hub.