mirror of
https://github.com/libssh2/libssh2.git
synced 2026-10-24 03:48:58 +03:00
59329f3402aea201c1f0bc99dc8153accda69193
Prior to this patch, the documentation stated that the `.text` buffers filled by the API caller are "free(3)d" by libssh2, referring to the default system deallocator. In reality however, libssh2 was using `SSH2_FREE*()` to free these buffers, respecting custom allocators, if set by the user via `libssh2_session_init_ex()`. libssh2 behaved this way since the initial implementation committed inda653774aa2005-06-11, v0.11 Later, examples were added that use `strdup()` to allocate, which was (and is) accurate because they do not use a custom allocator:9a1ce06e312007-07-22 Then, when the documentation landed, it incorrectly documented `free(3)`, perhaps basing it on the examples added earlier:d4aa801f6f2008-03-08 I assume that callers overriding the custom allocators are more likely to have fixed their code to adhere with how libssh2 actually behaved, rather than believing the documentation and live with an allocator mismatch for all these years. Therefore I think this is a documentation error, and this patch addresses this. Reported-by: Makise Kurisu Fixes GHSA-p6p8-66vc-3f24 Revertsce631aafe1#2659 Follow-up tod4aa801f6fFollow-up toda653774aaCloses #2661
libssh2 - SSH2 library
libssh2 is a library implementing the SSH2 protocol, available under the revised BSD license.
Installation instructions:
Description
libssh2 - это библиотека, реализующая протокол SSH2, доступная по пересмотренной лицензии BSD
Languages
C
84.2%
CMake
3.7%
Perl
3.2%
M4
2.7%
Shell
2.3%
Other
3.7%