Почему Apple отказывается от OpenSSL в MacOS 10.7 (Lion)?
Apple отметила большинство (но не всех) OpenSSL API как "устаревшие" в MacOS 10.7. Я не смог найти четкую документацию относительно того, почему Apple это делает. Кто-нибудь знает?
: warning: ‘SSL_library_init’ is deprecated (declared at /usr/include/openssl/ssl.h:1553)
Ответы
Ответ 1
Apple переходит с OpenSSL на Common Crypto (который Apple разрабатывает).
Некоторые документы:
http://developer.apple.com/library/mac/#documentation/Darwin/Reference/ManPages/man3/CC_crypto.3cc.html
Информация о WHY Apple делает это: http://adcdownload.apple.com/wwdc_2011/adc_on_itunes__wwdc11_sessions__pdf/212_nextgeneration_cryptographic_services.pdf
Если вышеуказанная ссылка не работает (возможно, она будет), вот инструкции по навигации:
- Вход в http://developer.apple.com
- Прокрутите вниз, нажмите "Видеоролики развития"
- На следующей странице нажмите "Узнать больше" в разделе WWDC 2011
- Прокрутите вниз примерно на полпути (или поиск), пока не увидите "Криптографические службы следующего поколения", и щелкните по нему
- Теперь вы достигли погребенного сокровища, загрузите "Презентационные слайды"
Ответ 2
Поскольку OpenSSL не предлагает API-совместимости между версиями
Это означает, что Apple не может предоставлять обновления для системы безопасности без нарушения существующих приложений.
http://rentzsch.tumblr.com/post/33696323211/wherein-i-write-apples-technote-about-openssl-on-os-x
Ответ 3
dylib openssl устарел из-за проблем с двоичной совместимостью в разных версиях (например: вызывает такие проблемы, как Почему пакет тестов OpenSSL не работает на MacOS X?).
Смотрите joet3ch ответ за то, что Apple предлагает сделать с этим.
Тем не менее, вы свободны/должны получать openssl от openssl.org и статически ставить ссылку.