diff --git a/basis/io/sockets/secure/openssl/openssl.factor b/basis/io/sockets/secure/openssl/openssl.factor index 413d323aee..d8e8079ec2 100644 --- a/basis/io/sockets/secure/openssl/openssl.factor +++ b/basis/io/sockets/secure/openssl/openssl.factor @@ -1,13 +1,13 @@ ! Copyright (C) 2007, 2008, Slava Pestov, Elie CHAFTARI. ! See http://factorcode.org/license.txt for BSD license. -USING: accessors alien alien.c-types alien.data alien.strings -assocs byte-arrays classes.struct combinators -combinators.short-circuit destructors fry io io.backend -io.binary io.buffers io.encodings.8-bit.latin1 io.encodings.utf8 -io.files io.pathnames io.ports io.sockets io.sockets.secure -io.timeouts kernel libc locals math math.functions math.order -math.parser memoize namespaces openssl openssl.libcrypto -openssl.libssl random sequences sets splitting unicode ; +USING: accessors alien alien.c-types alien.data alien.enums +alien.strings assocs byte-arrays classes.struct combinators +combinators.short-circuit destructors fry io io.backend io.binary +io.buffers io.encodings.8-bit.latin1 io.encodings.utf8 io.files +io.pathnames io.ports io.sockets io.sockets.secure io.timeouts kernel +libc locals math math.functions math.order math.parser memoize +namespaces openssl openssl.libcrypto openssl.libssl random sequences +sets splitting unicode ; IN: io.sockets.secure.openssl GENERIC: ssl-method ( symbol -- method ) @@ -323,8 +323,8 @@ M: ssl-handle dispose* ] with-destructors ; : check-verify-result ( ssl-handle -- ) - SSL_get_verify_result dup X509_V_OK = - [ drop ] [ verify-message certificate-verify-error ] if ; + SSL_get_verify_result X509_V_ERROR number>enum dup X509_V_ERR_OK = + [ drop ] [ certificate-verify-error ] if ; : x509name>string ( x509name -- string ) NID_commonName 256 diff --git a/basis/openssl/libssl/libssl.factor b/basis/openssl/libssl/libssl.factor index c7a7999849..b2d5f142c3 100644 --- a/basis/openssl/libssl/libssl.factor +++ b/basis/openssl/libssl/libssl.factor @@ -1,10 +1,9 @@ ! Copyright (C) 2007 Elie CHAFTARI ! Portions copyright (C) 2008 Slava Pestov ! See http://factorcode.org/license.txt for BSD license. -USING: alien alien.c-types alien.destructors alien.libraries alien.parser -alien.syntax assocs classes.struct combinators kernel lexer -literals namespaces openssl.libcrypto parser quotations -sequences system words ; +USING: alien alien.c-types alien.destructors alien.libraries +alien.parser alien.syntax classes.struct combinators kernel literals +namespaces openssl.libcrypto system ; IN: openssl.libssl @@ -513,63 +512,48 @@ FUNCTION: void SSL_CTX_set_tmp_rsa_callback ( SSL_CTX* ctx, void* rsa ) ! =============================================== ! x509_vfy.h ! =============================================== -<< - -SYMBOL: verify-messages - -H{ } clone verify-messages set-global - -: verify-message ( n -- word ) verify-messages get-global at ; - -SYNTAX: X509_V_: - scan-token "X509_V_" prepend create-word-in - scan-number - [ 1quotation ( -- value ) define-inline ] - [ verify-messages get set-at ] - 2bi ; ->> - -X509_V_: OK 0 -X509_V_: ERR_UNABLE_TO_GET_ISSUER_CERT 2 -X509_V_: ERR_UNABLE_TO_GET_CRL 3 -X509_V_: ERR_UNABLE_TO_DECRYPT_CERT_SIGNATURE 4 -X509_V_: ERR_UNABLE_TO_DECRYPT_CRL_SIGNATURE 5 -X509_V_: ERR_UNABLE_TO_DECODE_ISSUER_PUBLIC_KEY 6 -X509_V_: ERR_CERT_SIGNATURE_FAILURE 7 -X509_V_: ERR_CRL_SIGNATURE_FAILURE 8 -X509_V_: ERR_CERT_NOT_YET_VALID 9 -X509_V_: ERR_CERT_HAS_EXPIRED 10 -X509_V_: ERR_CRL_NOT_YET_VALID 11 -X509_V_: ERR_CRL_HAS_EXPIRED 12 -X509_V_: ERR_ERROR_IN_CERT_NOT_BEFORE_FIELD 13 -X509_V_: ERR_ERROR_IN_CERT_NOT_AFTER_FIELD 14 -X509_V_: ERR_ERROR_IN_CRL_LAST_UPDATE_FIELD 15 -X509_V_: ERR_ERROR_IN_CRL_NEXT_UPDATE_FIELD 16 -X509_V_: ERR_OUT_OF_MEM 17 -X509_V_: ERR_DEPTH_ZERO_SELF_SIGNED_CERT 18 -X509_V_: ERR_SELF_SIGNED_CERT_IN_CHAIN 19 -X509_V_: ERR_UNABLE_TO_GET_ISSUER_CERT_LOCALLY 20 -X509_V_: ERR_UNABLE_TO_VERIFY_LEAF_SIGNATURE 21 -X509_V_: ERR_CERT_CHAIN_TOO_LONG 22 -X509_V_: ERR_CERT_REVOKED 23 -X509_V_: ERR_INVALID_CA 24 -X509_V_: ERR_PATH_LENGTH_EXCEEDED 25 -X509_V_: ERR_INVALID_PURPOSE 26 -X509_V_: ERR_CERT_UNTRUSTED 27 -X509_V_: ERR_CERT_REJECTED 28 -X509_V_: ERR_SUBJECT_ISSUER_MISMATCH 29 -X509_V_: ERR_AKID_SKID_MISMATCH 30 -X509_V_: ERR_AKID_ISSUER_SERIAL_MISMATCH 31 -X509_V_: ERR_KEYUSAGE_NO_CERTSIGN 32 -X509_V_: ERR_UNABLE_TO_GET_CRL_ISSUER 33 -X509_V_: ERR_UNHANDLED_CRITICAL_EXTENSION 34 -X509_V_: ERR_KEYUSAGE_NO_CRL_SIGN 35 -X509_V_: ERR_UNHANDLED_CRITICAL_CRL_EXTENSION 36 -X509_V_: ERR_INVALID_NON_CA 37 -X509_V_: ERR_PROXY_PATH_LENGTH_EXCEEDED 38 -X509_V_: ERR_KEYUSAGE_NO_DIGITAL_SIGNATURE 39 -X509_V_: ERR_PROXY_CERTIFICATES_NOT_ALLOWED 40 -X509_V_: ERR_APPLICATION_VERIFICATION 50 +ENUM: X509_V_ERROR + X509_V_ERR_OK + { X509_V_ERR_UNABLE_TO_GET_ISSUER_CERT 2 } + X509_V_ERR_UNABLE_TO_GET_CRL + X509_V_ERR_UNABLE_TO_DECRYPT_CERT_SIGNATURE + X509_V_ERR_UNABLE_TO_DECRYPT_CRL_SIGNATURE + X509_V_ERR_UNABLE_TO_DECODE_ISSUER_PUBLIC_KEY + X509_V_ERR_CERT_SIGNATURE_FAILURE + X509_V_ERR_CRL_SIGNATURE_FAILURE + X509_V_ERR_CERT_NOT_YET_VALID + X509_V_ERR_CERT_HAS_EXPIRED + X509_V_ERR_CRL_NOT_YET_VALID + X509_V_ERR_CRL_HAS_EXPIRED + X509_V_ERR_ERROR_IN_CERT_NOT_BEFORE_FIELD + X509_V_ERR_ERROR_IN_CERT_NOT_AFTER_FIELD + X509_V_ERR_ERROR_IN_CRL_LAST_UPDATE_FIELD + X509_V_ERR_ERROR_IN_CRL_NEXT_UPDATE_FIELD + X509_V_ERR_OUT_OF_MEM + X509_V_ERR_DEPTH_ZERO_SELF_SIGNED_CERT + X509_V_ERR_SELF_SIGNED_CERT_IN_CHAIN + X509_V_ERR_UNABLE_TO_GET_ISSUER_CERT_LOCALLY + X509_V_ERR_UNABLE_TO_VERIFY_LEAF_SIGNATURE + X509_V_ERR_CERT_CHAIN_TOO_LONG + X509_V_ERR_CERT_REVOKED + X509_V_ERR_INVALID_CA + X509_V_ERR_PATH_LENGTH_EXCEEDED + X509_V_ERR_INVALID_PURPOSE + X509_V_ERR_CERT_UNTRUSTED + X509_V_ERR_CERT_REJECTED + X509_V_ERR_SUBJECT_ISSUER_MISMATCH + X509_V_ERR_AKID_SKID_MISMATCH + X509_V_ERR_AKID_ISSUER_SERIAL_MISMATCH + X509_V_ERR_KEYUSAGE_NO_CERTSIGN + X509_V_ERR_UNABLE_TO_GET_CRL_ISSUER + X509_V_ERR_UNHANDLED_CRITICAL_EXTENSION + X509_V_ERR_KEYUSAGE_NO_CRL_SIGN + X509_V_ERR_UNHANDLED_CRITICAL_CRL_EXTENSION + X509_V_ERR_INVALID_NON_CA + X509_V_ERR_PROXY_PATH_LENGTH_EXCEEDED + X509_V_ERR_KEYUSAGE_NO_DIGITAL_SIGNATURE + X509_V_ERR_PROXY_CERTIFICATES_NOT_ALLOWED + { X509_V_ERR_APPLICATION_VERIFICATION 50 } ; ! =============================================== ! obj_mac.h