autodoc.git / traditional.xml

version» Context lines:

autodoc.git/traditional.xml:1:   <?xml version='1.0' encoding='utf-8'?> - <manual time-stamp='2022-10-25' version='Pike v8.1.18'> + <manual time-stamp='2022-11-05' version='Pike v8.1.18'>    <dir name='./traditional_manual'>    <file name='./traditional_manual/index.html'>    <chapter title='Table of Contents' unnumbered='1'>    <dl><dt><url href='index.html'>Table of Contents</url></dt>   <dt><url href='chapter_1.html'>1. Introduction</url></dt>   <dd><url href='chapter_1.html#1.1'>1.1. Overview</url></dd>   <dd><url href='chapter_1.html#1.2'>1.2. The history of Pike</url></dd>   <dd><url href='chapter_1.html#1.3'>1.3. A comparison with other languages</url></dd>   <dd><url href='chapter_1.html#1.4'>1.4. What is Pike</url></dd>   <dd><url href='chapter_1.html#1.5'>1.5. Pike License</url></dd>
autodoc.git/traditional.xml:1548:    break;       case constant2:    statement2;    break;       case constant3 .. constant4:    statement3;    break;    +  case constant5 +  case constant6: +  statement4; +  // Fallthrough +     default:    statement5;   }   </example>      <p>As you can see, a switch statement is a bit more complicated than an   if statement. It is still fairly simple however. It starts by evaluating   the expression it then searches all the <tt>case</tt> statements in the   following block. If one is found to be equal to the value returned by   the expression, Pike will continue executing the code directly following
autodoc.git/traditional.xml:100821:    <ref resolved='predef::Nettle'>Nettle</ref> enabled (this is the default).</p>   </text></group></doc>   <docgroup homogen-name='' homogen-type='import'>   <import name=''><classname resolved='predef::'>predef::</classname></import>   </docgroup>   <docgroup homogen-name='make_crypt_md5' homogen-type='method'><doc><text><p>Hashes a <ref resolved='predef::Crypto.make_crypt_md5.password'>password</ref> together with a <ref resolved='predef::Crypto.make_crypt_md5.salt'>salt</ref> with the    crypt_md5 algorithm and returns the result.</p>   </text><group><seealso/><text><p><ref resolved='predef::Crypto.verify_crypt_md5'>verify_crypt_md5</ref></p>   </text></group></doc>   <method name='make_crypt_md5'> - <arguments><argument name='password'><type><string><min>0</min><max>255</max></string></type></argument><argument name='salt'><type><or><void/><string><min>0</min><max>255</max></string></or></type></argument></arguments> + <arguments><argument name='password'><type><string><min>0</min><max>255</max></string></type></argument><argument name='salt'><type><or><string><min>0</min><max>255</max></string><void/></or></type></argument></arguments>   <returntype><string><min>0</min><max>255</max></string></returntype>   </method>   </docgroup>   <docgroup homogen-name='rot13' homogen-type='method'><doc><text><p>Convenience function that accesses the crypt function of a    substitution object keyed to perform standard ROT13 (de)ciphering.</p>   </text></doc>   <method name='rot13'>   <arguments><argument name='data'><type><string><min>0</min><max>255</max></string></type></argument></arguments>   <returntype><string><min>0</min><max>255</max></string></returntype>   </method>
autodoc.git/traditional.xml:101510:   </text></doc>   <method name='public_key_equal'>   <arguments><argument name='dsa'><type><object resolved='predef::Crypto.DSA.State'>this_program</object></type></argument></arguments>   <returntype><int><min>0</min><max>1</max></int></returntype>   </method>   </docgroup>   <docgroup homogen-name='raw_sign' homogen-type='method'><doc><text><p>Sign the message <ref resolved='predef::Crypto.DSA.State.raw_sign.h'>h</ref>. Returns the signature as two <ref resolved='predef::Gmp.mpz'>Gmp.mpz</ref>    objects.</p>   </text></doc>   <method name='raw_sign'> - <arguments><argument name='h'><type><object resolved='predef::Gmp.mpz'>Gmp.mpz</object></type></argument><argument name='k'><type><or><void/><object resolved='predef::Gmp.mpz'>Gmp.mpz</object></or></type></argument></arguments> + <arguments><argument name='h'><type><object resolved='predef::Gmp.mpz'>Gmp.mpz</object></type></argument><argument name='k'><type><or><object resolved='predef::Gmp.mpz'>Gmp.mpz</object><void/></or></type></argument></arguments>   <returntype><array><valuetype><object resolved='predef::Gmp.mpz'>Gmp.mpz</object></valuetype></array></returntype>   </method>   </docgroup>   <docgroup homogen-name='raw_verify' homogen-type='method'><doc><text><p>Verify the signature <ref resolved='predef::Crypto.DSA.State.raw_verify.r'>r</ref>,<ref resolved='predef::Crypto.DSA.State.raw_verify.s'>s</ref> against the message <ref resolved='predef::Crypto.DSA.State.raw_verify.h'>h</ref>.</p>   </text></doc>   <method name='raw_verify'>   <arguments><argument name='h'><type><object resolved='predef::Gmp.mpz'>Gmp.mpz</object></type></argument><argument name='r'><type><object resolved='predef::Gmp.mpz'>Gmp.mpz</object></type></argument><argument name='s'><type><object resolved='predef::Gmp.mpz'>Gmp.mpz</object></type></argument></arguments>   <returntype><int><min>0</min><max>1</max></int></returntype>   </method>   </docgroup>
autodoc.git/traditional.xml:102319:   <docgroup homogen-name='decode_radix64' homogen-type='method'><doc><text><p>Decode ASCII armour.</p>   </text></doc>   <method name='decode_radix64'>   <arguments><argument name='data'><type><string/></type></argument></arguments>   <returntype><mapping><indextype><string/></indextype><valuetype><mixed/></valuetype></mapping></returntype>   </method>   </docgroup>   <docgroup homogen-name='encode_radix64' homogen-type='method'><doc><text><p>Encode PGP data with ASCII armour.</p>   </text></doc>   <method name='encode_radix64'> - <arguments><argument name='data'><type><string/></type></argument><argument name='type'><type><string/></type></argument><argument name='extra'><type><or><void/><mapping><indextype><string/></indextype><valuetype><string/></valuetype></mapping></or></type></argument></arguments> + <arguments><argument name='data'><type><string/></type></argument><argument name='type'><type><string/></type></argument><argument name='extra'><type><or><mapping><indextype><string/></indextype><valuetype><string/></valuetype></mapping><void/></or></type></argument></arguments>   <returntype><string/></returntype>   </method>   </docgroup>   <docgroup homogen-name='' homogen-type='import'>   <import name=''><classname resolved='predef::'>predef::</classname></import>   </docgroup>   <docgroup homogen-name='verify_signature' homogen-type='method'><doc><text><p>Verify <ref resolved='predef::Crypto.PGP.verify_signature.text'>text</ref> against signature <ref resolved='predef::Crypto.PGP.verify_signature.sig'>sig</ref> with the public key    <ref resolved='predef::Crypto.PGP.verify_signature.pubkey'>pubkey</ref>.</p>   </text></doc>   <method name='verify_signature'>
autodoc.git/traditional.xml:102425:   <arguments><argument name='params'><type><or><mapping><indextype><string><min>0</min><max>255</max></string></indextype><valuetype><or><object resolved='predef::Gmp.mpz'>Gmp.mpz</object><int/><string><min>0</min><max>127</max></string></or></valuetype></mapping><void/></or></type></argument></arguments>   <returntype><void/></returntype>   </method>   </docgroup>   <docgroup homogen-name='generate_key' homogen-type='method'><doc><text><p>Generate a valid RSA key pair with the size <ref resolved='predef::Crypto.RSA.LowState.generate_key.bits'>bits</ref> using the    random function set with <ref resolved='predef::Crypto.RSA.LowState.set_random'>set_random()</ref>. The public exponent <ref resolved='predef::Crypto.RSA.LowState.generate_key.e'>e</ref>    will be used, which defaults to 65537. Keys must be at least 89    bits.</p>   </text></doc>   <method name='generate_key'> - <arguments><argument name='bits'><type><int><min>128</min><max/></int></type></argument><argument name='e'><type><or><void/><int/><object resolved='predef::Gmp.mpz'>Gmp.mpz</object></or></type></argument></arguments> + <arguments><argument name='bits'><type><int><min>128</min><max/></int></type></argument><argument name='e'><type><or><int><min>1</min><max/></int><object resolved='predef::Gmp.mpz'>Gmp.mpz</object><void/></or></type></argument></arguments>   <returntype><object resolved='predef::Crypto.RSA.LowState'>this_program</object></returntype>   </method>   </docgroup>   <docgroup homogen-name='get_d' homogen-type='method'><doc><text><p>Returns the RSA private exponent (d), if known.</p>   </text></doc>   <method name='get_d'>   <arguments/>   <returntype><or><object resolved='predef::Gmp.mpz'>Gmp.mpz</object><zero/></or></returntype>   </method>   </docgroup>
autodoc.git/traditional.xml:103104:   </text></doc>   <method name='encrypt'>   <arguments><argument name='m'><type><string><min>0</min><max>255</max></string></type></argument></arguments>   <returntype><string><min>0</min><max>255</max></string></returntype>   </method>   </docgroup>   <docgroup homogen-name='filter' homogen-type='method'><doc><text><p>Removes characters not in the encryption key or in    the <ref resolved='predef::Crypto.Substitution.filter.save'>save</ref> multiset from the message <ref resolved='predef::Crypto.Substitution.filter.m'>m</ref>.</p>   </text></doc>   <method name='filter'> - <arguments><argument name='m'><type><string/></type></argument><argument name='save'><type><or><void/><multiset><indextype><int/></indextype></multiset></or></type></argument></arguments> + <arguments><argument name='m'><type><string/></type></argument><argument name='save'><type><or><multiset><indextype><int/></indextype></multiset><void/></or></type></argument></arguments>   <returntype><string/></returntype>   </method>   </docgroup>   <docgroup homogen-name='' homogen-type='import'>   <import name=''><classname resolved='predef::'>predef::</classname></import>   </docgroup>   <docgroup homogen-name='set_ACA_K1_key' homogen-type='method'><doc><text><p>Sets the key according to ACA K1 key generation. The plaintext    alphabet is prepended with a keyword <ref resolved='predef::Crypto.Substitution.set_ACA_K1_key.key'>key</ref> that shifts the alphabet    positions compared to the cryptogram alphabet. The plaintext    alphabet is then reduced with the characters in the keyword. It is    also optionally rotated <ref resolved='predef::Crypto.Substitution.set_ACA_K1_key.offset'>offset</ref> number of steps.</p>   </text></doc>   <method name='set_ACA_K1_key'> - <arguments><argument name='key'><type><string/></type></argument><argument name='offset'><type><or><void/><int/></or></type></argument><argument name='alphabet'><type><or><void/><array><valuetype><string/></valuetype></array></or></type></argument></arguments> + <arguments><argument name='key'><type><string/></type></argument><argument name='offset'><type><or><void/><int/></or></type></argument><argument name='alphabet'><type><or><array><valuetype><string/></valuetype></array><void/></or></type></argument></arguments>   <returntype><object resolved='predef::Crypto.Substitution'>this_program</object></returntype>   </method>   </docgroup>   <docgroup homogen-name='set_ACA_K2_key' homogen-type='method'><doc><text><p>Sets the key according to ACA K2 key generation. The cryptogram    alphabet is prepended with a keyword <ref resolved='predef::Crypto.Substitution.set_ACA_K2_key.key'>key</ref> that shifts the alphabet    positions compared to the plaintext alphabet. The cryptogram    alphabet is then reduced with the characters in the keyword. It is    als optionally reotated <ref resolved='predef::Crypto.Substitution.set_ACA_K2_key.offset'>offset</ref> number of steps.</p>   </text></doc>   <method name='set_ACA_K2_key'> - <arguments><argument name='key'><type><string/></type></argument><argument name='offset'><type><or><void/><int/></or></type></argument><argument name='alphabet'><type><or><void/><array><valuetype><string/></valuetype></array></or></type></argument></arguments> + <arguments><argument name='key'><type><string/></type></argument><argument name='offset'><type><or><void/><int/></or></type></argument><argument name='alphabet'><type><or><array><valuetype><string/></valuetype></array><void/></or></type></argument></arguments>   <returntype><object resolved='predef::Crypto.Substitution'>this_program</object></returntype>   </method>   </docgroup>   <docgroup homogen-name='set_ACA_K3_key' homogen-type='method'><doc><text><p>Sets the key according to ACA K3 key generation. Both the plaintext    and the cryptogram alphabets are prepended with a keyword <ref resolved='predef::Crypto.Substitution.set_ACA_K3_key.key'>key</ref>,    which characters are removed from the rest of the alphabet. The    plaintext alphabet is then rotated <ref resolved='predef::Crypto.Substitution.set_ACA_K3_key.offset'>offset</ref> number of steps.</p>   </text></doc>   <method name='set_ACA_K3_key'> - <arguments><argument name='key'><type><string/></type></argument><argument name='offset'><type><int/></type></argument><argument name='alphabet'><type><or><void/><array><valuetype><string/></valuetype></array></or></type></argument></arguments> + <arguments><argument name='key'><type><string/></type></argument><argument name='offset'><type><int/></type></argument><argument name='alphabet'><type><or><array><valuetype><string/></valuetype></array><void/></or></type></argument></arguments>   <returntype><object resolved='predef::Crypto.Substitution'>this_program</object></returntype>   </method>   </docgroup>   <docgroup homogen-name='set_ACA_K4_key' homogen-type='method'><doc><text><p>Sets the key according to ACA K4 key generation. Both the plaintext    and the cryptogram alphabets are prepended with the keywords <ref resolved='predef::Crypto.Substitution.set_ACA_K4_key.key1'>key1</ref>    and <ref resolved='predef::Crypto.Substitution.set_ACA_K4_key.key2'>key2</ref>. The plaintext alphabet is then rotated <ref resolved='predef::Crypto.Substitution.set_ACA_K4_key.offset'>offset</ref> number    of steps.</p>   </text></doc>   <method name='set_ACA_K4_key'> - <arguments><argument name='key1'><type><string/></type></argument><argument name='key2'><type><string/></type></argument><argument name='offset'><type><or><void/><int/></or></type></argument><argument name='alphabet'><type><or><void/><array><valuetype><string/></valuetype></array></or></type></argument></arguments> + <arguments><argument name='key1'><type><string/></type></argument><argument name='key2'><type><string/></type></argument><argument name='offset'><type><or><void/><int/></or></type></argument><argument name='alphabet'><type><or><array><valuetype><string/></valuetype></array><void/></or></type></argument></arguments>   <returntype><object resolved='predef::Crypto.Substitution'>this_program</object></returntype>   </method>   </docgroup>   <docgroup homogen-name='set_key' homogen-type='method'><doc><text><p>Sets the encryption and decryption key. The decryption key is    derived from the encryption <ref resolved='predef::Crypto.Substitution.set_key.key'>key</ref> by reversing the mapping. If    one index maps to an array of strings, one element from the array    will be chosen at random in such substitution.</p>   </text><group><throws/><text><p>An error is thrown if the encryption key can not be made reversible.</p>   </text></group></doc>   <method name='set_key'>
autodoc.git/traditional.xml:103182:   </method>   </docgroup>   <docgroup homogen-name='set_rot_key' homogen-type='method'><doc><text><p>Sets the key to a ROT substitution system. <ref resolved='predef::Crypto.Substitution.set_rot_key.steps'>steps</ref> defaults    to 13 and <ref resolved='predef::Crypto.Substitution.set_rot_key.alphabet'>alphabet</ref> defaults to A-Z, i.e. this function    defaults to set the substitution crypto to be ROT13. If no    alphabet is given the key will be case insensitive, e.g. the    key will really be two ROT13 alphabets, one a-z and one A-Z,    used simultaneously.</p>   </text></doc>   <method name='set_rot_key'> - <arguments><argument name='steps'><type><or><void/><int/></or></type></argument><argument name='alphabet'><type><or><void/><array><valuetype><string/></valuetype></array></or></type></argument></arguments> + <arguments><argument name='steps'><type><or><int><min>1</min><max/></int><void/></or></type></argument><argument name='alphabet'><type><or><void/><array><valuetype><string/></valuetype></array></or></type></argument></arguments>   <returntype><object resolved='predef::Crypto.Substitution'>this_program</object></returntype>   </method>   </docgroup>   </class>   <module name='Twofish'>   <doc><text><p>Another <ref resolved='predef::Crypto.AES'>AES</ref> finalist, this one designed by Bruce Schneier and    others.</p>   </text></doc>   <docgroup homogen-name='' homogen-type='import'>   <import name=''><classname resolved='predef::'>predef::</classname></import>