Я использую PEM_write_X509(x509*)
, чтобы написать сертификат, полученный при подключении к серверу SSL. Он работает в средах с одним потоком, но не работает в многопоточных средах.PEM_write_X509 (x509 *) и сбой в многопоточном процессе
В чем разница между PEM_write_X509_AUX()
и PEM_write_X509()
?
Можно ли сбросить сертификат, используя только write()
?
Существуют ли другие возможности для записи файла сертификата в многопоточном приложении?
* «Это работает в средах с одним потоком, но не работает в средах с несколькими потоками». * - вы можете показать свой код, который устанавливает блокировки. Но я думаю, что вопросы без него. Лично я работал бы с многопоточной проблемой сбоя, потому что у вас, вероятно, есть другие проблемы. Повреждение приложения скорее всего является проблемой симптомов или экземпляров. – jww
*** «Будет ли нормально выдавать сертификат, используя только вызов write()?» *** - это большой НЕТ. «X509 *» - это структура данных в памяти. Его внутреннее представление и не означает сериализацию. Если вы попытаетесь, вы увидите некоторые данные сертификата и много указателей. Для сериализации в PEM и 'i2d_X509_bio' вам необходимо выполнить процедуры, такие как' PEM_write_bio_X509', для сериализации в формате ASN.1/DER. – jww
есть. Я полностью согласен.... – Naga