autodoc.git / traditional.xml

version» Context lines:

autodoc.git/traditional.xml:1:   <?xml version='1.0' encoding='utf-8'?> - <manual time-stamp='2017-12-12' version='Pike v8.1.11'> + <manual time-stamp='2017-12-13' version='Pike v8.1.11'>    <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. Overview</url></dd>   <dd><url href='chapter_1.html#2'>1.2. The history of Pike</url></dd>   <dd><url href='chapter_1.html#3'>1.3. A comparison with other languages</url></dd>   <dd><url href='chapter_1.html#4'>1.4. What is Pike</url></dd>   <dd><url href='chapter_1.html#5'>1.5. Pike License</url></dd>
autodoc.git/traditional.xml:46435:    mapping stored in a special BLOB column which is usually called    "properties".</p>   </text><group><note/><text><p>Although SQL is case insensitive on column names, this class    isn't.</p>   </text></group><group><note/><text><p>The generated SQL queries always quote table and column names    according to MySQL syntax using backticks (`). However, literal    backticks in names are not quoted and might therefore lead to SQL    syntax errors. This might change if it becomes a problem.</p>   </text></group><group><note/><text><p>The handling of TIMESTAMP columns in MySQL (as of 5.1 at least)    through UNIX_TIMESTAMP and FROM_UNIXTIME has one problem if the -  active time zone uses daylight savings time:</p> +  active time zone uses daylight-saving time:</p>   <p> Apparently FROM_UNIXTIME internally formats the integer to a MySQL    date/time string, which is then parsed again to set the unix    timestamp in the TIMESTAMP column. The formatting and the parsing    uses the same time zone, so the conversions generally cancel    themselves out. However, there is one exception with the 1 hour    overlap in the fall when going from summer time to normal time.</p>   <p> E.g. if the active time zone on the connection is Central European    Time, which uses DST, then setting 1130630400 (Sun 30 Oct 2005    2:00:00 CEST) through "INSERT INTO foo SET ts =    FROM_UNIXTIME(1130630400)" actually sets the ts column to
autodoc.git/traditional.xml:91172:   <docgroup homogen-name='localtime' homogen-type='method'><doc><text><p>Convert seconds since 00:00:00 UTC, 1 Jan 1970 into components.</p>   </text><group><returns/><text><p>This function returns a mapping with the following components:</p>   <mapping><group><member><type><int><min>0</min><max>60</max></int></type><index>"sec"</index></member><text><p>Seconds over the minute.</p>   </text></group><group><member><type><int><min>0</min><max>59</max></int></type><index>"min"</index></member><text><p>Minutes over the hour.</p>   </text></group><group><member><type><int><min>0</min><max>23</max></int></type><index>"hour"</index></member><text><p>Hour of the day.</p>   </text></group><group><member><type><int><min>1</min><max>31</max></int></type><index>"mday"</index></member><text><p>Day of the month.</p>   </text></group><group><member><type><int><min>0</min><max>11</max></int></type><index>"mon"</index></member><text><p>Month of the year.</p>   </text></group><group><member><type><int><min>0</min><max/></int></type><index>"year"</index></member><text><p>Year since 1900.</p>   </text></group><group><member><type><int><min>0</min><max>6</max></int></type><index>"wday"</index></member><text><p>Day of week (0 = Sunday).</p>   </text></group><group><member><type><int><min>0</min><max>365</max></int></type><index>"yday"</index></member><text><p>Day of the year.</p> - </text></group><group><member><type><int><min>0</min><max>1</max></int></type><index>"isdst"</index></member><text><p>Is daylight savings time.</p> - </text></group><group><member><type><int/></type><index>"timezone"</index></member><text><p>Offset from UTC, including daylight savings time adjustment.</p> + </text></group><group><member><type><int><min>0</min><max>1</max></int></type><index>"isdst"</index></member><text><p>Is daylight-saving time active.</p> + </text></group><group><member><type><int/></type><index>"timezone"</index></member><text><p>Offset from UTC, including daylight-saving time adjustment.</p>   </text></group></mapping><p>An error is thrown if the localtime(2) call failed on the system.    It's platform dependent what time ranges that function can handle,    e.g. Windows doesn't handle a negative <ref resolved='predef::localtime.timestamp'>timestamp</ref>.</p>   </text></group><group><note/><text><p>Prior to Pike 7.5 the field <expr>"timezone"</expr> was sometimes not -  present, and was sometimes not adjusted for daylight savings time.</p> +  present, and was sometimes not adjusted for daylight-saving time.</p>   </text></group><group><seealso/><text><p><ref resolved='predef::Calendar'>Calendar</ref>, <ref resolved='predef::gmtime'>gmtime()</ref>, <ref resolved='predef::time'>time()</ref>, <ref resolved='predef::ctime'>ctime()</ref>, <ref resolved='predef::mktime'>mktime()</ref></p>   </text></group></doc>   <method name='localtime'>   <arguments><argument name='timestamp'><type><int/></type></argument></arguments>   <returntype><mapping><indextype><string/></indextype><valuetype><int/></valuetype></mapping></returntype>   </method>   </docgroup>   <docgroup homogen-name='log' homogen-type='method'><doc><text><p>Return the natural logarithm of <ref resolved='predef::log.f'>f</ref>.    <expr>exp( log(x) ) == x</expr> for x &gt; 0.</p>   </text><group><seealso/><text><p><ref resolved='predef::pow'>pow()</ref>, <ref resolved='predef::exp'>exp()</ref></p>
autodoc.git/traditional.xml:91362:   <docgroup homogen-name='mktime' homogen-type='method'><doc><text><p>This function converts information about date and time into an integer    which contains the number of seconds since 00:00:00 UTC, Jan 1, 1970.</p>   <p> You can either call this function with a mapping containing the    following elements:</p>   <mapping><group><member><type><int><min>0</min><max>60</max></int></type><index>"sec"</index></member><text><p>Seconds over the minute.</p>   </text></group><group><member><type><int><min>0</min><max>59</max></int></type><index>"min"</index></member><text><p>Minutes over the hour.</p>   </text></group><group><member><type><int><min>0</min><max>23</max></int></type><index>"hour"</index></member><text><p>Hour of the day.</p>   </text></group><group><member><type><int><min>1</min><max>31</max></int></type><index>"mday"</index></member><text><p>Day of the month.</p>   </text></group><group><member><type><int><min>0</min><max>11</max></int></type><index>"mon"</index></member><text><p>Month of the year.</p>   </text></group><group><member><type><int><min>0</min><max/></int></type><index>"year"</index></member><text><p>Year since 1900.</p> - </text></group><group><member><type><int><min>0</min><max>1</max></int></type><index>"isdst"</index></member><text><p>Is daylight savings time.</p> + </text></group><group><member><type><int><min>0</min><max>1</max></int></type><index>"isdst"</index></member><text><p>Is daylight-saving time active.</p>   </text></group><group><member><type><int/></type><index>"timezone"</index></member><text><p>The timezone offset from UTC in seconds. If left out, the time    will be calculated in the local timezone.</p>   </text></group></mapping><p>Or you can just send them all on one line as the second syntax suggests.</p>   </text><group><note/><text><p>On some operating systems (notably AIX and Win32), dates before    00:00:00 UTC, Jan 1, 1970 are not supported.</p>   <p> On most systems, the supported range of dates are Dec 13, 1901    20:45:52 UTC through Jan 19, 2038 03:14:07 UTC (inclusive).</p>   </text></group><group><seealso/><text><p><ref resolved='predef::time'>time()</ref>, <ref resolved='predef::ctime'>ctime()</ref>, <ref resolved='predef::localtime'>localtime()</ref>, <ref resolved='predef::gmtime'>gmtime()</ref></p>   </text></group></doc>   <method name='mktime'>
autodoc.git/traditional.xml:99384:   <dl><group><item name='Hash modules'/><text><p>These are based on the <ref resolved='predef::Nettle.Hash'>Nettle.Hash</ref> API.    Examples include <ref resolved='predef::Crypto.MD5'>MD5</ref>, <ref resolved='predef::Crypto.SHA1'>SHA1</ref>, <ref resolved='predef::Crypto.SHA256'>SHA256</ref> and <ref resolved='predef::Crypto.SHA3_256'>SHA3_256</ref>.</p>   </text></group><group><item name='Cipher modules'/><text><p>These are based on the <ref resolved='predef::Nettle.Cipher'>Nettle.Cipher</ref> API.    Examples include <ref resolved='predef::Crypto.AES'>AES</ref>, <ref resolved='predef::Crypto.Arcfour'>Arcfour</ref>, <ref resolved='predef::Crypto.DES'>DES</ref>, <ref resolved='predef::Crypto.DES3'>DES3</ref>, <ref>CAMELLIA</ref>.</p>   <p> The <ref resolved='predef::Crypto.Substitution'>Substitution</ref> program is compatible with <ref resolved='predef::Nettle.Cipher.State'>Cipher.State</ref>.</p>   <p> Also conforming to the API are several helper modules such as    <ref>Buffer</ref>, <ref resolved='predef::Nettle.BlockCipher.CBC'>predef::Nettle.BlockCipher.CBC</ref>,    <ref resolved='predef::Nettle.BlockCipher16.GCM'>predef::Nettle.BlockCipher16.GCM</ref> and <ref resolved='predef::Crypto.Pipe'>Pipe</ref>.</p>   </text></group><group><item name='Message Authentication Code modules (MACs)'/><text><p><ref resolved='predef::Crypto.MAC'>MAC</ref> algorithms are provided as sub-modules to their corresponding    <ref resolved='predef::Crypto.Hash'>Hash</ref> or <ref resolved='predef::Crypto.Cipher'>Cipher</ref> module. -  Examples include <ref resolved='predef::__builtin.Nettle.Hash.HMAC'>SHA1.HMAC</ref> and <ref resolved='predef::Crypto.AES.UMAC32'>AES.UMAC32</ref>.</p> +  Examples include <ref resolved='predef::Nettle.SHA1.HMAC'>SHA1.HMAC</ref> and <ref resolved='predef::Crypto.AES.UMAC32'>AES.UMAC32</ref>.</p>   </text></group><group><item name='Authenticated Encryption with Associated Data modules (AEADs)'/><text><p><ref resolved='predef::Crypto.AEAD'>AEAD</ref>s combine ciphers with authentication codes, and may optionally    also take into account some associated data that is provided out of band.    This API is compatible with both <ref resolved='predef::Crypto.Cipher'>Cipher</ref> and <ref resolved='predef::Crypto.Hash'>Hash</ref>.    AEADs are provided as sub-modules to their corresponding ciphers.    Examples include <ref resolved='predef::Nettle.BlockCipher16.CCM'>AES.CCM</ref>, <ref resolved='predef::Nettle.BlockCipher16.GCM'>AES.GCM</ref> and <ref>CAMELLIA.EAX</ref>.</p>   </text></group></dl><p>As the cryptographic services offered from this module aren't    necessarily used for security applications, none of the strings    inputted or outputted are marked as secure. That is up to the    caller.</p>   </text><group><note/><text><p>Most of the APIs in this module work on 8 bit binary strings unless
autodoc.git/traditional.xml:117408:   <returntype><void/></returntype>   </method>   </docgroup>   </class>   <class name='GOST94'>   <doc><text><p>Implementation of the GOST94 hash algorithm.</p>   </text></doc>   <docgroup homogen-name='Hash' homogen-type='inherit'>   <inherit name='Hash'><classname resolved='predef::Nettle.Hash'>Hash</classname></inherit>   </docgroup> + <module name='HMAC'> + <doc><text><p>Accellerated implementation of HMAC (Hashing for Message Authenticity +  Control) with the GOST94 hash algorithm.</p> + </text><group><seealso/><text><p><ref resolved='predef::Crypto.HMAC'>Crypto.HMAC</ref></p> + </text></group></doc> + <class name='GOST94'> + <doc><text><p>The HMAC hash state.</p> + </text></doc> + <docgroup homogen-name='create' homogen-type='method'><doc><group><param name='passwd'/><text><p>The secret password (K).</p> + </text></group><group><param name='b'/><text><p>Block size. Must <expr>0</expr> (zero) or equal to the <ref resolved='predef::Nettle.Hash.block_size'>block_size()</ref>.</p> + </text></group></doc> + <method name='create'> + <arguments><argument name='passwd'><type><string><min>0</min><max>255</max></string></type></argument><argument name='b'><type><or><void/><int/></or></type></argument></arguments> + <returntype><void/></returntype> + </method> + </docgroup> + </class> + </module>   <class name='State'>   <doc><text><p>State for GOST94 hashing.</p>   </text></doc>   <docgroup homogen-name='State' homogen-type='inherit'>   <inherit name='State'><classname resolved='predef::Nettle.Hash.State'>Hash::State</classname></inherit>   </docgroup>   </class>   </class>   <class name='Hash'>   <doc><text><p>Represents information about a hash algorithm, such as
autodoc.git/traditional.xml:117625:   </method>   </docgroup>   </class>   </class>   <class name='MD2'>   <doc><text><p>Implementation of the MD2 hash algorithm.</p>   </text></doc>   <docgroup homogen-name='Hash' homogen-type='inherit'>   <inherit name='Hash'><classname resolved='predef::Nettle.Hash'>Hash</classname></inherit>   </docgroup> + <module name='HMAC'> + <doc><text><p>Accellerated implementation of HMAC (Hashing for Message Authenticity +  Control) with the MD2 hash algorithm.</p> + </text><group><seealso/><text><p><ref resolved='predef::Crypto.HMAC'>Crypto.HMAC</ref></p> + </text></group></doc> + <class name='MD2'> + <doc><text><p>The HMAC hash state.</p> + </text></doc> + <docgroup homogen-name='create' homogen-type='method'><doc><group><param name='passwd'/><text><p>The secret password (K).</p> + </text></group><group><param name='b'/><text><p>Block size. Must <expr>0</expr> (zero) or equal to the <ref resolved='predef::Nettle.Hash.block_size'>block_size()</ref>.</p> + </text></group></doc> + <method name='create'> + <arguments><argument name='passwd'><type><string><min>0</min><max>255</max></string></type></argument><argument name='b'><type><or><void/><int/></or></type></argument></arguments> + <returntype><void/></returntype> + </method> + </docgroup> + </class> + </module>   <class name='State'>   <doc><text><p>State for MD2 hashing.</p>   </text></doc>   <docgroup homogen-name='State' homogen-type='inherit'>   <inherit name='State'><classname resolved='predef::Nettle.Hash.State'>Hash::State</classname></inherit>   </docgroup>   </class>   </class>   <class name='MD4'>   <doc><text><p>Implementation of the MD4 hash algorithm.</p>   </text></doc>   <docgroup homogen-name='Hash' homogen-type='inherit'>   <inherit name='Hash'><classname resolved='predef::Nettle.Hash'>Hash</classname></inherit>   </docgroup> -  + <module name='HMAC'> + <doc><text><p>Accellerated implementation of HMAC (Hashing for Message Authenticity +  Control) with the MD4 hash algorithm.</p> + </text><group><seealso/><text><p><ref resolved='predef::Crypto.HMAC'>Crypto.HMAC</ref></p> + </text></group></doc> + <class name='MD4'> + <doc><text><p>The HMAC hash state.</p> + </text></doc> + <docgroup homogen-name='create' homogen-type='method'><doc><group><param name='passwd'/><text><p>The secret password (K).</p> + </text></group><group><param name='b'/><text><p>Block size. Must <expr>0</expr> (zero) or equal to the <ref resolved='predef::Nettle.Hash.block_size'>block_size()</ref>.</p> + </text></group></doc> + <method name='create'> + <arguments><argument name='passwd'><type><string><min>0</min><max>255</max></string></type></argument><argument name='b'><type><or><void/><int/></or></type></argument></arguments> + <returntype><void/></returntype> + </method> + </docgroup> + </class> + </module>   <class name='State'>   <doc><text><p>State for MD4 hashing.</p>   </text></doc>   <docgroup homogen-name='State' homogen-type='inherit'>   <inherit name='State'><classname resolved='predef::Nettle.Hash.State'>Hash::State</classname></inherit>   </docgroup>   </class>   </class>   <class name='MD5'>   <doc><text><p>Implementation of the MD5 hash algorithm.</p>   </text></doc>   <docgroup homogen-name='Hash' homogen-type='inherit'>   <inherit name='Hash'><classname resolved='predef::Nettle.Hash'>Hash</classname></inherit>   </docgroup> -  + <module name='HMAC'> + <doc><text><p>Accellerated implementation of HMAC (Hashing for Message Authenticity +  Control) with the MD5 hash algorithm.</p> + </text><group><seealso/><text><p><ref resolved='predef::Crypto.HMAC'>Crypto.HMAC</ref></p> + </text></group></doc> + <class name='MD5'> + <doc><text><p>The HMAC hash state.</p> + </text></doc> + <docgroup homogen-name='create' homogen-type='method'><doc><group><param name='passwd'/><text><p>The secret password (K).</p> + </text></group><group><param name='b'/><text><p>Block size. Must <expr>0</expr> (zero) or equal to the <ref resolved='predef::Nettle.Hash.block_size'>block_size()</ref>.</p> + </text></group></doc> + <method name='create'> + <arguments><argument name='passwd'><type><string><min>0</min><max>255</max></string></type></argument><argument name='b'><type><or><void/><int/></or></type></argument></arguments> + <returntype><void/></returntype> + </method> + </docgroup> + </class> + </module>   <class name='State'>   <doc><text><p>State for MD5 hashing.</p>   </text></doc>   <docgroup homogen-name='State' homogen-type='inherit'>   <inherit name='State'><classname resolved='predef::Nettle.Hash.State'>Hash::State</classname></inherit>   </docgroup>   </class>   </class>   <class name='POLY1305_AES'>   <doc><text><p>Implementation of the POLY1305_AES MAC algorithm.</p>
autodoc.git/traditional.xml:117681:   <inherit name='State'><classname resolved='predef::Nettle.MAC.State'>MAC::State</classname></inherit>   </docgroup>   </class>   </class>   <class name='RIPEMD160'>   <doc><text><p>Implementation of the RIPEMD160 hash algorithm.</p>   </text></doc>   <docgroup homogen-name='Hash' homogen-type='inherit'>   <inherit name='Hash'><classname resolved='predef::Nettle.Hash'>Hash</classname></inherit>   </docgroup> + <module name='HMAC'> + <doc><text><p>Accellerated implementation of HMAC (Hashing for Message Authenticity +  Control) with the RIPEMD160 hash algorithm.</p> + </text><group><seealso/><text><p><ref resolved='predef::Crypto.HMAC'>Crypto.HMAC</ref></p> + </text></group></doc> + <class name='RIPEMD160'> + <doc><text><p>The HMAC hash state.</p> + </text></doc> + <docgroup homogen-name='create' homogen-type='method'><doc><group><param name='passwd'/><text><p>The secret password (K).</p> + </text></group><group><param name='b'/><text><p>Block size. Must <expr>0</expr> (zero) or equal to the <ref resolved='predef::Nettle.Hash.block_size'>block_size()</ref>.</p> + </text></group></doc> + <method name='create'> + <arguments><argument name='passwd'><type><string><min>0</min><max>255</max></string></type></argument><argument name='b'><type><or><void/><int/></or></type></argument></arguments> + <returntype><void/></returntype> + </method> + </docgroup> + </class> + </module>   <class name='State'>   <doc><text><p>State for RIPEMD160 hashing.</p>   </text></doc>   <docgroup homogen-name='State' homogen-type='inherit'>   <inherit name='State'><classname resolved='predef::Nettle.Hash.State'>Hash::State</classname></inherit>   </docgroup>   </class>   </class>   <class name='SALSA20'>   <doc><text><p>Implementation of the SALSA20 cipher.</p>
autodoc.git/traditional.xml:117743:   <inherit name='State'><classname>Cipher::State</classname></inherit>   </docgroup>   </class>   </class>   <class name='SHA1'>   <doc><text><p>Implementation of the SHA1 hash algorithm.</p>   </text></doc>   <docgroup homogen-name='Hash' homogen-type='inherit'>   <inherit name='Hash'><classname resolved='predef::Nettle.Hash'>Hash</classname></inherit>   </docgroup> + <module name='HMAC'> + <doc><text><p>Accellerated implementation of HMAC (Hashing for Message Authenticity +  Control) with the SHA1 hash algorithm.</p> + </text><group><seealso/><text><p><ref resolved='predef::Crypto.HMAC'>Crypto.HMAC</ref></p> + </text></group></doc> + <class name='SHA1'> + <doc><text><p>The HMAC hash state.</p> + </text></doc> + <docgroup homogen-name='create' homogen-type='method'><doc><group><param name='passwd'/><text><p>The secret password (K).</p> + </text></group><group><param name='b'/><text><p>Block size. Must <expr>0</expr> (zero) or equal to the <ref resolved='predef::Nettle.Hash.block_size'>block_size()</ref>.</p> + </text></group></doc> + <method name='create'> + <arguments><argument name='passwd'><type><string><min>0</min><max>255</max></string></type></argument><argument name='b'><type><or><void/><int/></or></type></argument></arguments> + <returntype><void/></returntype> + </method> + </docgroup> + </class> + </module>   <class name='State'>   <doc><text><p>State for SHA1 hashing.</p>   </text></doc>   <docgroup homogen-name='State' homogen-type='inherit'>   <inherit name='State'><classname resolved='predef::Nettle.Hash.State'>Hash::State</classname></inherit>   </docgroup>   </class>   </class>   <class name='SHA224'>   <doc><text><p>Implementation of the SHA224 hash algorithm.</p>   </text></doc>   <docgroup homogen-name='Hash' homogen-type='inherit'>   <inherit name='Hash'><classname resolved='predef::Nettle.Hash'>Hash</classname></inherit>   </docgroup> -  + <module name='HMAC'> + <doc><text><p>Accellerated implementation of HMAC (Hashing for Message Authenticity +  Control) with the SHA224 hash algorithm.</p> + </text><group><seealso/><text><p><ref resolved='predef::Crypto.HMAC'>Crypto.HMAC</ref></p> + </text></group></doc> + <class name='SHA224'> + <doc><text><p>The HMAC hash state.</p> + </text></doc> + <docgroup homogen-name='create' homogen-type='method'><doc><group><param name='passwd'/><text><p>The secret password (K).</p> + </text></group><group><param name='b'/><text><p>Block size. Must <expr>0</expr> (zero) or equal to the <ref resolved='predef::Nettle.Hash.block_size'>block_size()</ref>.</p> + </text></group></doc> + <method name='create'> + <arguments><argument name='passwd'><type><string><min>0</min><max>255</max></string></type></argument><argument name='b'><type><or><void/><int/></or></type></argument></arguments> + <returntype><void/></returntype> + </method> + </docgroup> + </class> + </module>   <class name='State'>   <doc><text><p>State for SHA224 hashing.</p>   </text></doc>   <docgroup homogen-name='State' homogen-type='inherit'>   <inherit name='State'><classname resolved='predef::Nettle.Hash.State'>Hash::State</classname></inherit>   </docgroup>   </class>   </class>   <class name='SHA256'>   <doc><text><p>Implementation of the SHA256 hash algorithm.</p>   </text></doc>   <docgroup homogen-name='Hash' homogen-type='inherit'>   <inherit name='Hash'><classname resolved='predef::Nettle.Hash'>Hash</classname></inherit>   </docgroup> -  + <module name='HMAC'> + <doc><text><p>Accellerated implementation of HMAC (Hashing for Message Authenticity +  Control) with the SHA256 hash algorithm.</p> + </text><group><seealso/><text><p><ref resolved='predef::Crypto.HMAC'>Crypto.HMAC</ref></p> + </text></group></doc> + <class name='SHA256'> + <doc><text><p>The HMAC hash state.</p> + </text></doc> + <docgroup homogen-name='create' homogen-type='method'><doc><group><param name='passwd'/><text><p>The secret password (K).</p> + </text></group><group><param name='b'/><text><p>Block size. Must <expr>0</expr> (zero) or equal to the <ref resolved='predef::Nettle.Hash.block_size'>block_size()</ref>.</p> + </text></group></doc> + <method name='create'> + <arguments><argument name='passwd'><type><string><min>0</min><max>255</max></string></type></argument><argument name='b'><type><or><void/><int/></or></type></argument></arguments> + <returntype><void/></returntype> + </method> + </docgroup> + </class> + </module>   <class name='State'>   <doc><text><p>State for SHA256 hashing.</p>   </text></doc>   <docgroup homogen-name='State' homogen-type='inherit'>   <inherit name='State'><classname resolved='predef::Nettle.Hash.State'>Hash::State</classname></inherit>   </docgroup>   </class>   </class>   <class name='SHA384'>   <doc><text><p>Implementation of the SHA384 hash algorithm.</p>   </text></doc>   <docgroup homogen-name='Hash' homogen-type='inherit'>   <inherit name='Hash'><classname resolved='predef::Nettle.Hash'>Hash</classname></inherit>   </docgroup> -  + <module name='HMAC'> + <doc><text><p>Accellerated implementation of HMAC (Hashing for Message Authenticity +  Control) with the SHA384 hash algorithm.</p> + </text><group><seealso/><text><p><ref resolved='predef::Crypto.HMAC'>Crypto.HMAC</ref></p> + </text></group></doc> + <class name='SHA384'> + <doc><text><p>The HMAC hash state.</p> + </text></doc> + <docgroup homogen-name='create' homogen-type='method'><doc><group><param name='passwd'/><text><p>The secret password (K).</p> + </text></group><group><param name='b'/><text><p>Block size. Must <expr>0</expr> (zero) or equal to the <ref resolved='predef::Nettle.Hash.block_size'>block_size()</ref>.</p> + </text></group></doc> + <method name='create'> + <arguments><argument name='passwd'><type><string><min>0</min><max>255</max></string></type></argument><argument name='b'><type><or><void/><int/></or></type></argument></arguments> + <returntype><void/></returntype> + </method> + </docgroup> + </class> + </module>   <class name='State'>   <doc><text><p>State for SHA384 hashing.</p>   </text></doc>   <docgroup homogen-name='State' homogen-type='inherit'>   <inherit name='State'><classname resolved='predef::Nettle.Hash.State'>Hash::State</classname></inherit>   </docgroup>   </class>   </class>   <class name='SHA3_224'>   <doc><text><p>Implementation of the SHA3_224 hash algorithm.</p>   </text></doc>   <docgroup homogen-name='Hash' homogen-type='inherit'>   <inherit name='Hash'><classname resolved='predef::Nettle.Hash'>Hash</classname></inherit>   </docgroup> -  + <module name='HMAC'> + <doc><text><p>Accellerated implementation of HMAC (Hashing for Message Authenticity +  Control) with the SHA3_224 hash algorithm.</p> + </text><group><seealso/><text><p><ref resolved='predef::Crypto.HMAC'>Crypto.HMAC</ref></p> + </text></group></doc> + <class name='SHA3_224'> + <doc><text><p>The HMAC hash state.</p> + </text></doc> + <docgroup homogen-name='create' homogen-type='method'><doc><group><param name='passwd'/><text><p>The secret password (K).</p> + </text></group><group><param name='b'/><text><p>Block size. Must <expr>0</expr> (zero) or equal to the <ref resolved='predef::Nettle.Hash.block_size'>block_size()</ref>.</p> + </text></group></doc> + <method name='create'> + <arguments><argument name='passwd'><type><string><min>0</min><max>255</max></string></type></argument><argument name='b'><type><or><void/><int/></or></type></argument></arguments> + <returntype><void/></returntype> + </method> + </docgroup> + </class> + </module>   <class name='State'>   <doc><text><p>State for SHA3_224 hashing.</p>   </text></doc>   <docgroup homogen-name='State' homogen-type='inherit'>   <inherit name='State'><classname resolved='predef::Nettle.Hash.State'>Hash::State</classname></inherit>   </docgroup>   </class>   </class>   <class name='SHA3_256'>   <doc><text><p>Implementation of the SHA3_256 hash algorithm.</p>   </text></doc>   <docgroup homogen-name='Hash' homogen-type='inherit'>   <inherit name='Hash'><classname resolved='predef::Nettle.Hash'>Hash</classname></inherit>   </docgroup> -  + <module name='HMAC'> + <doc><text><p>Accellerated implementation of HMAC (Hashing for Message Authenticity +  Control) with the SHA3_256 hash algorithm.</p> + </text><group><seealso/><text><p><ref resolved='predef::Crypto.HMAC'>Crypto.HMAC</ref></p> + </text></group></doc> + <class name='SHA3_256'> + <doc><text><p>The HMAC hash state.</p> + </text></doc> + <docgroup homogen-name='create' homogen-type='method'><doc><group><param name='passwd'/><text><p>The secret password (K).</p> + </text></group><group><param name='b'/><text><p>Block size. Must <expr>0</expr> (zero) or equal to the <ref resolved='predef::Nettle.Hash.block_size'>block_size()</ref>.</p> + </text></group></doc> + <method name='create'> + <arguments><argument name='passwd'><type><string><min>0</min><max>255</max></string></type></argument><argument name='b'><type><or><void/><int/></or></type></argument></arguments> + <returntype><void/></returntype> + </method> + </docgroup> + </class> + </module>   <class name='State'>   <doc><text><p>State for SHA3_256 hashing.</p>   </text></doc>   <docgroup homogen-name='State' homogen-type='inherit'>   <inherit name='State'><classname resolved='predef::Nettle.Hash.State'>Hash::State</classname></inherit>   </docgroup>   </class>   </class>   <class name='SHA3_384'>   <doc><text><p>Implementation of the SHA3_384 hash algorithm.</p>   </text></doc>   <docgroup homogen-name='Hash' homogen-type='inherit'>   <inherit name='Hash'><classname resolved='predef::Nettle.Hash'>Hash</classname></inherit>   </docgroup> -  + <module name='HMAC'> + <doc><text><p>Accellerated implementation of HMAC (Hashing for Message Authenticity +  Control) with the SHA3_384 hash algorithm.</p> + </text><group><seealso/><text><p><ref resolved='predef::Crypto.HMAC'>Crypto.HMAC</ref></p> + </text></group></doc> + <class name='SHA3_384'> + <doc><text><p>The HMAC hash state.</p> + </text></doc> + <docgroup homogen-name='create' homogen-type='method'><doc><group><param name='passwd'/><text><p>The secret password (K).</p> + </text></group><group><param name='b'/><text><p>Block size. Must <expr>0</expr> (zero) or equal to the <ref resolved='predef::Nettle.Hash.block_size'>block_size()</ref>.</p> + </text></group></doc> + <method name='create'> + <arguments><argument name='passwd'><type><string><min>0</min><max>255</max></string></type></argument><argument name='b'><type><or><void/><int/></or></type></argument></arguments> + <returntype><void/></returntype> + </method> + </docgroup> + </class> + </module>   <class name='State'>   <doc><text><p>State for SHA3_384 hashing.</p>   </text></doc>   <docgroup homogen-name='State' homogen-type='inherit'>   <inherit name='State'><classname resolved='predef::Nettle.Hash.State'>Hash::State</classname></inherit>   </docgroup>   </class>   </class>   <class name='SHA3_512'>   <doc><text><p>Implementation of the SHA3_512 hash algorithm.</p>   </text></doc>   <docgroup homogen-name='Hash' homogen-type='inherit'>   <inherit name='Hash'><classname resolved='predef::Nettle.Hash'>Hash</classname></inherit>   </docgroup> -  + <module name='HMAC'> + <doc><text><p>Accellerated implementation of HMAC (Hashing for Message Authenticity +  Control) with the SHA3_512 hash algorithm.</p> + </text><group><seealso/><text><p><ref resolved='predef::Crypto.HMAC'>Crypto.HMAC</ref></p> + </text></group></doc> + <class name='SHA3_512'> + <doc><text><p>The HMAC hash state.</p> + </text></doc> + <docgroup homogen-name='create' homogen-type='method'><doc><group><param name='passwd'/><text><p>The secret password (K).</p> + </text></group><group><param name='b'/><text><p>Block size. Must <expr>0</expr> (zero) or equal to the <ref resolved='predef::Nettle.Hash.block_size'>block_size()</ref>.</p> + </text></group></doc> + <method name='create'> + <arguments><argument name='passwd'><type><string><min>0</min><max>255</max></string></type></argument><argument name='b'><type><or><void/><int/></or></type></argument></arguments> + <returntype><void/></returntype> + </method> + </docgroup> + </class> + </module>   <class name='State'>   <doc><text><p>State for SHA3_512 hashing.</p>   </text></doc>   <docgroup homogen-name='State' homogen-type='inherit'>   <inherit name='State'><classname resolved='predef::Nettle.Hash.State'>Hash::State</classname></inherit>   </docgroup>   </class>   </class>   <class name='SHA512'>   <doc><text><p>Implementation of the SHA512 hash algorithm.</p>   </text></doc>   <docgroup homogen-name='Hash' homogen-type='inherit'>   <inherit name='Hash'><classname resolved='predef::Nettle.Hash'>Hash</classname></inherit>   </docgroup> -  + <module name='HMAC'> + <doc><text><p>Accellerated implementation of HMAC (Hashing for Message Authenticity +  Control) with the SHA512 hash algorithm.</p> + </text><group><seealso/><text><p><ref resolved='predef::Crypto.HMAC'>Crypto.HMAC</ref></p> + </text></group></doc> + <class name='SHA512'> + <doc><text><p>The HMAC hash state.</p> + </text></doc> + <docgroup homogen-name='create' homogen-type='method'><doc><group><param name='passwd'/><text><p>The secret password (K).</p> + </text></group><group><param name='b'/><text><p>Block size. Must <expr>0</expr> (zero) or equal to the <ref resolved='predef::Nettle.Hash.block_size'>block_size()</ref>.</p> + </text></group></doc> + <method name='create'> + <arguments><argument name='passwd'><type><string><min>0</min><max>255</max></string></type></argument><argument name='b'><type><or><void/><int/></or></type></argument></arguments> + <returntype><void/></returntype> + </method> + </docgroup> + </class> + </module>   <class name='State'>   <doc><text><p>State for SHA512 hashing.</p>   </text></doc>   <docgroup homogen-name='State' homogen-type='inherit'>   <inherit name='State'><classname resolved='predef::Nettle.Hash.State'>Hash::State</classname></inherit>   </docgroup>   </class>   </class>   <class name='SHA512_224'>   <doc><text><p>Implementation of the SHA512_224 hash algorithm.</p>   </text></doc>   <docgroup homogen-name='Hash' homogen-type='inherit'>   <inherit name='Hash'><classname resolved='predef::Nettle.Hash'>Hash</classname></inherit>   </docgroup> -  + <module name='HMAC'> + <doc><text><p>Accellerated implementation of HMAC (Hashing for Message Authenticity +  Control) with the SHA512_224 hash algorithm.</p> + </text><group><seealso/><text><p><ref resolved='predef::Crypto.HMAC'>Crypto.HMAC</ref></p> + </text></group></doc> + <class name='SHA512_224'> + <doc><text><p>The HMAC hash state.</p> + </text></doc> + <docgroup homogen-name='create' homogen-type='method'><doc><group><param name='passwd'/><text><p>The secret password (K).</p> + </text></group><group><param name='b'/><text><p>Block size. Must <expr>0</expr> (zero) or equal to the <ref resolved='predef::Nettle.Hash.block_size'>block_size()</ref>.</p> + </text></group></doc> + <method name='create'> + <arguments><argument name='passwd'><type><string><min>0</min><max>255</max></string></type></argument><argument name='b'><type><or><void/><int/></or></type></argument></arguments> + <returntype><void/></returntype> + </method> + </docgroup> + </class> + </module>   <class name='State'>   <doc><text><p>State for SHA512_224 hashing.</p>   </text></doc>   <docgroup homogen-name='State' homogen-type='inherit'>   <inherit name='State'><classname resolved='predef::Nettle.Hash.State'>Hash::State</classname></inherit>   </docgroup>   </class>   </class>   <class name='SHA512_256'>   <doc><text><p>Implementation of the SHA512_256 hash algorithm.</p>   </text></doc>   <docgroup homogen-name='Hash' homogen-type='inherit'>   <inherit name='Hash'><classname resolved='predef::Nettle.Hash'>Hash</classname></inherit>   </docgroup> -  + <module name='HMAC'> + <doc><text><p>Accellerated implementation of HMAC (Hashing for Message Authenticity +  Control) with the SHA512_256 hash algorithm.</p> + </text><group><seealso/><text><p><ref resolved='predef::Crypto.HMAC'>Crypto.HMAC</ref></p> + </text></group></doc> + <class name='SHA512_256'> + <doc><text><p>The HMAC hash state.</p> + </text></doc> + <docgroup homogen-name='create' homogen-type='method'><doc><group><param name='passwd'/><text><p>The secret password (K).</p> + </text></group><group><param name='b'/><text><p>Block size. Must <expr>0</expr> (zero) or equal to the <ref resolved='predef::Nettle.Hash.block_size'>block_size()</ref>.</p> + </text></group></doc> + <method name='create'> + <arguments><argument name='passwd'><type><string><min>0</min><max>255</max></string></type></argument><argument name='b'><type><or><void/><int/></or></type></argument></arguments> + <returntype><void/></returntype> + </method> + </docgroup> + </class> + </module>   <class name='State'>   <doc><text><p>State for SHA512_256 hashing.</p>   </text></doc>   <docgroup homogen-name='State' homogen-type='inherit'>   <inherit name='State'><classname resolved='predef::Nettle.Hash.State'>Hash::State</classname></inherit>   </docgroup>   </class>   </class>   <class name='Twofish'>   <doc><text><p>Implementation of the Twofish cipher.</p>
autodoc.git/traditional.xml:130246:   <p> Unlike the system struct tm the 'year' field is not year-1900,    instead it is the actual year.</p>   </text></doc>   <variable name='sec'><type><int><min>0</min><max>60</max></int></type></variable>   <variable name='min'><type><int><min>0</min><max>59</max></int></type></variable>   <variable name='hour'><type><int><min>0</min><max>59</max></int></type></variable>   <variable name='mday'><type><int><min>1</min><max>31</max></int></type></variable>   <variable name='mon'><type><int><min>0</min><max>11</max></int></type></variable>   <variable name='year'><type><int/></type></variable>   </docgroup> - <docgroup homogen-name='isdst' homogen-type='variable'><doc><text><p>True if daylight savings are in effect. If this field is -1 + <docgroup homogen-name='isdst' homogen-type='variable'><doc><text><p>True if daylight-saving is in effect. If this field is -1    (the default) it (and the timezone info) will be updated    automatically using the timezone rules.</p>   </text></doc>   <variable name='isdst'><type><int/></type></variable>   </docgroup>   <docgroup homogen-name='localtime' homogen-type='method'><doc><text><p>Initialize the struct tm to the local time for the specified    unix time_t.</p>   </text></doc>   <method name='localtime'>   <arguments><argument name='time'><type><int/></type></argument></arguments>
autodoc.git/traditional.xml:140207:   <doc><text><p>Base class for Message Authentication Codes (MAC)s.</p>   <p> These are hashes that have been extended with a secret key.</p>   </text></doc>   <docgroup homogen-name='' homogen-type='import'>   <import name=''><classname resolved='predef::'>predef::</classname></import>   </docgroup>   <docgroup homogen-name='__Hash' homogen-type='inherit'>   <inherit name='__Hash'><classname resolved='predef::__builtin.Nettle.__Hash'>.__Hash</classname></inherit>   </docgroup>   <docgroup homogen-name='iv_size' homogen-type='method'><doc><text><p>Returns the size of the iv/nonce (if any).</p> - <p> Some MACs like eg <ref resolved='predef::__builtin.Nettle.Hash.HMAC'>Crypto.SHA1.HMAC</ref> have fixed ivs, + <p> Some MACs like eg <ref resolved='predef::Nettle.SHA1.HMAC'>Crypto.SHA1.HMAC</ref> have fixed ivs,    in which case this function will return <expr>0</expr>.</p>   </text></doc>   <method name='iv_size'>   <arguments/>   <returntype><int><min>0</min><max/></int></returntype>   </method>   </docgroup>   <docgroup homogen-name='jwa' homogen-type='method'><doc><text><p>JWS algorithm identifier (if any, otherwise <expr>0</expr>).</p>   </text><group><seealso/><text><p><rfc>7518:3.1</rfc></p>   </text></group></doc>
autodoc.git/traditional.xml:140251:   </text></group></doc>   <method name='create'><modifiers><protected/></modifiers>   <arguments><argument name='key'><type><string/></type></argument></arguments>   <returntype><void/></returntype>   </method>   </docgroup>   <docgroup homogen-name='this_program' homogen-type='inherit'>   <inherit name='this_program'><classname resolved='predef::__builtin.Nettle.__Hash.State'>::this_program</classname></inherit>   </docgroup>   <docgroup homogen-name='iv_size' homogen-type='method'><doc><text><p>Returns the size of the iv/nonce (if any).</p> - <p> Some MACs like eg <ref resolved='predef::__builtin.Nettle.Hash.HMAC'>Crypto.SHA1.HMAC</ref> have fixed ivs, + <p> Some MACs like eg <ref resolved='predef::Nettle.SHA1.HMAC'>Crypto.SHA1.HMAC</ref> have fixed ivs,    in which case this function will return <expr>0</expr>.</p>   </text></doc>   <method name='iv_size'>   <arguments/>   <returntype><int><min>0</min><max/></int></returntype>   </method>   </docgroup>   <docgroup homogen-name='jose_decode' homogen-type='method'><doc><text><p>Verify and decode a JOSE JWS MAC signed value.</p>   </text><group><param name='jws'/><text><p>A JSON Web Signature as returned by <ref resolved='predef::__builtin.Nettle.MAC.State.jose_sign'>jose_sign()</ref>.</p>   </text></group><group><returns/><text><p>Returns <expr>0</expr> (zero) on failure, and an array</p>