checksums,openssl.libcrypto: make it work with openssl 1.1
parent
97cf96b668
commit
5156d250b9
|
@ -1,8 +1,7 @@
|
||||||
! Copyright (C) 2008, 2010, 2016 Slava Pestov, Alexander Ilin
|
! Copyright (C) 2008, 2010, 2016 Slava Pestov, Alexander Ilin
|
||||||
! See http://factorcode.org/license.txt for BSD license.
|
! See http://factorcode.org/license.txt for BSD license.
|
||||||
USING: accessors alien.c-types alien.data checksums
|
USING: accessors alien.c-types alien.data checksums checksums.common
|
||||||
checksums.common destructors kernel openssl openssl.libcrypto
|
destructors kernel namespaces openssl openssl.libcrypto sequences ;
|
||||||
sequences ;
|
|
||||||
IN: checksums.openssl
|
IN: checksums.openssl
|
||||||
|
|
||||||
ERROR: unknown-digest name ;
|
ERROR: unknown-digest name ;
|
||||||
|
@ -21,12 +20,17 @@ C: <openssl-checksum> openssl-checksum
|
||||||
|
|
||||||
TUPLE: evp-md-context < disposable handle ;
|
TUPLE: evp-md-context < disposable handle ;
|
||||||
|
|
||||||
|
: evp-md-ctx-new ( -- ctx )
|
||||||
|
ssl-new-api? get-global [ EVP_MD_CTX_new ] [ EVP_MD_CTX_create ] if ;
|
||||||
|
|
||||||
|
: evp-md-ctx-free ( ctx -- )
|
||||||
|
ssl-new-api? get-global [ EVP_MD_CTX_free ] [ EVP_MD_CTX_destroy ] if ;
|
||||||
|
|
||||||
: <evp-md-context> ( -- ctx )
|
: <evp-md-context> ( -- ctx )
|
||||||
evp-md-context new-disposable
|
evp-md-context new-disposable evp-md-ctx-new >>handle ;
|
||||||
EVP_MD_CTX_create >>handle ;
|
|
||||||
|
|
||||||
M: evp-md-context dispose*
|
M: evp-md-context dispose*
|
||||||
handle>> EVP_MD_CTX_destroy ;
|
handle>> evp-md-ctx-free ;
|
||||||
|
|
||||||
: digest-named ( name -- md )
|
: digest-named ( name -- md )
|
||||||
dup EVP_get_digestbyname [ ] [ unknown-digest ] ?if ;
|
dup EVP_get_digestbyname [ ] [ unknown-digest ] ?if ;
|
||||||
|
|
|
@ -139,11 +139,20 @@ STRUCT: EVP_MD_CTX
|
||||||
{ flags ulong }
|
{ flags ulong }
|
||||||
{ md_data void* } ;
|
{ md_data void* } ;
|
||||||
|
|
||||||
|
! ------------------------------------------------------------------------------
|
||||||
|
! API >= 1.1.0
|
||||||
|
! ------------------------------------------------------------------------------
|
||||||
|
FUNCTION: ulong OpenSSL_version_num ( )
|
||||||
|
FUNCTION: EVP_MD_CTX* EVP_MD_CTX_new ( )
|
||||||
|
FUNCTION: void EVP_MD_CTX_free ( EVP_MD_CTX* ctx )
|
||||||
|
|
||||||
! ------------------------------------------------------------------------------
|
! ------------------------------------------------------------------------------
|
||||||
! API < 1.1.0, removed in new versions
|
! API < 1.1.0, removed in new versions
|
||||||
! ------------------------------------------------------------------------------
|
! ------------------------------------------------------------------------------
|
||||||
FUNCTION: void OpenSSL_add_all_ciphers ( )
|
FUNCTION: void OpenSSL_add_all_ciphers ( )
|
||||||
FUNCTION: void OpenSSL_add_all_digests ( )
|
FUNCTION: void OpenSSL_add_all_digests ( )
|
||||||
|
FUNCTION: EVP_MD_CTX* EVP_MD_CTX_create ( )
|
||||||
|
FUNCTION: void EVP_MD_CTX_destroy ( EVP_MD_CTX* ctx )
|
||||||
! ------------------------------------------------------------------------------
|
! ------------------------------------------------------------------------------
|
||||||
|
|
||||||
! Clean them up before exiting
|
! Clean them up before exiting
|
||||||
|
@ -154,11 +163,6 @@ FUNCTION: EVP_MD* EVP_get_digestbyname ( c-string name )
|
||||||
FUNCTION: void EVP_MD_CTX_init ( EVP_MD* ctx )
|
FUNCTION: void EVP_MD_CTX_init ( EVP_MD* ctx )
|
||||||
|
|
||||||
FUNCTION: int EVP_MD_CTX_cleanup ( EVP_MD_CTX* ctx )
|
FUNCTION: int EVP_MD_CTX_cleanup ( EVP_MD_CTX* ctx )
|
||||||
|
|
||||||
FUNCTION: EVP_MD_CTX* EVP_MD_CTX_create ( )
|
|
||||||
|
|
||||||
FUNCTION: void EVP_MD_CTX_destroy ( EVP_MD_CTX* ctx )
|
|
||||||
|
|
||||||
FUNCTION: int EVP_MD_CTX_copy_ex ( EVP_MD_CTX* out, EVP_MD_CTX* in )
|
FUNCTION: int EVP_MD_CTX_copy_ex ( EVP_MD_CTX* out, EVP_MD_CTX* in )
|
||||||
|
|
||||||
FUNCTION: int EVP_DigestInit_ex ( EVP_MD_CTX* ctx, EVP_MD* type, ENGINE* impl )
|
FUNCTION: int EVP_DigestInit_ex ( EVP_MD_CTX* ctx, EVP_MD* type, ENGINE* impl )
|
||||||
|
|
Loading…
Reference in New Issue