apple / HomeKitADK

Apache License 2.0
2.55k stars 232 forks source link

How to update openssl version to V3.X? #139

Closed Suphappy closed 5 months ago

Suphappy commented 5 months ago

由于安全需要,希望更新openssl到V3.2,但是报了如下错误: ` PAL/Crypto/OpenSSL/HAPOpenSSL.c:319:14: error: 'SRP_get_default_gN' is deprecated [-Werror,-Wdeprecated-declarations] gN = SRP_get_default_gN("3072"); ^ /usr/local/include/openssl/srp.h:230:9: note: 'SRP_get_default_gN' has been explicitly marked deprecated here SRP_gN SRP_get_default_gN(const char id); ^ PAL/Crypto/OpenSSL/HAPOpenSSL.c:435:33: error: 'SRP_Calc_server_key' is deprecated [-Werror,-Wdeprecated-declarations] WITHBN(s, SRP_Calc_serverkey(A, v, u_, b, Get_gN_3072()->N), { ^ /usr/local/include/openssl/srp.h:234:9: note: 'SRP_Calc_server_key' has been explicitly marked deprecated here BIGNUM SRP_Calc_server_key(const BIGNUM A, const BIGNUM v, const BIGNUM u, ^ PAL/Crypto/OpenSSL/HAPOpenSSL.c:558:24: error: 'HMAC_CTX_new' is deprecated [-Werror,-Wdeprecated-declarations] WITH_CTX(HMAC_CTX, HMAC_CTX_new(), { ^ /usr/local/include/openssl/hmac.h:33:33: note: 'HMAC_CTX_new' has been explicitly marked deprecated here OSSL_DEPRECATEDIN_3_0 HMAC_CTX HMAC_CTX_new(void); ^ PAL/Crypto/OpenSSL/HAPOpenSSL.c:559:19: error: 'HMAC_Init_ex' is deprecated [-Werror,-Wdeprecated-declarations] int ret = HMAC_Init_ex(ctx, key, key_len, EVP_sha1(), NULL); ^ /usr/local/include/openssl/hmac.h:43:27: note: 'HMAC_Init_ex' has been explicitly marked deprecated here OSSL_DEPRECATEDIN_3_0 int HMAC_Init_ex(HMAC_CTX ctx, const void key, int len, ^ PAL/Crypto/OpenSSL/HAPOpenSSL.c:561:15: error: 'HMAC_Update' is deprecated [-Werror,-Wdeprecated-declarations] ret = HMAC_Update(ctx, in, in_len); ^ /usr/local/include/openssl/hmac.h:45:27: note: 'HMAC_Update' has been explicitly marked deprecated here OSSL_DEPRECATEDIN_3_0 int HMAC_Update(HMAC_CTX ctx, const unsigned char data, ^ PAL/Crypto/OpenSSL/HAPOpenSSL.c:563:15: error: 'HMAC_Update' is deprecated [-Werror,-Wdeprecated-declarations] ret = HMAC_Update(ctx, aad, aad_len); ^ /usr/local/include/openssl/hmac.h:45:27: note: 'HMAC_Update' has been explicitly marked deprecated here OSSL_DEPRECATEDIN_3_0 int HMAC_Update(HMAC_CTX ctx, const unsigned char data, ^ PAL/Crypto/OpenSSL/HAPOpenSSL.c:566:15: error: 'HMAC_Final' is deprecated [-Werror,-Wdeprecated-declarations] ret = HMAC_Final(ctx, r, &r_len); ^ /usr/local/include/openssl/hmac.h:47:27: note: 'HMAC_Final' has been explicitly marked deprecated here OSSL_DEPRECATEDIN_3_0 int HMAC_Final(HMAC_CTX ctx, unsigned char *md, ^ PAL/Crypto/OpenSSL/HAPOpenSSL.c:558:5: error: 'HMAC_CTX_free' is deprecated [-Werror,-Wdeprecated-declarations] WITH_CTX(HMAC_CTX, HMAC_CTX_new(), { ^ PAL/Crypto/OpenSSL/HAPOpenSSL.c:201:55: note: expanded from macro 'WITH_CTX'

define WITH_CTX(type, init, X) WITH(type, ctx, init, type##_free, X)

                                                  ^
:163:1: note: expanded from here HMAC_CTX_free ^ /usr/local/include/openssl/hmac.h:35:28: note: 'HMAC_CTX_free' has been explicitly marked deprecated here OSSL_DEPRECATEDIN_3_0 void HMAC_CTX_free(HMAC_CTX *ctx); ^ 8 errors generated. Build/Makefile:232: recipe for target 'Output/Linux-armv7l-unknown-linux-gnueabihf/Release/PAL/Crypto/OpenSSL/HAPOpenSSL.o' failed make[1]: *** [Output/Linux-armv7l-unknown-linux-gnueabihf/Release/PAL/Crypto/OpenSSL/HAPOpenSSL.o] Error 1 make[1]: *** Waiting for unfinished jobs.... `