Changeset 36733 in project


Ignore:
Timestamp:
10/28/18 13:47:28 (3 weeks ago)
Author:
kon
Message:

rel 4.1.0

File:
1 edited

Legend:

Unmodified
Added
Removed
  • wiki/eggref/5/message-digest-type

    r36711 r36733  
    2121{{RESULT-FORM}} is a {{message-digest-result-form}}, one of:
    2222
    23 ; {{'byte-string}} {{'string}} : the result bytes as a string; these are raw bytes, not necessarily characters!
    2423; {{'blob}} : the result bytes as a blob.
    2524; {{'u8vector}} : the result bytes as a u8vector.
    2625; {{'hex-string}} {{'hex}} {{'hexstring}} : the result bytes encoded as a string of lower-case hexadecimal digits.
     26; {{'string}} {{'byte-string}} : DEPRECATED - the result bytes as a string; these are raw bytes, not necessarily characters!
    2727
    2828{{DIGEST}} is a {{message-digest}}.
     
    6666''Initialized'' here means the intialization phase is completed.
    6767
    68 ==== message-digest?
     68==== initialize-message-digest!
    6969
    70 <procedure>(message-digest? OBJ) -> boolean</procedure>
     70<procedure>(initialize-message-digest! PRIM CTX) -> message-digest</procedure>
    7171
    72 <procedure>(check-message-digest LOC OBJ [NAM])</procedure>
    73 <procedure>(error-message-digest LOC OBJ [NAM])</procedure>
     72Returns a new, initialized, {{message-digest}} for the supplied
     73{{message-digest-primitive-context}} {{CTX}}.
    7474
    75 ==== message-digest-algorithm
     75''Initialized'' here means the intialization phase is completed.
    7676
    77 <procedure>(message-digest-algorithm DIGEST) -> message-digest-primitive</procedure>
     77==== ensure-message-digest-buffer!
    7878
    79 Returns the message digest algorithm used by this {{DIGEST}}.
     79<procedure>(ensure-message-digest-buffer! DIGEST SIZE)</procedure>
    8080
    81 Mostly for use when developing an update operation.
    82 
    83 ''Do not mess with this object!''
     81Ensure the {{DIGEST}} has a buffer of at least {{SIZE}} bytes.
    8482
    8583==== finalize-message-digest
     
    111109in a useful state.
    112110
    113 ==== setup-message-digest-buffer!
     111==== message-digest?
    114112
    115 <procedure>(setup-message-digest-buffer! DIGEST SIZE)</procedure>
     113<procedure>(message-digest? OBJ) --> boolean</procedure>
    116114
    117 Ensure the {{DIGEST}} has a buffer of at least {{SIZE}} bytes.
     115<procedure>(check-message-digest LOC OBJ [NAM])</procedure>
     116<procedure>(error-message-digest LOC OBJ [NAM])</procedure>
     117
     118==== message-digest-algorithm
     119
     120<procedure>(message-digest-algorithm DIGEST) --> message-digest-primitive</procedure>
     121
     122Returns the message-digest algorithm object representation used by this
     123{{DIGEST}}.
     124
     125Mostly for use when developing an update operation.
     126
     127==== message-digest-context
     128
     129<procedure>(message-digest-context DIGEST) --> message-digest-primitive-context</procedure>
     130
     131Returns the message-digest algorithm object opaque-data object used by this
     132{{DIGEST}}.
     133
     134Mostly for use when developing an update operation.
    118135
    119136
     
    132149== Version history
    133150
     151; 4.1.0 : Add {{initialize-message-digest!}}, fix {{message-digest-result-form}}.
    134152; 4.0.1 : Add tests & type checking.
    135153; 4.0.0 : CHICKEN 5 release as ''own'' egg.
    136 ; 3.9.0 : Add types.
    137 ; 3.8.0 : Fix {{message-digest-primitive?}}; accept {{*}}.
    138 ; 3.7.1 :
    139 ; 3.7.0 : Add {{message-digest-object!}}, {{message-digest-file!}}, and {{message-digest-port!}}.
    140 ; 3.6.0 : Add {{START}} and/or {{END}} optional arguments.
    141 ; 3.5.0 : Add {{finalize-message-digest!}}.
    142 ; 3.4.0 : Deprecate {{message-digest-chunk-read-maker}}. Add {{message-digest-chunk-port-read-maker}}, {{message-digest-chunk-fileno-read-maker}}. Add {{message-digest-primitive-raw-update}}.
    143 ; 3.3.0 : Deprecate {{message-digest-default-result-type}}. Add {{message-digest-result-form}}.
    144 ; 3.2.0 : Add {{message-digest-default-result-type}}. {{message-digest-chunk-*}} are parameters.
    145 ; 3.1.1 : Fix {{check-u8vector}} import.
    146 ; 3.1.0 : Added optional {{message-digest-primitive-block-length}}.
    147 ; 3.0.5 : Reverted 64 bit support.
    148 ; 3.0.4 : Removed 64 bit support.
    149 ; 3.0.3 :
    150 ; 3.0.2 : Use of compiled setup-helper.
    151 ; 3.0.1 :
    152 ; 3.0.0 : Removed deprecated procedures to own module. Removed integer packing procedures. Split into many modules. Deprecated some procedures.
    153 ; 2.3.8 : Treat integers as unsigned. (Ticket #534) Uses blob for finalization result buffer.
    154 ; 2.3.7 : Remove no checks optimization compier options.
    155 ; 2.3.6 : Deprecated close-output-digest. Restricted no checks optimization compier option.
    156 ; 2.3.5 : The {{'u8vector}} {{RESULT-FORM}} is slightly faster. Revert to allocated context memory.
    157 ; 2.3.4 : Try w/o C-level memory allocation so no finalizer needed.
    158 ; 2.3.3 : The {{'blob}} {{RESULT-FORM}} is slightly faster.
    159 ; 2.3.2 : Deprecated {{byte-string->hexadecimal}}. Deprecated {{string->hex}}, use [[string-utils]] {{string-hexadecimal#string->hex}}. Fix for the default {{message-digest-chunk-read-maker}}, blob was always chunk-size.
    160 ; 2.3.1 : Moved some utility routines into own egg(s).
    161 ; 2.3.0 : Added {{message-digest-update-char-u8}}, {{message-digest-update-char-be}}, and {{message-digest-update-char-le}}. {{message-digest-update-char}} now treats the actual bit-width of char correctly.
    162 ; 2.2.0 : Added [[Byte Packing]] API. Downgraded {{message-digest-chunk-read-maker}}, {{message-digest-chunk-size}} & {{message-digest-chunk-converter}} from {{parameter}}.
    163 ; 2.1.1 : Bug fix for hexstring: must use lowercase.
    164 ; 2.1.0 : Added message digest "phase" and port APIs. Deprecated old API.
    165 ; 2.0.1 : Bug fix for {{(message-digest-chunk-converter)}} use by {{make-binary-message-digest}}.
    166 ; 2.0.0 : Release for Chicken 4 [From a diff provided by Christian Kellermann]
    167154
    168155
    169156== License
    170157
    171   Copyright (C) 2006-2018 Kon Lovett.  All rights reserved.
     158  Copyright (C) 2018 Kon Lovett.  All rights reserved.
    172159
    173160  Permission is hereby granted, free of charge, to any person obtaining a
Note: See TracChangeset for help on using the changeset viewer.