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-sigmodnameN classnameN refexplicitutagnamehhh ubh)}(hhh]hChinese (Traditional)}hh2sbah}(h]h ]h"]h$]h&] refdomainh)reftypeh+ reftarget"/translations/zh_TW/crypto/api-sigmodnameN classnameN refexplicituh1hhh ubh)}(hhh]hItalian}hhFsbah}(h]h ]h"]h$]h&] refdomainh)reftypeh+ reftarget"/translations/it_IT/crypto/api-sigmodnameN classnameN refexplicituh1hhh ubh)}(hhh]hJapanese}hhZsbah}(h]h ]h"]h$]h&] refdomainh)reftypeh+ reftarget"/translations/ja_JP/crypto/api-sigmodnameN classnameN refexplicituh1hhh ubh)}(hhh]hKorean}hhnsbah}(h]h ]h"]h$]h&] refdomainh)reftypeh+ reftarget"/translations/ko_KR/crypto/api-sigmodnameN classnameN refexplicituh1hhh ubh)}(hhh]hSpanish}hhsbah}(h]h ]h"]h$]h&] refdomainh)reftypeh+ reftarget"/translations/sp_SP/crypto/api-sigmodnameN classnameN refexplicituh1hhh ubeh}(h]h ]h"]h$]h&]current_languageEnglishuh1h hh _documenthsourceNlineNubhsection)}(hhh](htitle)}(h*Asymmetric Signature Algorithm Definitionsh]h*Asymmetric Signature Algorithm Definitions}(hhhhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhhh(struct crypto_sig *tfm, const void *key, unsigned int keylen)h](j)}(hstruct crypto_sig *tfmh](h)}(hhh]hstruct}(hjhhhNhNubah}(h]h ]hah"]h$]h&]uh1hhjubh)}(h h]h }(hjhhhNhNubah}(h]h ]hah"]h$]h&]uh1hhjubh)}(hhh]j)}(h crypto_sigh]h crypto_sig}(hjhhhNhNubah}(h]h ]jah"]h$]h&]uh1jhjubah}(h]h ]h"]h$]h&] refdomainjOreftypej reftargetjmodnameN classnameNjj)}j]j)}jjsbc.crypto_sig_set_pubkeyasbuh1hhjubh)}(h h]h }(hjhhhNhNubah}(h]h ]hah"]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&]noemphjjuh1jhjubj)}(hconst void *keyh](h)}(hjh]hconst}(hjhhhNhNubah}(h]h ]hah"]h$]h&]uh1hhjubh)}(h h]h }(hj*hhhNhNubah}(h]h ]hah"]h$]h&]uh1hhjubj)}(hvoidh]hvoid}(hj8hhhNhNubah}(h]h ]jah"]h$]h&]uh1jhjubh)}(h h]h }(hjFhhhNhNubah}(h]h ]hah"]h$]h&]uh1hhjubj)}(hjh]h*}(hjThhhNhNubah}(h]h ]jah"]h$]h&]uh1jhjubj)}(hkeyh]hkey}(hjahhhNhNubah}(h]h ]jah"]h$]h&]uh1jhjubeh}(h]h ]h"]h$]h&]noemphjjuh1jhjubj)}(hunsigned int keylenh](j)}(hunsignedh]hunsigned}(hjzhhhNhNubah}(h]h ]jah"]h$]h&]uh1jhjvubh)}(h h]h }(hjhhhNhNubah}(h]h ]hah"]h$]h&]uh1hhjvubj)}(hinth]hint}(hjhhhNhNubah}(h]h ]jah"]h$]h&]uh1jhjvubh)}(h h]h }(hjhhhNhNubah}(h]h ]hah"]h$]h&]uh1hhjvubj)}(hkeylenh]hkeylen}(hjhhhNhNubah}(h]h ]jah"]h$]h&]uh1jhjvubeh}(h]h ]h"]h$]h&]noemphjjuh1jhjubeh}(h]h ]h"]h$]h&]jjuh1jhjjhhhj|hKubeh}(h]h ]h"]h$]h&]jjj"uh1hj#j$hjfhhhj|hKubah}(h]jaah ](j(j)eh"]h$]h&]j-j.)j/huh1hhj|hKhjchhubj1)}(hhh]j6)}(hInvoke set public key operationh]hInvoke set public key operation}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1j5hS/var/lib/git/docbuild/linux/Documentation/crypto/api-sig:13: ./include/crypto/sig.hhKhjhhubah}(h]h ]h"]h$]h&]uh1j0hjchhhj|hKubeh}(h]h ](jOfunctioneh"]h$]h&]jTjOjUjjVjjWjXjYuh1hhhhj/hNhNubj[)}(hX**Parameters** ``struct crypto_sig *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](j6)}(h**Parameters**h]je)}(hjh]h Parameters}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jdhjubah}(h]h ]h"]h$]h&]uh1j5hS/var/lib/git/docbuild/linux/Documentation/crypto/api-sig:13: ./include/crypto/sig.hhKhjubj)}(hhh](j)}(h&``struct crypto_sig *tfm`` tfm handle h](j)}(h``struct crypto_sig *tfm``h]j)}(hjh]hstruct crypto_sig *tfm}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jhjubah}(h]h ]h"]h$]h&]uh1jhS/var/lib/git/docbuild/linux/Documentation/crypto/api-sig:13: ./include/crypto/sig.hhKhjubj)}(hhh]j6)}(h tfm handleh]h tfm handle}(hj6hhhNhNubah}(h]h ]h"]h$]h&]uh1j5hj2hKhj3ubah}(h]h ]h"]h$]h&]uh1jhjubeh}(h]h ]h"]h$]h&]uh1jhj2hKhjubj)}(hW``const void *key`` BER encoded public key, algo OID, paramlen, BER encoded parameters h](j)}(h``const void *key``h]j)}(hjVh]hconst void *key}(hjXhhhNhNubah}(h]h ]h"]h$]h&]uh1jhjTubah}(h]h ]h"]h$]h&]uh1jhS/var/lib/git/docbuild/linux/Documentation/crypto/api-sig:13: ./include/crypto/sig.hhKhjPubj)}(hhh]j6)}(hBBER encoded public key, algo OID, paramlen, BER encoded parametersh]hBBER encoded public key, algo OID, paramlen, BER encoded parameters}(hjohhhNhNubah}(h]h ]h"]h$]h&]uh1j5hS/var/lib/git/docbuild/linux/Documentation/crypto/api-sig:13: ./include/crypto/sig.hhKhjlubah}(h]h ]h"]h$]h&]uh1jhjPubeh}(h]h ]h"]h$]h&]uh1jhjkhKhjubj)}(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&]uh1jhS/var/lib/git/docbuild/linux/Documentation/crypto/api-sig:13: ./include/crypto/sig.hhKhjubj)}(hhh]j6)}(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&]uh1j5hjhKhjubah}(h]h ]h"]h$]h&]uh1jhjubeh}(h]h ]h"]h$]h&]uh1jhjhKhjubeh}(h]h ]h"]h$]h&]uh1jhjubj6)}(h**Description**h]je)}(hjh]h Description}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jdhjubah}(h]h ]h"]h$]h&]uh1j5hS/var/lib/git/docbuild/linux/Documentation/crypto/api-sig:13: ./include/crypto/sig.hhKhjubj6)}(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&]uh1j5hS/var/lib/git/docbuild/linux/Documentation/crypto/api-sig:13: ./include/crypto/sig.hhKhjubj6)}(h **Return**h]je)}(hjh]hReturn}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jdhjubah}(h]h ]h"]h$]h&]uh1j5hS/var/lib/git/docbuild/linux/Documentation/crypto/api-sig:13: ./include/crypto/sig.hhKhjubj6)}(h,zero on success; error code in case of errorh]h,zero on success; error code in case of error}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1j5hS/var/lib/git/docbuild/linux/Documentation/crypto/api-sig:13: ./include/crypto/sig.hhKhjubeh}(h]h ] kernelindentah"]h$]h&]uh1jZhj/hhhNhNubh)}(hhh]h}(h]h ]h"]h$]h&]entries](hČ#crypto_sig_set_privkey (C function)c.crypto_sig_set_privkeyhNtauh1hhj/hhhNhNubh)}(hhh](h)}(hYint crypto_sig_set_privkey (struct crypto_sig *tfm, const void *key, unsigned int keylen)h]h)}(hXint crypto_sig_set_privkey(struct crypto_sig *tfm, const void *key, unsigned int keylen)h](j)}(hinth]hint}(hj7hhhNhNubah}(h]h ]jah"]h$]h&]uh1jhj3hhhS/var/lib/git/docbuild/linux/Documentation/crypto/api-sig:13: ./include/crypto/sig.hhKubh)}(h h]h }(hjFhhhNhNubah}(h]h ]hah"]h$]h&]uh1hhj3hhhjEhKubh)}(hcrypto_sig_set_privkeyh]j)}(hcrypto_sig_set_privkeyh]hcrypto_sig_set_privkey}(hjXhhhNhNubah}(h]h ]jah"]h$]h&]uh1jhjTubah}(h]h ](jjeh"]h$]h&]jjuh1hhj3hhhjEhKubj)}(h>(struct crypto_sig *tfm, const void *key, unsigned int keylen)h](j)}(hstruct crypto_sig *tfmh](h)}(hhh]hstruct}(hjthhhNhNubah}(h]h ]hah"]h$]h&]uh1hhjpubh)}(h h]h }(hjhhhNhNubah}(h]h ]hah"]h$]h&]uh1hhjpubh)}(hhh]j)}(h crypto_sigh]h crypto_sig}(hjhhhNhNubah}(h]h ]jah"]h$]h&]uh1jhjubah}(h]h ]h"]h$]h&] refdomainjOreftypej reftargetjmodnameN classnameNjj)}j]j)}jjZsbc.crypto_sig_set_privkeyasbuh1hhjpubh)}(h h]h }(hjhhhNhNubah}(h]h ]hah"]h$]h&]uh1hhjpubj)}(hjh]h*}(hjhhhNhNubah}(h]h ]jah"]h$]h&]uh1jhjpubj)}(htfmh]htfm}(hjhhhNhNubah}(h]h ]jah"]h$]h&]uh1jhjpubeh}(h]h ]h"]h$]h&]noemphjjuh1jhjlubj)}(hconst void *keyh](h)}(hjh]hconst}(hjhhhNhNubah}(h]h ]hah"]h$]h&]uh1hhjubh)}(h h]h }(hjhhhNhNubah}(h]h ]hah"]h$]h&]uh1hhjubj)}(hvoidh]hvoid}(hjhhhNhNubah}(h]h ]jah"]h$]h&]uh1jhjubh)}(h h]h }(hjhhhNhNubah}(h]h ]hah"]h$]h&]uh1hhjubj)}(hjh]h*}(hjhhhNhNubah}(h]h ]jah"]h$]h&]uh1jhjubj)}(hkeyh]hkey}(hj*hhhNhNubah}(h]h ]jah"]h$]h&]uh1jhjubeh}(h]h ]h"]h$]h&]noemphjjuh1jhjlubj)}(hunsigned int keylenh](j)}(hunsignedh]hunsigned}(hjChhhNhNubah}(h]h ]jah"]h$]h&]uh1jhj?ubh)}(h h]h }(hjQhhhNhNubah}(h]h ]hah"]h$]h&]uh1hhj?ubj)}(hinth]hint}(hj_hhhNhNubah}(h]h ]jah"]h$]h&]uh1jhj?ubh)}(h h]h }(hjmhhhNhNubah}(h]h ]hah"]h$]h&]uh1hhj?ubj)}(hkeylenh]hkeylen}(hj{hhhNhNubah}(h]h ]jah"]h$]h&]uh1jhj?ubeh}(h]h ]h"]h$]h&]noemphjjuh1jhjlubeh}(h]h ]h"]h$]h&]jjuh1jhj3hhhjEhKubeh}(h]h ]h"]h$]h&]jjj"uh1hj#j$hj/hhhjEhKubah}(h]j*ah ](j(j)eh"]h$]h&]j-j.)j/huh1hhjEhKhj,hhubj1)}(hhh]j6)}(h Invoke set private key operationh]h Invoke set private key operation}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1j5hS/var/lib/git/docbuild/linux/Documentation/crypto/api-sig:13: ./include/crypto/sig.hhKhjhhubah}(h]h ]h"]h$]h&]uh1j0hj,hhhjEhKubeh}(h]h ](jOfunctioneh"]h$]h&]jTjOjUjjVjjWjXjYuh1hhhhj/hNhNubj[)}(hX**Parameters** ``struct crypto_sig *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](j6)}(h**Parameters**h]je)}(hjh]h Parameters}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jdhjubah}(h]h ]h"]h$]h&]uh1j5hS/var/lib/git/docbuild/linux/Documentation/crypto/api-sig:13: ./include/crypto/sig.hhKhjubj)}(hhh](j)}(h&``struct crypto_sig *tfm`` tfm handle h](j)}(h``struct crypto_sig *tfm``h]j)}(hjh]hstruct crypto_sig *tfm}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jhjubah}(h]h ]h"]h$]h&]uh1jhS/var/lib/git/docbuild/linux/Documentation/crypto/api-sig:13: ./include/crypto/sig.hhKhjubj)}(hhh]j6)}(h tfm handleh]h tfm handle}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1j5hjhKhjubah}(h]h ]h"]h$]h&]uh1jhjubeh}(h]h ]h"]h$]h&]uh1jhjhKhjubj)}(hX``const void *key`` BER encoded private key, algo OID, paramlen, BER encoded parameters h](j)}(h``const void *key``h]j)}(hjh]hconst void *key}(hj!hhhNhNubah}(h]h ]h"]h$]h&]uh1jhjubah}(h]h ]h"]h$]h&]uh1jhS/var/lib/git/docbuild/linux/Documentation/crypto/api-sig:13: ./include/crypto/sig.hhKhjubj)}(hhh]j6)}(hCBER encoded private key, algo OID, paramlen, BER encoded parametersh]hCBER encoded private key, algo OID, paramlen, BER encoded parameters}(hj8hhhNhNubah}(h]h ]h"]h$]h&]uh1j5hS/var/lib/git/docbuild/linux/Documentation/crypto/api-sig:13: ./include/crypto/sig.hhKhj5ubah}(h]h ]h"]h$]h&]uh1jhjubeh}(h]h ]h"]h$]h&]uh1jhj4hKhjubj)}(hE``unsigned int keylen`` length of the key (not including other data) h](j)}(h``unsigned int keylen``h]j)}(hjYh]hunsigned int keylen}(hj[hhhNhNubah}(h]h ]h"]h$]h&]uh1jhjWubah}(h]h ]h"]h$]h&]uh1jhS/var/lib/git/docbuild/linux/Documentation/crypto/api-sig:13: ./include/crypto/sig.hhKhjSubj)}(hhh]j6)}(h,length of the key (not including other data)h]h,length of the key (not including other data)}(hjrhhhNhNubah}(h]h ]h"]h$]h&]uh1j5hjnhKhjoubah}(h]h ]h"]h$]h&]uh1jhjSubeh}(h]h ]h"]h$]h&]uh1jhjnhKhjubeh}(h]h ]h"]h$]h&]uh1jhjubj6)}(h**Description**h]je)}(hjh]h Description}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jdhjubah}(h]h ]h"]h$]h&]uh1j5hS/var/lib/git/docbuild/linux/Documentation/crypto/api-sig:13: ./include/crypto/sig.hhMhjubj6)}(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&]uh1j5hS/var/lib/git/docbuild/linux/Documentation/crypto/api-sig:13: ./include/crypto/sig.hhKhjubj6)}(h **Return**h]je)}(hjh]hReturn}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jdhjubah}(h]h ]h"]h$]h&]uh1j5hS/var/lib/git/docbuild/linux/Documentation/crypto/api-sig:13: ./include/crypto/sig.hhKhjubj6)}(h,zero on success; error code in case of errorh]h,zero on success; error code in case of error}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1j5hS/var/lib/git/docbuild/linux/Documentation/crypto/api-sig:13: ./include/crypto/sig.hhMhjubeh}(h]h ] kernelindentah"]h$]h&]uh1jZhj/hhhNhNubeh}(h]asymmetric-signature-apiah ]h"]asymmetric signature apiah$]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}(j,j)jju nametypes}(j,juh}(j)hhhjj/j[j`jBjGjjjr jw j j j j jyj~jajfj*j/u 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.