-
-
Notifications
You must be signed in to change notification settings - Fork 940
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge pull request #277 from sshnet/develop
Merge develop changes into master to prepare for 2016.1.0-beta2
- Loading branch information
Showing
240 changed files
with
14,511 additions
and
3,704 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,14 +1,14 @@ | ||
SSH.NET | ||
======= | ||
SSH.NET is a Secure Shell (SSH) library for .NET, optimized for parallelism. | ||
SSH.NET is a Secure Shell (SSH-2) library for .NET, optimized for parallelism. | ||
|
||
[![Version](https://img.shields.io/nuget/vpre/SSH.NET.svg)](https://www.nuget.org/packages/SSH.NET) | ||
[![Build status](https://ci.appveyor.com/api/projects/status/ih77qu6tap3o92gu/branch/develop?svg=true)](https://ci.appveyor.com/api/projects/status/ih77qu6tap3o92gu/branch/develop) | ||
|
||
##Introduction | ||
## Introduction | ||
This project was inspired by **Sharp.SSH** library which was ported from java and it seems like was not supported for quite some time. This library is a complete rewrite, without any third party dependencies, using parallelism to achieve the best performance possible. | ||
|
||
##Features | ||
## Features | ||
* Execution of SSH command using both synchronous and asynchronous methods | ||
* Return command execution exit status and other information | ||
* Provide SFTP functionality for both synchronous and asynchronous operations | ||
|
@@ -25,15 +25,15 @@ This project was inspired by **Sharp.SSH** library which was ported from java an | |
* Supports two-factor or higher authentication | ||
* Supports SOCKS4, SOCKS5 and HTTP Proxy | ||
|
||
##Key Exchange Method | ||
## Key Exchange Method | ||
|
||
**SSH.NET** supports the following key exchange methods: | ||
* diffie-hellman-group-exchange-sha256 | ||
* diffie-hellman-group-exchange-sha1 | ||
* diffie-hellman-group14-sha1 | ||
* diffie-hellman-group1-sha1 | ||
|
||
##Message Authentication Code | ||
## Message Authentication Code | ||
|
||
**SSH.NET** supports the following MAC algorithms: | ||
* hmac-md5 | ||
|
@@ -47,23 +47,39 @@ This project was inspired by **Sharp.SSH** library which was ported from java an | |
* hmac-ripemd160 | ||
* [email protected] | ||
|
||
##Framework Support | ||
## Framework Support | ||
**SSH.NET** supports the following target frameworks: | ||
* .NET Framework 3.5 | ||
* .NET Framework 4.0 (and higher) | ||
* .NET Platform Standard 1.3 | ||
* .NET Standard 1.3 | ||
* Silverlight 4 | ||
* Silverlight 5 | ||
* Windows Phone 7.1 | ||
* Windows Phone 8.0 | ||
* Universal Windows Platform 10 | ||
|
||
##Building SSH.NET | ||
## Usage | ||
Establish an SFTP connection using both password and public-key authentication: | ||
|
||
```cs | ||
var connectionInfo = new ConnectionInfo("sftp.foo.com", | ||
"guest", | ||
new PasswordAuthenticationMethod("guest", "pwd"), | ||
new PrivateKeyAuthenticationMethod("rsa.key")); | ||
using (var client = new SftpClient(connectionInfo)) | ||
{ | ||
client.Connect(); | ||
} | ||
|
||
``` | ||
|
||
## Building SSH.NET | ||
|
||
Software | net35 | net40 | netstandard1.3 | sl4 | sl5 | wp71 | wp8 | uap10.0 | | ||
--------------------------------- | :---: | :---: | :------------: | :-: | :-: | :--: | :-: | :-----: | | ||
Windows Phone SDK 8.0 | | | | x | x | x | x | | ||
Visual Studio 2012 Update 5 | x | x | | x | x | x | x | | ||
Visual Studio 2015 Update 3 | x | x | x | | x | | x | x | ||
Visual Studio 2015 Update 3 | x | x | | | x | | x | x | ||
Visual Studio 2017 | | x | x | | | | | | ||
|
||
[![NDepend](http://download-codeplex.sec.s-msft.com/Download?ProjectName=sshnet&DownloadId=629750)](http://ndepend.com) |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,12 @@ | ||
@echo off | ||
|
||
set MSBUILD14_EXE=%ProgramFiles(x86)%\MSBuild\14.0\Bin\MSBuild.exe | ||
set MSBUILD15_EXE=%ProgramFiles(x86)%\Microsoft Visual Studio\2017\Enterprise\\MSBuild\15.0\bin\MSBuild.exe | ||
|
||
call "%MSBUILD14_EXE%" build.proj /t:Clean | ||
call "%MSBUILD15_EXE%" build.proj /t:Clean | ||
|
||
call "%MSBUILD14_EXE%" build.proj /t:Build | ||
call "%MSBUILD15_EXE%" build.proj /t:Build | ||
|
||
call "%MSBUILD15_EXE%" build.proj /t:Package /p:ReleaseVersion=%1 |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,113 @@ | ||
<Project Sdk="Microsoft.NET.Sdk" ToolsVersion="15.0"> | ||
<PropertyGroup> | ||
<AssemblyTitle>SSH.NET</AssemblyTitle> | ||
<TargetFramework>netstandard1.3</TargetFramework> | ||
<TreatWarningsAsErrors>true</TreatWarningsAsErrors> | ||
<GenerateDocumentationFile>true</GenerateDocumentationFile> | ||
<AssemblyName>Renci.SshNet</AssemblyName> | ||
<AssemblyOriginatorKeyFile>../Renci.SshNet.snk</AssemblyOriginatorKeyFile> | ||
<LangVersion>5</LangVersion> | ||
<SignAssembly>true</SignAssembly> | ||
<PublicSign Condition=" '$(OS)' != 'Windows_NT' ">true</PublicSign> | ||
<GenerateAssemblyTitleAttribute>false</GenerateAssemblyTitleAttribute> | ||
<GenerateAssemblyDescriptionAttribute>false</GenerateAssemblyDescriptionAttribute> | ||
<GenerateAssemblyCompanyAttribute>false</GenerateAssemblyCompanyAttribute> | ||
<GenerateAssemblyProductAttribute>false</GenerateAssemblyProductAttribute> | ||
<GenerateAssemblyCopyrightAttribute>false</GenerateAssemblyCopyrightAttribute> | ||
<GenerateAssemblyVersionAttribute>false</GenerateAssemblyVersionAttribute> | ||
<GenerateAssemblyFileVersionAttribute>false</GenerateAssemblyFileVersionAttribute> | ||
<GenerateAssemblyInformationalVersionAttribute>false</GenerateAssemblyInformationalVersionAttribute> | ||
<GenerateAssemblyConfigurationAttribute>false</GenerateAssemblyConfigurationAttribute> | ||
</PropertyGroup> | ||
<ItemGroup> | ||
<Compile Include="..\Renci.SshNet\**\*.cs" Exclude="..\Renci.SshNet\Properties\AssemblyInfo.cs"> | ||
<Link>%(RecursiveDir)%(Filename)%(Extension)</Link> | ||
</Compile> | ||
</ItemGroup> | ||
<ItemGroup> | ||
<PackageReference Include="NETStandard.Library"> | ||
<Version>1.6.0</Version> | ||
</PackageReference> | ||
</ItemGroup> | ||
<ItemGroup Condition=" '$(TargetFramework)' == 'netstandard1.3' "> | ||
<PackageReference Include="Microsoft.CSharp"> | ||
<Version>4.0.1</Version> | ||
</PackageReference> | ||
<PackageReference Include="SshNet.Security.Cryptography"> | ||
<Version>[1.2.0]</Version> | ||
</PackageReference> | ||
<PackageReference Include="System.Diagnostics.Debug"> | ||
<Version>4.0.11</Version> | ||
</PackageReference> | ||
<PackageReference Include="System.Diagnostics.Tools"> | ||
<Version>4.0.1</Version> | ||
</PackageReference> | ||
<PackageReference Include="System.Diagnostics.TraceSource"> | ||
<Version>4.0.0</Version> | ||
</PackageReference> | ||
<PackageReference Include="System.Globalization"> | ||
<Version>4.0.11</Version> | ||
</PackageReference> | ||
<PackageReference Include="System.IO"> | ||
<Version>4.1.0</Version> | ||
</PackageReference> | ||
<PackageReference Include="System.IO.FileSystem"> | ||
<Version>4.0.1</Version> | ||
</PackageReference> | ||
<PackageReference Include="System.IO.FileSystem.Primitives"> | ||
<Version>4.0.1</Version> | ||
</PackageReference> | ||
<PackageReference Include="System.Linq"> | ||
<Version>4.1.0</Version> | ||
</PackageReference> | ||
<PackageReference Include="System.Net.NameResolution"> | ||
<Version>4.0.0</Version> | ||
</PackageReference> | ||
<PackageReference Include="System.Net.Sockets"> | ||
<Version>4.1.0</Version> | ||
</PackageReference> | ||
<PackageReference Include="System.Reflection.Extensions"> | ||
<Version>4.0.1</Version> | ||
</PackageReference> | ||
<PackageReference Include="System.Runtime.Extensions"> | ||
<Version>4.1.0</Version> | ||
</PackageReference> | ||
<PackageReference Include="System.Security.Cryptography.Algorithms"> | ||
<Version>4.2.0</Version> | ||
</PackageReference> | ||
<PackageReference Include="System.Text.RegularExpressions"> | ||
<Version>4.1.0</Version> | ||
</PackageReference> | ||
<PackageReference Include="System.Threading"> | ||
<Version>4.0.11</Version> | ||
</PackageReference> | ||
<PackageReference Include="System.Threading.Thread"> | ||
<Version>4.0.0</Version> | ||
</PackageReference> | ||
<PackageReference Include="System.Threading.ThreadPool"> | ||
<Version>4.0.10</Version> | ||
</PackageReference> | ||
<PackageReference Include="System.Threading.Timer"> | ||
<Version>4.0.1</Version> | ||
</PackageReference> | ||
<PackageReference Include="System.Xml.XmlDocument"> | ||
<Version>4.0.1</Version> | ||
</PackageReference> | ||
<PackageReference Include="System.Xml.XPath.XmlDocument"> | ||
<Version>4.0.1</Version> | ||
</PackageReference> | ||
</ItemGroup> | ||
<ItemGroup> | ||
<Compile Update="..\Renci.SshNet\Sftp\ISftpMessageFactory.cs" Link="Sftp\ISftpResponseFactory.cs" /> | ||
<Compile Update="..\Renci.SshNet\Sftp\SftpMessageFactory.cs" Link="Sftp\SftpResponseFactory.cs" /> | ||
</ItemGroup> | ||
<PropertyGroup Condition=" '$(TargetFramework)' == 'netstandard1.3' "> | ||
<DefineConstants>FEATURE_ENCODING_ASCII;FEATURE_DIAGNOSTICS_TRACESOURCE;FEATURE_DIRECTORYINFO_ENUMERATEFILES;FEATURE_MEMORYSTREAM_TRYGETBUFFER;FEATURE_REFLECTION_TYPEINFO;FEATURE_RNG_CREATE;FEATURE_SOCKET_TAP;FEATURE_SOCKET_EAP;FEATURE_SOCKET_SYNC;FEATURE_SOCKET_SETSOCKETOPTION;FEATURE_SOCKET_SELECT;FEATURE_SOCKET_POLL;FEATURE_DNS_TAP;FEATURE_STREAM_TAP;FEATURE_THREAD_COUNTDOWNEVENT;FEATURE_THREAD_THREADPOOL;FEATURE_THREAD_SLEEP;FEATURE_HASH_MD5;FEATURE_HASH_SHA1_CREATE;FEATURE_HASH_SHA256_CREATE;FEATURE_HASH_SHA384_CREATE;FEATURE_HASH_SHA512_CREATE;FEATURE_HMAC_MD5;FEATURE_HMAC_SHA1;FEATURE_HMAC_SHA256;FEATURE_HMAC_SHA384;FEATURE_HMAC_SHA512</DefineConstants> | ||
</PropertyGroup> | ||
<PropertyGroup Condition=" '$(Configuration)' == 'Debug' "> | ||
<DebugType>portable</DebugType> | ||
</PropertyGroup> | ||
<PropertyGroup Condition=" '$(Configuration)' == 'Release' "> | ||
<DebugType>none</DebugType> | ||
</PropertyGroup> | ||
</Project> |
Oops, something went wrong.