Я работаю с классом сертификатов X509 библиотеки OpenSSL, и мне нужно запросить расширение «использование ключа».
После отказа от "документации" OpenSSL о пароварке, в результате поиска по сети в темноте выяснилось, что мне нужно позвонить
X509_get_ext_d2i(X509 *x, int nid, int *crit, int *idx)
и поиск в заголовке objects.h показал правильный NID.
Проблема в том, что этот вызов возвращает указатель на void, который, очевидно, может указывать на различные структуры в зависимости от того, какое расширение было запрошено.
Поскольку ни один из них, похоже, не задокументирован, остается без способа выяснить, как разобрать, что возвращает функция.
Может ли кто-нибудь указать мне документ, который на самом деле говорит об этом, вместо того, чтобы просто перечислять то, что я могу найти для себя (профиль функции, из какого файла он поступает и т. Д.)?