Оболочка OpenSSL, которая имитирует socket.h (C ++) - PullRequest
5 голосов
/ 24 октября 2011

Я имею дело с этим большим пользовательским сетевым приложением.Он был написан на C ++ (linux) с использованием sockets.h --- код включает передачу дескрипторов файлов (сокетов), использование структур, установку параметров сокетов и т. Д. И т. Д.

Вместо того, чтобы переписывать все это, мне было интересно, есть ли что-нибудь доступное, которое использует те же прототипы функций, что и socket.h, но использует openSSL для защиты канала связи.

Очевидно, что все еще нужно устанавливать такие вещи, как ключи, проверять местоположение,и т. д., но было бы здорово не менять все на БИО или что-то в этом роде ...

Спасибо !!

1 Ответ

1 голос
/ 25 октября 2011

SSL_set_fd и SSL_get_fd позволяют устанавливать / извлекать файловый дескриптор и избегать BIO. Вам все еще нужно использовать SSL_read / SSL_write вместо чтения / записи и т. Д.

Для реализации интерфейса sockets.h потребуется простой способ перехода от fd к объекту SSL, что нетривиально. Такая оболочка не поставляется с OpenSSL, и я очень сомневаюсь, что существует сторонняя оболочка.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...