Мне нужно настроить сокет TCP и отправить сообщение на сервер, а затем выполнить согласование SSL с сервером и выполнить последующий обмен данными в SSL. Мне нужно использовать libevent для реализации этого, потому что он не блокируется, поэтому я могу иметь много соединений одновременно.libevent, начать SSL после
я могу получить соединение установить и обмен некоторые данные в текстовом формате:
struct bufferevent *bev = bufferevent_socket_new(base, -1, BEV_OPT_CLOSE_ON_FREE);
struct sockaddr_in addr;
//fill the addr with ip and port
bufferevent_socket_connect(bev, (struct sockaddr *)&addr, sizeof(struct sockaddr_in));
//send data
evbuffer_add(bufferevent_get_output(bev), data, len);
Проблема заключается в том, Libevent, кажется, есть только один API, чтобы сделать SSL, но это предполагает объект bufferevent еще не создан ,
bufferevent_openssl_socket_new
Спасибо за любые предложения.