libssh: libssh bindings

[ library, mit, network ] [ Propose Tags ] [ Report a vulnerability ]

libssh bindings


[Skip to Readme]

Downloads

Maintainer's Corner

Package maintainers

For package maintainers and hackage trustees

Candidates

  • No Candidates
Versions [RSS] 0.1.0.0
Dependencies base (>=4.7 && <5), bytestring (>=0.10 && <1) [details]
Tested with ghc ==8.0.1, ghc ==8.8.4, ghc ==9.0.2
License MIT
Author defanor
Maintainer defanor@thunix.net
Category Network
Bug tracker https://codeberg.org/defanor/libssh-hs/issues
Source repo head: git clone https://codeberg.org/defanor/libssh-hs
Uploaded by defanor at 2024-06-19T12:51:24Z
Distributions NixOS:0.1.0.0
Downloads 34 total (5 in the last 30 days)
Rating (no votes yet) [estimated by Bayesian average]
Your Rating
  • λ
  • λ
  • λ
Status Docs uploaded by user [build log]
All reported builds failed as of 2024-06-19 [all 2 reports]

Readme for libssh-0.1.0.0

[back to package description]
Haskell bindings to the libssh library

The bindings are not complete (though maybe will get there): they are
composed primarily to fetch files over SFTP, since other available
options had issues with that. In particular, when downloading hundreds
of files per hour, over hundreds of connections (with dozens of those
simultaneously), in a long-running process, the following was
observed:

- SSHFS 2.8 quits without leaving a trace, and does not seem to be
  actively maintained.

- Haskell curl bindings lead to memory leaks, possibly because curl
  uses libssh2, which leaks (see below).

- libssh2 1.7.0 (on Debian 9) and 1.9.0 (on Debian 11) appears to leak
  memory, even after leaks in its Haskell bindings are fixed.

- libssh 0.7.3 (on Debian 9) seems to enter an infinite loop in
  sftp_open occasionally, with high CPU load, but version 0.9.8 (on
  Debian 11) does not.


The "discarded-qualifiers" warnings happen during the build because of
the GHC issue 22043, but ConstPtr was introduced recently, so using it
would break compatibility with base versions that are still in use.

The bindings are compatible with libssh versions 0.7.3, 0.9.8, 0.10.6.