openssl

Модераторы: Hawk, Romeo, Absurd, DeeJayC, WinMain

Ответить
pots
Сообщения: 43
Зарегистрирован: 14 июн 2006, 14:18

24 янв 2007, 17:19

Здравствуйте, :)

Разбираюсь потихоньку с сабжем и,конечно, возникли проблемы:

есть сервер:

Код: Выделить всё

method = SSLv23_server_method();
ctx = SSL_CTX_new(method);
SSL_CTX_set_cipher_list(ctx,"DEFAULT");
	
if (!SSL_CTX_use_certificate_file(ctx,"server.pem",SSL_FILETYPE_PEM)
        || !SSL_CTX_use_PrivateKey_file(ctx,"server.pem",SSL_FILETYPE_PEM)
        || !SSL_CTX_check_private_key(ctx))err->Error("Error setting up SSL_CTX.");

connection = SSL_new(ctx);
	
acpt=BIO_new_accept("4433");
SSL_set_bio(connection,acpt,acpt);
SSL_accept(connection);
и есть клиент:

Код: Выделить всё

method = SSLv23_client_method();
ctx = SSL_CTX_new(method);
SSL_CTX_set_cipher_list(ctx,"DEFAULT");

cbio = BIO_new_ssl_connect(ctx);
BIO_set_conn_hostname(cbio, "194.226.198.164:4433");

connection = SSL_new(ctx);
SSL_set_bio(connection,cbio,cbio);
SSL_connect(connection);
Так вот, при выполнении на стороне сервера ошика: All successful
а на стороне клента - the underlying BIO reported an I/O error

Как так?
pots
Сообщения: 43
Зарегистрирован: 14 июн 2006, 14:18

24 янв 2007, 17:25

Черт, опять я тороплюсь
видать, у меня пока сюда вопрос не выложу, ответ никак не рождается :)

проблема решается на стороне клиента следующим образом

Код: Выделить всё

...делаем ctx...
cbio = BIO_new_ssl_connect(ctx);
BIO_set_conn_hostname(cbio, "194.226.198.164:4433");

BIO_get_ssl(cbio,&connection);

SSL_connect(connection);

извините, впредь буду сначала только имитировать пост сюда :) )
Ответить