diff --git a/harbour/ChangeLog b/harbour/ChangeLog index 6e39c7c4a6..795285e46d 100644 --- a/harbour/ChangeLog +++ b/harbour/ChangeLog @@ -8,6 +8,14 @@ 2008-12-31 13:59 UTC+0100 Foo Bar (foo.bar foobar.org) */ +2009-01-27 09:38 UTC+0100 Viktor Szakats (harbour.01 syenar hu) + * contrib/hbssl/sslctx.c + * contrib/hbssl/ssl.c + - Removed some functions operating on binary data. + + * ChangeLog + * TOFIX marked DONE. + 2009-01-27 04:30 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl) * harbour/include/hbdefs.h * added some C compilers which supports stdint.h @@ -27,11 +35,12 @@ ! fixed BCC5.5 compilation TOFIX: harbour/contrib/hbssl/ssl.c[631], sslctx.c[268], sslctx.c[281] - error: invalid conversion from ‘void*’ to ‘const char*’ + error: invalid conversion from void* to const char* I do not know if SSL_get_ex_data()/SSL_CTX_get_app_data() returns valid ASCIIZ string so I cannot decide if simple casting is safe and to pacify above errors. Viktor, can you look at it? + [DONE] 2009-01-27 02:22 UTC+0100 Viktor Szakats (harbour.01 syenar hu) * source/rtl/version.c diff --git a/harbour/contrib/hbssl/ssl.c b/harbour/contrib/hbssl/ssl.c index 5994c38a88..910a4fe908 100644 --- a/harbour/contrib/hbssl/ssl.c +++ b/harbour/contrib/hbssl/ssl.c @@ -621,19 +621,6 @@ HB_FUNC( SSL_ALERT_TYPE_STRING_LONG ) hb_retc( SSL_alert_type_string_long( hb_parni( 1 ) ) ); } -HB_FUNC( SSL_GET_EX_DATA ) -{ - if( hb_SSL_is( 1 ) ) - { - SSL * ssl = hb_SSL_par( 1 ); - - if( ssl ) - hb_retc( SSL_get_ex_data( ssl, hb_parni( 1 ) ) ); - } - else - hb_errRT_BASE( EG_ARG, 2010, NULL, HB_ERR_FUNCNAME, HB_ERR_ARGS_BASEPARAMS ); -} - HB_FUNC( SSL_RSTATE_STRING ) { if( hb_SSL_is( 1 ) ) @@ -1068,9 +1055,7 @@ HB_FUNC( SSL_SET_VERIFY_RESULT ) } /* -void SSL_set_app_data(SSL *ssl, char *arg); int SSL_set_cipher_list(SSL *ssl, char *str); -int SSL_set_ex_data(SSL *ssl, int idx, char *arg); int SSL_use_PrivateKey(SSL *ssl, EVP_PKEY *pkey); int SSL_use_PrivateKey_ASN1(int type, SSL *ssl, unsigned char *d, long len); int SSL_use_PrivateKey_file(SSL *ssl, char *file, int type); @@ -1082,13 +1067,17 @@ int SSL_use_certificate_ASN1(SSL *ssl, int len, unsigned char *d); int SSL_use_certificate_file(SSL *ssl, char *file, int type); int SSL_use_psk_identity_hint(SSL *ssl, const char *hint); +void SSL_set_app_data(SSL *ssl, char *arg); +int SSL_set_ex_data(SSL *ssl, int idx, char *arg); +char * SSL_get_app_data(SSL *ssl); +char * SSL_get_ex_data( ssl, int ); + int SSL_add_dir_cert_subjects_to_stack(STACK *stack, const char *dir); int SSL_add_file_cert_subjects_to_stack(STACK *stack, const char *file); int SSL_add_client_CA(SSL *ssl, X509 *x); long SSL_ctrl(SSL *ssl, int cmd, long larg, char *parg); STACK * SSL_dup_CA_list(STACK *sk); SSL_CTX * SSL_get_SSL_CTX(const SSL *ssl); -char * SSL_get_app_data(SSL *ssl); X509 * SSL_get_certificate(const SSL *ssl); STACK * SSL_get_ciphers(const SSL *ssl); STACK * SSL_get_client_CA_list(const SSL *ssl); diff --git a/harbour/contrib/hbssl/sslctx.c b/harbour/contrib/hbssl/sslctx.c index f3b506ca76..b0ba54933b 100644 --- a/harbour/contrib/hbssl/sslctx.c +++ b/harbour/contrib/hbssl/sslctx.c @@ -258,32 +258,6 @@ HB_FUNC( SSL_CTX_SET_SESSION_CACHE_MODE ) hb_errRT_BASE( EG_ARG, 2010, NULL, HB_ERR_FUNCNAME, HB_ERR_ARGS_BASEPARAMS ); } -HB_FUNC( SSL_CTX_GET_APP_DATA ) -{ - if( hb_SSL_CTX_is( 1 ) ) - { - SSL_CTX * ctx = hb_SSL_CTX_par( 1 ); - - if( ctx ) - hb_retc( SSL_CTX_get_app_data( ctx ) ); - } - else - hb_errRT_BASE( EG_ARG, 2010, NULL, HB_ERR_FUNCNAME, HB_ERR_ARGS_BASEPARAMS ); -} - -HB_FUNC( SSL_CTX_GET_EX_DATA ) -{ - if( hb_SSL_CTX_is( 1 ) ) - { - SSL_CTX * ctx = hb_SSL_CTX_par( 1 ); - - if( ctx ) - hb_retc( SSL_CTX_get_ex_data( ctx, hb_parni( 2 ) ) ); - } - else - hb_errRT_BASE( EG_ARG, 2010, NULL, HB_ERR_FUNCNAME, HB_ERR_ARGS_BASEPARAMS ); -} - HB_FUNC( SSL_CTX_CHECK_PRIVATE_KEY ) { if( hb_SSL_CTX_is( 1 ) ) @@ -576,8 +550,6 @@ void SSL_CTX_set_cert_store(SSL_CTX *,X509_STORE *); int SSL_CTX_add_client_CA(SSL_CTX *ctx, X509 *x); long SSL_CTX_add_extra_chain_cert(SSL_CTX *ctx, X509 *x509); void SSL_CTX_set_cert_store(SSL_CTX *ctx, X509_STORE *cs); -void SSL_CTX_set_app_data(SSL_CTX *ctx, void *arg); -int SSL_CTX_set_ex_data(SSL_CTX *s, int idx, char *arg); int SSL_CTX_set_cipher_list(SSL_CTX *ctx, char *str); int SSL_CTX_use_PrivateKey(SSL_CTX *ctx, EVP_PKEY *pkey); int SSL_CTX_use_PrivateKey_ASN1(int type, SSL_CTX *ctx, unsigned char *d, long len); @@ -592,6 +564,11 @@ int SSL_CTX_use_psk_identity_hint(SSL_CTX *ctx, const char *hint); long SSL_CTX_ctrl(SSL_CTX *ctx, int cmd, long larg, char *parg); STACK *SSL_CTX_get_client_CA_list(const SSL_CTX *ctx); +void SSL_CTX_set_app_data(SSL_CTX *ctx, void *arg); +int SSL_CTX_set_ex_data(SSL_CTX *s, int idx, char *arg); +char * SSL_CTX_get_app_data( ctx ); +char * SSL_CTX_get_ex_data( ctx, int ); + int (*SSL_CTX_get_client_cert_cb(SSL_CTX *ctx))(SSL *ssl, X509 **x509, EVP_PKEY **pkey); int SSL_CTX_get_ex_new_index(long argl, char *argp, int (*new_func);(void), int (*dup_func)(void), void (*free_func)(void)) void (*SSL_CTX_get_info_callback(SSL_CTX *ctx))(SSL *ssl, int cb, int ret);