Rust bindings for libssh

Overview

libssh-rs

Build Status Build Status Build Status

Bindings to libssh.

This repo is home to the libssh-rs-sys crate, which provides FFI bindings to libssh.

Features

The vendored feature causes a static version of libssh to be compiled and linked into your program. The vendored-openssl feature causes a vendored copy of openssl to be compiled and linked into your program.

On macOS and Windows systems, you most likely want to enable both vendored and vendored-openssl.

License

This crate is licensed under the MIT license, and is: Copyright (c) 2021-Present Wez Furlong.

Note that the vendored directory is a submodule that references libssh; libssh is itself GNU Library (or: Lesser) General Public License (LGPL) which has a viral clause in the case where you modify libssh. The license is explained on the libssh features page; the summary is that simply using an unmodified libssh-rs-sys crate will not trigger that viral clause, and you are thus able to use this crate under the terms of the MIT license.

You might also like...
Cross-platform, low level networking using the Rust programming language.

libpnet Linux ∪ OS X Build Status: Windows Build Status: Discussion and support: #libpnet on freenode / #rust-networking on irc.mozilla.org / #rust on

A runtime for writing reliable asynchronous applications with Rust. Provides I/O, networking, scheduling, timers, ...

Tokio A runtime for writing reliable, asynchronous, and slim applications with the Rust programming language. It is: Fast: Tokio's zero-cost abstracti

Easy protocol definitions in Rust

protocol Documentation Easy protocol definitions in Rust. This crate adds a custom derive that can be added to types, allowing structured data to be s

Actor framework for Rust.

Actix Actor framework for Rust Documentation User Guide API Documentation API Documentation (master branch) Features Async and sync actors Actor commu

Nanomsg library for Rust

Nanomsg Documentation Nanomsg is a modern messaging library that is the successor to ZeroMQ, written in C by Martin Sustrik and colleagues. The nanoms

NNTP client for Rust

rust-nntp NNTP Client for Rust Usage extern crate nntp; use nntp::{Article, NNTPStream}; fn main() { let mut nntp_stream = match NNTPStream::connec

POP3 client for Rust

rust-pop3 POP3 Client for Rust This client has SSL support. SSL is configured using an SSLContext that is passed into the connect method of a POP3Stre

A STOMP client in Rust. Compatible with RabbitMQ, ActiveMQ.

stomp-rs stomp-rs provides a full STOMP 1.2 client implementation for the Rust programming language. This allows programs written in Rust to interact

A µTP (Micro/uTorrent Transport Library) library implemented in Rust

rust-utp A Micro Transport Protocol library implemented in Rust. API documentation Overview The Micro Transport Protocol is a reliable transport proto

Comments
  • type mismatch when building wezterm on Raspberry 4 under Manjaro 64bit

    type mismatch when building wezterm on Raspberry 4 under Manjaro 64bit

    The build of current wezterm (last time pulled from github 14.11.2021) fails due to a couple of type mismatches between uint and in. Full build log attached. weztermbuild.log

    opened by mcctuxic 2
  • build.rs: support clang

    build.rs: support clang

    Ran into an error complaining that my compiler didn't provide func trying to build on wsl2 with ubuntu with CC set to clang.

    func and FUNCTION are definitely supported. The thread local storage wikipedia says __thread is supported but I admit I didn't test it.

    opened by krt-z 1
Owner
Wez Furlong
Wez Furlong
Rust zeromq bindings.

Rust ZeroMQ bindings. Documentation Release Notes About The zmq crate provides bindings for the libzmq library from the ZeroMQ project. The API expose

Erick Tryzelaar 734 Dec 29, 2022
Grow Rust is a Growtopia Private Server made in Rust

Grow Rust is a Growtopia Private Server made in Rust

null 14 Dec 7, 2022
Multiplex server for rust-analyzer, allows multiple LSP clients (editor windows) to share a single rust-analyzer instance per cargo workspace

ra-multiplex   Multiplex server for rust-analyzer, allows multiple LSP clients (editor windows) to share a single rust-analyzer instance per cargo wor

max 95 Dec 29, 2022
DNS Server written in Rust for fun, see https://dev.to/xfbs/writing-a-dns-server-in-rust-1gpn

DNS Fun Ever wondered how you can write a DNS server in Rust? No? Well, too bad, I'm telling you anyways. But don't worry, this is going to be a fun o

Patrick Elsen 26 Jan 13, 2023
Rust crate for configurable parallel web crawling, designed to crawl for content

url-crawler A configurable parallel web crawler, designed to crawl a website for content. Changelog Docs.rs Example extern crate url_crawler; use std:

Pop!_OS 56 Aug 22, 2021
Rust crate for scraping URLs from HTML pages

url-scraper Rust crate for scraping URLs from HTML pages. Example extern crate url_scraper; use url_scraper::UrlScraper; fn main() { let director

Pop!_OS 35 Aug 18, 2022
FTP client for Rust

rust-ftp FTP client for Rust Documentation rust-ftp Installation Usage License Contribution Development environment Installation FTPS support is achie

Matt McCoy 155 Nov 12, 2022
The gRPC library for Rust built on C Core library and futures

gRPC-rs gRPC-rs is a Rust wrapper of gRPC Core. gRPC is a high performance, open source universal RPC framework that puts mobile and HTTP/2 first. Sta

TiKV Project 1.6k Jan 7, 2023
A library to work with CIDRs in rust

ipnetwork This is a library to work with IPv4 and IPv6 CIDRs in Rust Run Clippy by doing rustup component add clippy cargo clippy Installation This c

Abhishek Chanda 98 Dec 12, 2022
Network simulation in Rust

netsim - A Rust library for network simulation and testing (currently linux-only). netsim is a crate for simulating networks for the sake of testing n

Andrew Cann 115 Dec 15, 2022