-
Notifications
You must be signed in to change notification settings - Fork 6.6k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[libssh] Update libssh to version 0.9.3 #4983
Conversation
f5a024d
to
f5d1815
Compare
@cryptomilk Sorry for the delay in processing this PR. We're seeing regressions on x64-linux and x64-osx. The failures look like this:
I believe all of the errors are related to types and functions defined in OpenSSL. Does OpenSSL need to be updated to coincide with this PR? |
@cryptomilk @ras0219-msft @Codiferous |
Resolved merge conflict. The latest master introduced a new patch that may not be applicable after this PR but I did the safe thing and kept it until it is tested. |
Also the patch did not apply cleanly so it will need to be cleaned up. OpenSSL has not been updated yet so those failues are also still there. |
/azp run |
Pull request contains merge conflicts. |
I'm not sure what is the error on Linux. However I found an issue in libssh we should fix first. Will update the PR to libssh 0.9.1 once I've fixed it and did a release. |
4009441
to
decd7b9
Compare
As OpenSSL is only in version 1.0.x available I've moved it to mbedtls for now. |
8726548
to
2331409
Compare
Hi @cryptomilk |
/azp run |
Pull request contains merge conflicts. |
@NancyLi1013 You can push my modifications to this PR: https://github.com/fcharlie/vcpkg/tree/update_libssh |
2331409
to
a0841f4
Compare
a0841f4
to
d502f06
Compare
Why does someone else gets updates to libssh and this still PR still bit rots? |
Ping! |
@vicroms |
Hi @cryptomilk. Can you please add |
@illera88 Please be more precise of your problem. libssh respects If you have a real problem, please describe it. I don't see an issue. |
I thought I was being very clear with my comment. It seems that static versions can not be built with the current port. ie Or did I miss something? |
|
||
vcpkg_configure_cmake( | ||
SOURCE_PATH ${SOURCE_PATH} | ||
PREFER_NINJA | ||
OPTIONS | ||
-DWITH_STATIC_LIB=${WITH_STATIC_LIB} | ||
${FEATURE_OPTIONS} | ||
-DWITH_EXAMPLES=OFF |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
You need to pass BUILD_STATIC_LIB=ON
when building the static library. This helps reduce the number of post-install clean-up tasks.
set (LIBSSH_BUILD_STATIC OFF)
if (VCPKG_LIBRARY_LINKAGE STREQUAL "static")
set(LIBSSH_BUILD_STATIC ON)
endif()
vcpkg_configure_cmake(
...
-DBUILD_STATIC_LIB=${LIBSSH_BUILD_STATIC}
)
After that you can remove these lines:
file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/bin ${CURRENT_PACKAGES_DIR}/debug/bin)
and
if(VCPKG_TARGET_IS_WINDOWS)
file(READ ${CURRENT_PACKAGES_DIR}/share/libssh/libssh-config.cmake _contents)
string(REPLACE ".dll" ".lib" _contents "${_contents}")
file(WRITE ${CURRENT_PACKAGES_DIR}/share/libssh/libssh-config.cmake "${_contents}")
endif()
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I'm sorry, but BUILD_STATIC_LIB builds an internal static library which is only used for linking unit tests!
If you want to build a static library, you should use: -DBUILD_SHARED_LIBS=OFF. This is how it is supposed to work. See https://cmake.org/cmake/help/latest/variable/BUILD_SHARED_LIBS.html
If you look at:
It states:
By default, vcpkg_configure_cmake() will pass in the appropriate setting for BUILD_SHARED_LIBS
So vcpkg_configure_cmake() should do the right thing. If not it might have a bug ...
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@vicroms So either your documentation is wrong or you have a bug in vcpkg_configure_cmake().
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
thanks
This LGTM once the CI build passes 👍 |
/azp run |
Thanks for the PR! |
## 1.11.0 (2024-01-11) ### Features Added - Added 'OPTIONS' HTTP method to `Azure::Core::Http::HttpMethod` enum. - Added TLS 1.3 support to WinHTTP transport. - Environment Log Level Listener now logs the ThreadID for the thread originating the trace. - [[microsoft#4983]](Azure/azure-sdk-for-cpp#4983) Added support for setting `CURLOPT_CAPATH` libcurl option on Linux. (A community contribution, courtesy of _[phoebusm](https://github.com/phoebusm)_) ### Bugs Fixed - [[microsoft#5172]](Azure/azure-sdk-for-cpp#5172) `Azure::Nullable::Emplace()` does not set `HasValue()` to `true`. - [[microsoft#5130]](Azure/azure-sdk-for-cpp#5130) `Url::AppendPath()` and `Url::SetPath()` may end up with a double slash at the beginning of a path. - [[microsoft#5007]](Azure/azure-sdk-for-cpp#5007) Some versions of GCC no longer include stdint.h in cstdint. ### Other Changes - [[microsoft#4756]] (Azure/azure-sdk-for-cpp#4756) `BearerTokenAuthenticationPolicy` now uses shared mutex lock for read operations. ### Acknowledgments Thank you to our developer community members who helped to make Azure Core better with their contributions to this release: - Phoebus Mak _([GitHub](https://github.com/phoebusm))_
* [azure-messaging-eventhubs-cpp] Update to 1.0.0-beta.5 ## 1.0.0-beta.5 (2024-01-11) ### Breaking Changes - EventHub `ConsumerClient` and `ProcessorClient` objects now return pointers to `EventData` objects instead of `EventData` objects by value. * [azure-core-amqp-cpp] Update to 1.0.0-beta.6 ## 1.0.0-beta.6 (2024-01-11) ### Features Added - AMQP Value reference counts are now atomic, this fixes several AMQP related crashes. ### Breaking Changes - `MessageReceiver` returns a pointer to the received message instead of a copy. ### Bugs Fixed - Fixed several memory leaks. - AMQP Link Credits now work as expected. - Integrated the fix for NVD - CVE-2024-21646. * [azure-core-cpp] Update to 1.11.0 ## 1.11.0 (2024-01-11) ### Features Added - Added 'OPTIONS' HTTP method to `Azure::Core::Http::HttpMethod` enum. - Added TLS 1.3 support to WinHTTP transport. - Environment Log Level Listener now logs the ThreadID for the thread originating the trace. - [[#4983]](Azure/azure-sdk-for-cpp#4983) Added support for setting `CURLOPT_CAPATH` libcurl option on Linux. (A community contribution, courtesy of _[phoebusm](https://github.com/phoebusm)_) ### Bugs Fixed - [[#5172]](Azure/azure-sdk-for-cpp#5172) `Azure::Nullable::Emplace()` does not set `HasValue()` to `true`. - [[#5130]](Azure/azure-sdk-for-cpp#5130) `Url::AppendPath()` and `Url::SetPath()` may end up with a double slash at the beginning of a path. - [[#5007]](Azure/azure-sdk-for-cpp#5007) Some versions of GCC no longer include stdint.h in cstdint. ### Other Changes - [[#4756]] (Azure/azure-sdk-for-cpp#4756) `BearerTokenAuthenticationPolicy` now uses shared mutex lock for read operations. ### Acknowledgments Thank you to our developer community members who helped to make Azure Core better with their contributions to this release: - Phoebus Mak _([GitHub](https://github.com/phoebusm))_
* [azure-messaging-eventhubs-cpp] Update to 1.0.0-beta.5 ## 1.0.0-beta.5 (2024-01-11) ### Breaking Changes - EventHub `ConsumerClient` and `ProcessorClient` objects now return pointers to `EventData` objects instead of `EventData` objects by value. * [azure-core-amqp-cpp] Update to 1.0.0-beta.6 ## 1.0.0-beta.6 (2024-01-11) ### Features Added - AMQP Value reference counts are now atomic, this fixes several AMQP related crashes. ### Breaking Changes - `MessageReceiver` returns a pointer to the received message instead of a copy. ### Bugs Fixed - Fixed several memory leaks. - AMQP Link Credits now work as expected. - Integrated the fix for NVD - CVE-2024-21646. * [azure-core-cpp] Update to 1.11.0 ## 1.11.0 (2024-01-11) ### Features Added - Added 'OPTIONS' HTTP method to `Azure::Core::Http::HttpMethod` enum. - Added TLS 1.3 support to WinHTTP transport. - Environment Log Level Listener now logs the ThreadID for the thread originating the trace. - [[microsoft#4983]](Azure/azure-sdk-for-cpp#4983) Added support for setting `CURLOPT_CAPATH` libcurl option on Linux. (A community contribution, courtesy of _[phoebusm](https://github.com/phoebusm)_) ### Bugs Fixed - [[microsoft#5172]](Azure/azure-sdk-for-cpp#5172) `Azure::Nullable::Emplace()` does not set `HasValue()` to `true`. - [[microsoft#5130]](Azure/azure-sdk-for-cpp#5130) `Url::AppendPath()` and `Url::SetPath()` may end up with a double slash at the beginning of a path. - [[microsoft#5007]](Azure/azure-sdk-for-cpp#5007) Some versions of GCC no longer include stdint.h in cstdint. ### Other Changes - [[microsoft#4756]] (Azure/azure-sdk-for-cpp#4756) `BearerTokenAuthenticationPolicy` now uses shared mutex lock for read operations. ### Acknowledgments Thank you to our developer community members who helped to make Azure Core better with their contributions to this release: - Phoebus Mak _([GitHub](https://github.com/phoebusm))_
* [azure-messaging-eventhubs-cpp] Update to 1.0.0-beta.5 ## 1.0.0-beta.5 (2024-01-11) ### Breaking Changes - EventHub `ConsumerClient` and `ProcessorClient` objects now return pointers to `EventData` objects instead of `EventData` objects by value. * [azure-core-amqp-cpp] Update to 1.0.0-beta.6 ## 1.0.0-beta.6 (2024-01-11) ### Features Added - AMQP Value reference counts are now atomic, this fixes several AMQP related crashes. ### Breaking Changes - `MessageReceiver` returns a pointer to the received message instead of a copy. ### Bugs Fixed - Fixed several memory leaks. - AMQP Link Credits now work as expected. - Integrated the fix for NVD - CVE-2024-21646. * [azure-core-cpp] Update to 1.11.0 ## 1.11.0 (2024-01-11) ### Features Added - Added 'OPTIONS' HTTP method to `Azure::Core::Http::HttpMethod` enum. - Added TLS 1.3 support to WinHTTP transport. - Environment Log Level Listener now logs the ThreadID for the thread originating the trace. - [[microsoft#4983]](Azure/azure-sdk-for-cpp#4983) Added support for setting `CURLOPT_CAPATH` libcurl option on Linux. (A community contribution, courtesy of _[phoebusm](https://github.com/phoebusm)_) ### Bugs Fixed - [[microsoft#5172]](Azure/azure-sdk-for-cpp#5172) `Azure::Nullable::Emplace()` does not set `HasValue()` to `true`. - [[microsoft#5130]](Azure/azure-sdk-for-cpp#5130) `Url::AppendPath()` and `Url::SetPath()` may end up with a double slash at the beginning of a path. - [[microsoft#5007]](Azure/azure-sdk-for-cpp#5007) Some versions of GCC no longer include stdint.h in cstdint. ### Other Changes - [[microsoft#4756]] (Azure/azure-sdk-for-cpp#4756) `BearerTokenAuthenticationPolicy` now uses shared mutex lock for read operations. ### Acknowledgments Thank you to our developer community members who helped to make Azure Core better with their contributions to this release: - Phoebus Mak _([GitHub](https://github.com/phoebusm))_
This updates libssh to the lastest release. libssh 0.7.x is in security bugfix only mode.