awslabs / awslabs/aws-lambda-cpp

function deprecation issue when make building aws-sdk-cpp demo

Đang mở
#110 0 bình luận 2 reaction 0 người được giao Xem trên GitHub
Ngôn ngữ chính
C++
Star
465
Fork
98
Merge trung bình
12 giờ 47 phút
Pull request đã merge (30 ngày)
3

Mô tả

```
[ 36%] Building CXX object aws-cpp-sdk-core/CMakeFiles/aws-cpp-sdk-core.dir/ub_core.cpp.o
In file included from ~~??~~/aws-sdk-cpp/build/aws-cpp-sdk-core/ub_core.cpp:46:
~~??~~/aws-sdk-cpp/aws-cpp-sdk-core/source/utils/crypto/openssl/CryptoImpl.cpp: In constructor ‘Aws::Utils::Crypto::HMACRAIIGuard::HMACRAIIGuard()’:
~~??~~/aws-sdk-cpp/aws-cpp-sdk-core/source/utils/crypto/openssl/CryptoImpl.cpp:281:42: error: ‘HMAC_CTX* HMAC_CTX_new()’ is deprecated [-Werror=deprecated-declarations]
281 | m_ctx = HMAC_CTX_new();
| ^
In file included from /usr/local/include/openssl/opensslv.h:109,
from /usr/local/include/openssl/macros.h:11,
from /usr/local/include/openssl/opensslconf.h:14,
from /usr/local/include/openssl/macros.h:10,
from /usr/local/include/openssl/e_os2.h:14,
from /usr/local/include/openssl/types.h:19,
from /usr/local/include/openssl/ossl_typ.h:16,
from ~~??~~/aws-sdk-cpp/aws-cpp-sdk-core/include/aws/core/utils/crypto/openssl/CryptoImpl.h:12,
from ~~??~~/aws-sdk-cpp/aws-cpp-sdk-core/source/utils/crypto/openssl/CryptoImpl.cpp:9,
from ~~??~~/aws-sdk-cpp/build/aws-cpp-sdk-core/ub_core.cpp:46:
/usr/local/include/openssl/hmac.h:32:1: note: declared here
32 | DEPRECATEDIN_3_0(HMAC_CTX *HMAC_CTX_new(void))
| ^~~~~~~~~~~~~~~~
In file included from ~~??~~/aws-sdk-cpp/build/aws-cpp-sdk-core/ub_core.cpp:46:
~~??~~/aws-sdk-cpp/aws-cpp-sdk-core/source/utils/crypto/openssl/CryptoImpl.cpp:281:42: error: ‘HMAC_CTX* HMAC_CTX_new()’ is deprecated [-Werror=deprecated-declarations]
281 | m_ctx = HMAC_CTX_new();
| ^
In file included from /usr/local/include/openssl/opensslv.h:109,
from /usr/local/include/openssl/macros.h:11,
from /usr/local/include/openssl/opensslconf.h:14,
from /usr/local/include/openssl/macros.h:10,
from /usr/local/include/openssl/e_os2.h:14,
from /usr/local/include/openssl/types.h:19,
from /usr/local/include/openssl/ossl_typ.h:16,
from ~~??~~/aws-sdk-cpp/aws-cpp-sdk-core/include/aws/core/utils/crypto/openssl/CryptoImpl.h:12,
from ~~??~~/aws-sdk-cpp/aws-cpp-sdk-core/source/utils/crypto/openssl/CryptoImpl.cpp:9,
from ~~??~~/aws-sdk-cpp/build/aws-cpp-sdk-core/ub_core.cpp:46:
/usr/local/include/openssl/hmac.h:32:1: note: declared here
32 | DEPRECATEDIN_3_0(HMAC_CTX *HMAC_CTX_new(void))
| ^~~~~~~~~~~~~~~~
In file included from ~~??~~/aws-sdk-cpp/build/aws-cpp-sdk-core/ub_core.cpp:46:
~~??~~/aws-sdk-cpp/aws-cpp-sdk-core/source/utils/crypto/openssl/CryptoImpl.cpp: In destructor ‘Aws::Utils::Crypto::HMACRAIIGuard::~HMACRAIIGuard()’:
~~??~~/aws-sdk-cpp/aws-cpp-sdk-core/source/utils/crypto/openssl/CryptoImpl.cpp:290:40: error: ‘void HMAC_CTX_free(HMAC_CTX*)’ is deprecated [-Werror=deprecated-declarations]
290 | HMAC_CTX_free(m_ctx);
| ^
In file included from /usr/local/include/openssl/opensslv.h:109,
from /usr/local/include/openssl/macros.h:11,
from /usr/local/include/openssl/opensslconf.h:14,
from /usr/local/include/openssl/macros.h:10,
from /usr/local/include/openssl/e_os2.h:14,
from /usr/local/include/openssl/types.h:19,
from /usr/local/include/openssl/ossl_typ.h:16,
from ~~??~~/aws-sdk-cpp/aws-cpp-sdk-core/include/aws/core/utils/crypto/openssl/CryptoImpl.h:12,
from ~~??~~/aws-sdk-cpp/aws-cpp-sdk-core/source/utils/crypto/openssl/CryptoImpl.cpp:9,
from ~~??~~/aws-sdk-cpp/build/aws-cpp-sdk-core/ub_core.cpp:46:
/usr/local/include/openssl/hmac.h:34:1: note: declared here
34 | DEPRECATEDIN_3_0(void HMAC_CTX_free(HMAC_CTX *ctx))
| ^~~~~~~~~~~~~~~~
In file included from ~~??~~/aws-sdk-cpp/build/aws-cpp-sdk-core/ub_core.cpp:46:
~~??~~/aws-sdk-cpp/aws-cpp-sdk-core/source/utils/crypto/openssl/CryptoImpl.cpp:290:40: error: ‘void HMAC_CTX_free(HMAC_CTX*)’ is deprecated [-Werror=deprecated-declarations]
290 | HMAC_CTX_free(m_ctx);
| ^
In file included from /usr/local/include/openssl/opensslv.h:109,
from /usr/local/include/openssl/macros.h:11,
from /usr/local/include/openssl/opensslconf.h:14,
from /usr/local/include/openssl/macros.h:10,
from /usr/local/include/openssl/e_os2.h:14,
from /usr/local/include/openssl/types.h:19,
from /usr/local/include/openssl/ossl_typ.h:16,
from ~~??~~/aws-sdk-cpp/aws-cpp-sdk-core/include/aws/core/utils/crypto/openssl/CryptoImpl.h:12,
from ~~??~~/aws-sdk-cpp/aws-cpp-sdk-core/source/utils/crypto/openssl/CryptoImpl.cpp:9,
from ~~??~~/aws-sdk-cpp/build/aws-cpp-sdk-core/ub_core.cpp:46:
/usr/local/include/openssl/hmac.h:34:1: note: declared here
34 | DEPRECATEDIN_3_0(void HMAC_CTX_free(HMAC_CTX *ctx))
| ^~~~~~~~~~~~~~~~
In file included from ~~??~~/aws-sdk-cpp/build/aws-cpp-sdk-core/ub_core.cpp:46:
~~??~~/aws-sdk-cpp/aws-cpp-sdk-core/source/utils/crypto/openssl/CryptoImpl.cpp: In member function ‘virtual Aws::Utils::Crypto::HashResult Aws::Utils::Crypto::Sha256HMACOpenSSLImpl::Calculate(const ByteBuffer&, const ByteBuffer&)’:
~~??~~/aws-sdk-cpp/aws-cpp-sdk-core/source/utils/crypto/openssl/CryptoImpl.cpp:316:34: error: ‘int HMAC_Init_ex(HMAC_CTX*, const void*, int, const EVP_MD*, ENGINE*)’ is deprecated [-Werror=deprecated-declarations]
316 | NULL);
| ^
In file included from /usr/local/include/openssl/opensslv.h:109,
from /usr/local/include/openssl/macros.h:11,
from /usr/local/include/openssl/opensslconf.h:14,
from /usr/local/include/openssl/macros.h:10,
from /usr/local/include/openssl/e_os2.h:14,
from /usr/local/include/openssl/types.h:19,
from /usr/local/include/openssl/ossl_typ.h:16,
from ~~??~~/aws-sdk-cpp/aws-cpp-sdk-core/include/aws/core/utils/crypto/openssl/CryptoImpl.h:12,
from ~~??~~/aws-sdk-cpp/aws-cpp-sdk-core/source/utils/crypto/openssl/CryptoImpl.cpp:9,
from ~~??~~/aws-sdk-cpp/build/aws-cpp-sdk-core/ub_core.cpp:46:
/usr/local/include/openssl/hmac.h:39:1: note: declared here
39 | DEPRECATEDIN_3_0(int HMAC_Init_ex(HMAC_CTX *ctx, const void *key, int len,
| ^~~~~~~~~~~~~~~~
In file included from ~~??~~/aws-sdk-cpp/build/aws-cpp-sdk-core/ub_core.cpp:46:
~~??~~/aws-sdk-cpp/aws-cpp-sdk-core/source/utils/crypto/openssl/CryptoImpl.cpp:316:34: error: ‘int HMAC_Init_ex(HMAC_CTX*, const void*, int, const EVP_MD*, ENGINE*)’ is deprecated [-Werror=deprecated-declarations]
316 | NULL);
| ^
In file included from /usr/local/include/openssl/opensslv.h:109,
from /usr/local/include/openssl/macros.h:11,
from /usr/local/include/openssl/opensslconf.h:14,
from /usr/local/include/openssl/macros.h:10,
from /usr/local/include/openssl/e_os2.h:14,
from /usr/local/include/openssl/types.h:19,
from /usr/local/include/openssl/ossl_typ.h:16,
from ~~??~~/aws-sdk-cpp/aws-cpp-sdk-core/include/aws/core/utils/crypto/openssl/CryptoImpl.h:12,
from ~~??~~/aws-sdk-cpp/aws-cpp-sdk-core/source/utils/crypto/openssl/CryptoImpl.cpp:9,
from ~~??~~/aws-sdk-cpp/build/aws-cpp-sdk-core/ub_core.cpp:46:
/usr/local/include/openssl/hmac.h:39:1: note: declared here
39 | DEPRECATEDIN_3_0(int HMAC_Init_ex(HMAC_CTX *ctx, const void *key, int len,
| ^~~~~~~~~~~~~~~~
In file included from ~~??~~/aws-sdk-cpp/build/aws-cpp-sdk-core/ub_core.cpp:46:
~~??~~/aws-sdk-cpp/aws-cpp-sdk-core/source/utils/crypto/openssl/CryptoImpl.cpp:317:82: error: ‘int HMAC_Update(HMAC_CTX*, const unsigned char*, size_t)’ is deprecated [-Werror=deprecated-declarations]
317 | HMAC_Update(m_ctx, toSign.GetUnderlyingData(), toSign.GetLength());
| ^
In file included from /usr/local/include/openssl/opensslv.h:109,
from /usr/local/include/openssl/macros.h:11,
from /usr/local/include/openssl/opensslconf.h:14,
from /usr/local/include/openssl/macros.h:10,
from /usr/local/include/openssl/e_os2.h:14,
from /usr/local/include/openssl/types.h:19,
from /usr/local/include/openssl/ossl_typ.h:16,
from ~~??~~/aws-sdk-cpp/aws-cpp-sdk-core/include/aws/core/utils/crypto/openssl/CryptoImpl.h:12,
from ~~??~~/aws-sdk-cpp/aws-cpp-sdk-core/source/utils/crypto/openssl/CryptoImpl.cpp:9,
from ~~??~~/aws-sdk-cpp/build/aws-cpp-sdk-core/ub_core.cpp:46:
/usr/local/include/openssl/hmac.h:41:1: note: declared here
41 | DEPRECATEDIN_3_0(int HMAC_Update(HMAC_CTX *ctx, const unsigned char *data,
| ^~~~~~~~~~~~~~~~
In file included from ~~??~~/aws-sdk-cpp/build/aws-cpp-sdk-core/ub_core.cpp:46:
~~??~~/aws-sdk-cpp/aws-cpp-sdk-core/source/utils/crypto/openssl/CryptoImpl.cpp:317:82: error: ‘int HMAC_Update(HMAC_CTX*, const unsigned char*, size_t)’ is deprecated [-Werror=deprecated-declarations]
317 | HMAC_Update(m_ctx, toSign.GetUnderlyingData(), toSign.GetLength());
| ^
In file included from /usr/local/include/openssl/opensslv.h:109,
from /usr/local/include/openssl/macros.h:11,
from /usr/local/include/openssl/opensslconf.h:14,
from /usr/local/include/openssl/macros.h:10,
from /usr/local/include/openssl/e_os2.h:14,
from /usr/local/include/openssl/types.h:19,
from /usr/local/include/openssl/ossl_typ.h:16,
from ~~??~~/aws-sdk-cpp/aws-cpp-sdk-core/include/aws/core/utils/crypto/openssl/CryptoImpl.h:12,
from ~~??~~/aws-sdk-cpp/aws-cpp-sdk-core/source/utils/crypto/openssl/CryptoImpl.cpp:9,
from ~~??~~/aws-sdk-cpp/build/aws-cpp-sdk-core/ub_core.cpp:46:
/usr/local/include/openssl/hmac.h:41:1: note: declared here
41 | DEPRECATEDIN_3_0(int HMAC_Update(HMAC_CTX *ctx, const unsigned char *data,
| ^~~~~~~~~~~~~~~~
In file included from ~~??~~/aws-sdk-cpp/build/aws-cpp-sdk-core/ub_core.cpp:46:
~~??~~/aws-sdk-cpp/aws-cpp-sdk-core/source/utils/crypto/openssl/CryptoImpl.cpp:318:70: error: ‘int HMAC_Final(HMAC_CTX*, unsigned char*, unsigned int*)’ is deprecated [-Werror=deprecated-declarations]
318 | HMAC_Final(m_ctx, digest.GetUnderlyingData(), &length);
| ^
In file included from /usr/local/include/openssl/opensslv.h:109,
from /usr/local/include/openssl/macros.h:11,
from /usr/local/include/openssl/opensslconf.h:14,
from /usr/local/include/openssl/macros.h:10,
from /usr/local/include/openssl/e_os2.h:14,
from /usr/local/include/openssl/types.h:19,
from /usr/local/include/openssl/ossl_typ.h:16,
from ~~??~~/aws-sdk-cpp/aws-cpp-sdk-core/include/aws/core/utils/crypto/openssl/CryptoImpl.h:12,
from ~~??~~/aws-sdk-cpp/aws-cpp-sdk-core/source/utils/crypto/openssl/CryptoImpl.cpp:9,
from ~~??~~/aws-sdk-cpp/build/aws-cpp-sdk-core/ub_core.cpp:46:
/usr/local/include/openssl/hmac.h:43:1: note: declared here
43 | DEPRECATEDIN_3_0(int HMAC_Final(HMAC_CTX *ctx, unsigned char *md,
| ^~~~~~~~~~~~~~~~
In file included from ~~??~~/aws-sdk-cpp/build/aws-cpp-sdk-core/ub_core.cpp:46:
~~??~~/aws-sdk-cpp/aws-cpp-sdk-core/source/utils/crypto/openssl/CryptoImpl.cpp:318:70: error: ‘int HMAC_Final(HMAC_CTX*, unsigned char*, unsigned int*)’ is deprecated [-Werror=deprecated-declarations]
318 | HMAC_Final(m_ctx, digest.GetUnderlyingData(), &length);
| ^
In file included from /usr/local/include/openssl/opensslv.h:109,
from /usr/local/include/openssl/macros.h:11,
from /usr/local/include/openssl/opensslconf.h:14,
from /usr/local/include/openssl/macros.h:10,
from /usr/local/include/openssl/e_os2.h:14,
from /usr/local/include/openssl/types.h:19,
from /usr/local/include/openssl/ossl_typ.h:16,
from ~~??~~/aws-sdk-cpp/aws-cpp-sdk-core/include/aws/core/utils/crypto/openssl/CryptoImpl.h:12,
from ~~??~~/aws-sdk-cpp/aws-cpp-sdk-core/source/utils/crypto/openssl/CryptoImpl.cpp:9,
from ~~??~~/aws-sdk-cpp/build/aws-cpp-sdk-core/ub_core.cpp:46:
/usr/local/include/openssl/hmac.h:43:1: note: declared here
43 | DEPRECATEDIN_3_0(int HMAC_Final(HMAC_CTX *ctx, unsigned char *md,
| ^~~~~~~~~~~~~~~~
In file included from ~~??~~/aws-sdk-cpp/build/aws-cpp-sdk-core/ub_core.cpp:46:
~~??~~/aws-sdk-cpp/aws-cpp-sdk-core/source/utils/crypto/openssl/CryptoImpl.cpp:323:37: error: ‘int HMAC_CTX_reset(HMAC_CTX*)’ is deprecated [-Werror=deprecated-declarations]
323 | HMAC_CTX_reset(m_ctx);
| ^
In file included from /usr/local/include/openssl/opensslv.h:109,
from /usr/local/include/openssl/macros.h:11,
from /usr/local/include/openssl/opensslconf.h:14,
from /usr/local/include/openssl/macros.h:10,
from /usr/local/include/openssl/e_os2.h:14,
from /usr/local/include/openssl/types.h:19,
from /usr/local/include/openssl/ossl_typ.h:16,
from ~~??~~/aws-sdk-cpp/aws-cpp-sdk-core/include/aws/core/utils/crypto/openssl/CryptoImpl.h:12,
from ~~??~~/aws-sdk-cpp/aws-cpp-sdk-core/source/utils/crypto/openssl/CryptoImpl.cpp:9,
from ~~??~~/aws-sdk-cpp/build/aws-cpp-sdk-core/ub_core.cpp:46:
/usr/local/include/openssl/hmac.h:33:1: note: declared here
33 | DEPRECATEDIN_3_0(int HMAC_CTX_reset(HMAC_CTX *ctx))
| ^~~~~~~~~~~~~~~~
In file included from ~~??~~/aws-sdk-cpp/build/aws-cpp-sdk-core/ub_core.cpp:46:
~~??~~/aws-sdk-cpp/aws-cpp-sdk-core/source/utils/crypto/openssl/CryptoImpl.cpp:323:37: error: ‘int HMAC_CTX_reset(HMAC_CTX*)’ is deprecated [-Werror=deprecated-declarations]
323 | HMAC_CTX_reset(m_ctx);
| ^
In file included from /usr/local/include/openssl/opensslv.h:109,
from /usr/local/include/openssl/macros.h:11,
from /usr/local/include/openssl/opensslconf.h:14,
from /usr/local/include/openssl/macros.h:10,
from /usr/local/include/openssl/e_os2.h:14,
from /usr/local/include/openssl/types.h:19,
from /usr/local/include/openssl/ossl_typ.h:16,
from ~~??~~/aws-sdk-cpp/aws-cpp-sdk-core/include/aws/core/utils/crypto/openssl/CryptoImpl.h:12,
from ~~??~~/aws-sdk-cpp/aws-cpp-sdk-core/source/utils/crypto/openssl/CryptoImpl.cpp:9,
from ~~??~~/aws-sdk-cpp/build/aws-cpp-sdk-core/ub_core.cpp:46:
/usr/local/include/openssl/hmac.h:33:1: note: declared here
33 | DEPRECATEDIN_3_0(int HMAC_CTX_reset(HMAC_CTX *ctx))
| ^~~~~~~~~~~~~~~~
cc1plus: all warnings being treated as errors
make[2]: *** [aws-cpp-sdk-core/CMakeFiles/aws-cpp-sdk-core.dir/build.make:512: aws-cpp-sdk-core/CMakeFiles/aws-cpp-sdk-core.dir/ub_core.cpp.o] Error 1
make[1]: *** [CMakeFiles/Makefile2:233: aws-cpp-sdk-core/CMakeFiles/aws-cpp-sdk-core.dir/all] Error 2
make: *** [Makefile:130: all] Error 2
```

I was following the instructions [here](https://github.com/awslabs/aws-lambda-cpp/tree/master/examples/s3)

How can I fix this issue?

Hướng dẫn đóng góp

Mở hướng dẫn đóng góp

Hướng nghiên cứu

Tái hiện bản build demo và kiểm tra aws-cpp-sdk-core/source/utils/crypto/openssl/CryptoImpl.cpp, đặc biệt là HMACRAIIGuard và Sha256HMACOpenSSLImpl. Sử dụng các chẩn đoán không còn được khuyến nghị của OpenSSL đã báo cáo làm điểm bắt đầu; hoàn thành khi bản build kết thúc mà không có các lỗi này.

Do mô hình lập chỉ mục viết ra từ nội dung của issue.

Đánh giá

Công nghệ
aws, cmake, cpp
Lĩnh vực
build-system
Loại issue
Lỗi
Độ khó
4/5
Thời gian dự kiến
3-5 ngày
Mức độ hoạt động
Đình trệ
Độ rõ ràng
Cần làm rõ
Mức phù hợp với người mới
35/100

Nhận issue mới trong hộp thư của bạn

Bản tóm tắt ngắn những issue GitHub phù hợp với người mới.