Rodzina SHA256_XXX zadeklarowana w /usr/include/openssl/sha.h została uznana za przestarzałą w systemie OS-X 10.7 i nowszych.Alternatywa dla obliczania sha256 na użycie przestarzałego kodu openssl
int SHA256_Init(SHA256_CTX *c) DEPRECATED_IN_MAC_OS_X_VERSION_10_7_AND_LATER;
int SHA256_Update(SHA256_CTX *c, const void *data, size_t len) DEPRECATED_IN_MAC_OS_X_VERSION_10_7_AND_LATER;
int SHA256_Final(unsigned char *md, SHA256_CTX *c) DEPRECATED_IN_MAC_OS_X_VERSION_10_7_AND_LATER;
unsigned char *SHA256(const unsigned char *d, size_t n,unsigned char *md) DEPRECATED_IN_MAC_OS_X_VERSION_10_7_AND_LATER;
void SHA256_Transform(SHA256_CTX *c, const unsigned char *data) DEPRECATED_IN_MAC_OS_X_VERSION_10_7_AND_LATER;
Mimo że obecnie działa, zastanawiam się, jaka jest alternatywa dla późniejszych wersji OS X.
jedna możliwość: w moich własnych projektach buduję i dostarczam własną bibliotekę OpenSSL lub framework wbudowany w aplikację ... –
@MichaelDautermann, co masz na myśli, kompilujesz openssl na własną rękę (bez deklaracje deprecjacji) i używać go zamiast tego? – Zohar81
Tak, [tworzę własne wersje OpenSSL] (http://stackoverflow.com/questions/25530429/build-multiarch-openssl-on-os-x), a następnie łączę się z tym zamiast wersji wbudowanej w SDK że Apple woli, żebyśmy tego nie używali. –