From 0f08b8502a71c92597fa20da6319fb14e91c4468 Mon Sep 17 00:00:00 2001
From: Gert Driesen
Date: Sun, 15 Oct 2017 11:46:10 +0200
Subject: [PATCH 01/10] Prepare for 2016.1.0 RTW.
---
build/nuget/SSH.NET.nuspec | 4 ++--
src/Renci.SshNet/Properties/CommonAssemblyInfo.cs | 2 +-
2 files changed, 3 insertions(+), 3 deletions(-)
diff --git a/build/nuget/SSH.NET.nuspec b/build/nuget/SSH.NET.nuspec
index 039a9e116..12bffe81e 100644
--- a/build/nuget/SSH.NET.nuspec
+++ b/build/nuget/SSH.NET.nuspec
@@ -2,7 +2,7 @@
SSH.NET
- 2016.1.0-beta4
+ 2016.1.0
SSH.NET
Renci
olegkap,drieseng
@@ -10,7 +10,7 @@
https://github.com/sshnet/SSH.NET/
false
SSH.NET is a Secure Shell (SSH) library for .NET, optimized for parallelism and with broad framework support.
- https://github.com/sshnet/SSH.NET/releases/tag/2016.1.0-beta4
+ https://github.com/sshnet/SSH.NET/releases/tag/2016.1.0
A Secure Shell (SSH) library for .NET, optimized for parallelism.
2012-2017, RENCI
en-US
diff --git a/src/Renci.SshNet/Properties/CommonAssemblyInfo.cs b/src/Renci.SshNet/Properties/CommonAssemblyInfo.cs
index 8497d5fb0..2c41da970 100644
--- a/src/Renci.SshNet/Properties/CommonAssemblyInfo.cs
+++ b/src/Renci.SshNet/Properties/CommonAssemblyInfo.cs
@@ -11,7 +11,7 @@
[assembly: AssemblyVersion("2016.1.0")]
[assembly: AssemblyFileVersion("2016.1.0")]
-[assembly: AssemblyInformationalVersion("2016.1.0-beta4")]
+[assembly: AssemblyInformationalVersion("2016.1.0")]
[assembly: CLSCompliant(false)]
// Setting ComVisible to false makes the types in this assembly not visible
From 4583da528f93294f37f66d176cc23bfcb0d71e01 Mon Sep 17 00:00:00 2001
From: drieseng
Date: Sun, 3 May 2020 17:46:40 +0200
Subject: [PATCH 02/10] Remove CWLs.
---
src/Renci.SshNet/Session.cs | 5 -----
1 file changed, 5 deletions(-)
diff --git a/src/Renci.SshNet/Session.cs b/src/Renci.SshNet/Session.cs
index 058e589ab..897796850 100644
--- a/src/Renci.SshNet/Session.cs
+++ b/src/Renci.SshNet/Session.cs
@@ -1992,8 +1992,6 @@ private void MessageListener()
// * a call to Disconnect()
// * a call to Dispose()
// * a SSH_MSG_DISCONNECT received from server
-
- Console.WriteLine("B");
break;
}
@@ -2002,7 +2000,6 @@ private void MessageListener()
{
// connection with SSH server was closed;
// break out of the message loop
- Console.WriteLine("C");
break;
}
@@ -2010,8 +2007,6 @@ private void MessageListener()
message.Process(this);
}
- Console.WriteLine("D");
-
// connection with SSH server was closed or socket was disposed
RaiseError(CreateConnectionAbortedByServerException());
}
From 66e24e7462e263069166d67f16c26a627262e375 Mon Sep 17 00:00:00 2001
From: Gert Driesen
Date: Sun, 7 Jun 2020 10:52:12 +0200
Subject: [PATCH 03/10] Sponsoring (#691)
* Create FUNDING.yml
* Add sponsor info.
---
.github/FUNDING.yml | 3 +++
README.md | 4 +++-
2 files changed, 6 insertions(+), 1 deletion(-)
create mode 100644 .github/FUNDING.yml
diff --git a/.github/FUNDING.yml b/.github/FUNDING.yml
new file mode 100644
index 000000000..81a8e9b30
--- /dev/null
+++ b/.github/FUNDING.yml
@@ -0,0 +1,3 @@
+# These are supported funding model platforms
+
+github: sshnet
diff --git a/README.md b/README.md
index 0790a2bba..ebf9118f7 100644
--- a/README.md
+++ b/README.md
@@ -188,4 +188,6 @@ Visual Studio 2015 Update 3 | x | x | |
Visual Studio 2017 | x | x | x | x | | | | |
Visual Studio 2019 | x | x | x | x | | | | |
-[](http://ndepend.com)
+## Supporting SSH.NET
+
+Do you or your company rely on **SSH.NET** in your projects? If you to encourage us to keep on going and show us that you appreciate our work, please consider becoming a [sponsor](https://github.com/sponsors/sshnet) through GitHub Sponsors.
From 66cf838d264b1a03c05bedbdbbf72fe6654f4308 Mon Sep 17 00:00:00 2001
From: drieseng
Date: Mon, 1 Jun 2020 10:03:51 +0200
Subject: [PATCH 04/10] Prepare for 2020.0.0-beta1
---
src/Renci.SshNet/Properties/CommonAssemblyInfo.cs | 8 ++++----
1 file changed, 4 insertions(+), 4 deletions(-)
diff --git a/src/Renci.SshNet/Properties/CommonAssemblyInfo.cs b/src/Renci.SshNet/Properties/CommonAssemblyInfo.cs
index 2c41da970..cba256303 100644
--- a/src/Renci.SshNet/Properties/CommonAssemblyInfo.cs
+++ b/src/Renci.SshNet/Properties/CommonAssemblyInfo.cs
@@ -5,13 +5,13 @@
[assembly: AssemblyDescription("SSH.NET is a Secure Shell (SSH) library for .NET, optimized for parallelism.")]
[assembly: AssemblyCompany("Renci")]
[assembly: AssemblyProduct("SSH.NET")]
-[assembly: AssemblyCopyright("Copyright © Renci 2010-2017")]
+[assembly: AssemblyCopyright("Copyright © Renci 2010-2020")]
[assembly: AssemblyTrademark("")]
[assembly: AssemblyCulture("")]
-[assembly: AssemblyVersion("2016.1.0")]
-[assembly: AssemblyFileVersion("2016.1.0")]
-[assembly: AssemblyInformationalVersion("2016.1.0")]
+[assembly: AssemblyVersion("2020.0.0")]
+[assembly: AssemblyFileVersion("2020.0.0")]
+[assembly: AssemblyInformationalVersion("2020.0.0-beta1")]
[assembly: CLSCompliant(false)]
// Setting ComVisible to false makes the types in this assembly not visible
From d8fbae3c51bc489d8735e534df5143243a428fcc Mon Sep 17 00:00:00 2001
From: drieseng
Date: Sun, 7 Jun 2020 13:23:50 +0200
Subject: [PATCH 05/10] Update name of Sandcastle Help File Builder environment
variable.
---
build/sandcastle/SSH.NET.shfbproj | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/build/sandcastle/SSH.NET.shfbproj b/build/sandcastle/SSH.NET.shfbproj
index 50141f16e..539865294 100644
--- a/build/sandcastle/SSH.NET.shfbproj
+++ b/build/sandcastle/SSH.NET.shfbproj
@@ -36,7 +36,7 @@
{@HelpFormatOutputPaths}
-
+
@@ -72,5 +72,5 @@
-
+
\ No newline at end of file
From 32f26157957a99516f98f98eb2905b15f0fcf447 Mon Sep 17 00:00:00 2001
From: drieseng
Date: Sun, 7 Jun 2020 15:31:29 +0200
Subject: [PATCH 06/10] Fix path to source file.
---
src/Renci.SshNet/SshClient.cs | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/src/Renci.SshNet/SshClient.cs b/src/Renci.SshNet/SshClient.cs
index b6b7cbb02..49c9ff84b 100644
--- a/src/Renci.SshNet/SshClient.cs
+++ b/src/Renci.SshNet/SshClient.cs
@@ -261,7 +261,7 @@ public SshCommand CreateCommand(string commandText, Encoding encoding)
/// This method internally uses asynchronous calls.
///
///
- ///
+ ///
///
/// CommandText property is empty.
/// Invalid Operation - An existing channel was used to execute this command.
From bf651cac1eeb8f4f1594c74e9b90793d2f2602e9 Mon Sep 17 00:00:00 2001
From: drieseng
Date: Sun, 7 Jun 2020 15:39:54 +0200
Subject: [PATCH 07/10] Remove local-use file.
---
runtest.cmd | 3 ---
1 file changed, 3 deletions(-)
delete mode 100644 runtest.cmd
diff --git a/runtest.cmd b/runtest.cmd
deleted file mode 100644
index ad4c0f5ae..000000000
--- a/runtest.cmd
+++ /dev/null
@@ -1,3 +0,0 @@
-rem vstest.console src\Renci.SshNet.Tests\bin\Debug\net40\Renci.SshNet.Tests.dll "/TestCaseFilter:TestCategory=Gert
-
-vstest.console src\Renci.SshNet.Tests\bin\Debug\net40\Renci.SshNet.Tests.dll /TestCaseFilter:"TestCategory!=integration&TestCategory!=LongRunning"
\ No newline at end of file
From 853ec99609fbdb69ccd705fdefc3fa580237ce6a Mon Sep 17 00:00:00 2001
From: drieseng
Date: Thu, 31 Dec 2020 13:06:47 +0100
Subject: [PATCH 08/10] Prepare for 2020.0.0 release.
---
src/Renci.SshNet/Properties/CommonAssemblyInfo.cs | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/src/Renci.SshNet/Properties/CommonAssemblyInfo.cs b/src/Renci.SshNet/Properties/CommonAssemblyInfo.cs
index cba256303..4941731e9 100644
--- a/src/Renci.SshNet/Properties/CommonAssemblyInfo.cs
+++ b/src/Renci.SshNet/Properties/CommonAssemblyInfo.cs
@@ -11,7 +11,7 @@
[assembly: AssemblyVersion("2020.0.0")]
[assembly: AssemblyFileVersion("2020.0.0")]
-[assembly: AssemblyInformationalVersion("2020.0.0-beta1")]
+[assembly: AssemblyInformationalVersion("2020.0.0")]
[assembly: CLSCompliant(false)]
// Setting ComVisible to false makes the types in this assembly not visible
From acda1431d23a9196377464e6f48056dfd42cc867 Mon Sep 17 00:00:00 2001
From: drieseng
Date: Sun, 24 Jan 2021 14:40:24 +0100
Subject: [PATCH 09/10] Prepare for 2020.0.1 release
---
src/Renci.SshNet/Properties/CommonAssemblyInfo.cs | 8 ++++----
1 file changed, 4 insertions(+), 4 deletions(-)
diff --git a/src/Renci.SshNet/Properties/CommonAssemblyInfo.cs b/src/Renci.SshNet/Properties/CommonAssemblyInfo.cs
index 4941731e9..0883060cc 100644
--- a/src/Renci.SshNet/Properties/CommonAssemblyInfo.cs
+++ b/src/Renci.SshNet/Properties/CommonAssemblyInfo.cs
@@ -5,13 +5,13 @@
[assembly: AssemblyDescription("SSH.NET is a Secure Shell (SSH) library for .NET, optimized for parallelism.")]
[assembly: AssemblyCompany("Renci")]
[assembly: AssemblyProduct("SSH.NET")]
-[assembly: AssemblyCopyright("Copyright © Renci 2010-2020")]
+[assembly: AssemblyCopyright("Copyright © Renci 2010-2021")]
[assembly: AssemblyTrademark("")]
[assembly: AssemblyCulture("")]
-[assembly: AssemblyVersion("2020.0.0")]
-[assembly: AssemblyFileVersion("2020.0.0")]
-[assembly: AssemblyInformationalVersion("2020.0.0")]
+[assembly: AssemblyVersion("2020.0.1")]
+[assembly: AssemblyFileVersion("2020.0.1")]
+[assembly: AssemblyInformationalVersion("2020.0.1")]
[assembly: CLSCompliant(false)]
// Setting ComVisible to false makes the types in this assembly not visible
From 4cdedf65247a0e720f0723bcd9edb773b3f2223f Mon Sep 17 00:00:00 2001
From: drieseng
Date: Sun, 29 May 2022 16:59:38 +0200
Subject: [PATCH 10/10] Use cryptographically secure random number generator.
Fixes CVE-2022-29245.
---
src/Renci.SshNet/Security/KeyExchangeECCurve25519.cs | 7 ++-----
1 file changed, 2 insertions(+), 5 deletions(-)
diff --git a/src/Renci.SshNet/Security/KeyExchangeECCurve25519.cs b/src/Renci.SshNet/Security/KeyExchangeECCurve25519.cs
index 9de7af8fb..b7a318bb9 100644
--- a/src/Renci.SshNet/Security/KeyExchangeECCurve25519.cs
+++ b/src/Renci.SshNet/Security/KeyExchangeECCurve25519.cs
@@ -1,5 +1,4 @@
-using System;
-using Renci.SshNet.Abstractions;
+using Renci.SshNet.Abstractions;
using Renci.SshNet.Common;
using Renci.SshNet.Messages.Transport;
using Renci.SshNet.Security.Chaos.NaCl;
@@ -46,9 +45,7 @@ public override void Start(Session session, KeyExchangeInitMessage message)
var basepoint = new byte[MontgomeryCurve25519.PublicKeySizeInBytes];
basepoint[0] = 9;
- var rnd = new Random();
- _privateKey = new byte[MontgomeryCurve25519.PrivateKeySizeInBytes];
- rnd.NextBytes(_privateKey);
+ _privateKey = CryptoAbstraction.GenerateRandom(MontgomeryCurve25519.PrivateKeySizeInBytes);
_clientExchangeValue = new byte[MontgomeryCurve25519.PublicKeySizeInBytes];
MontgomeryOperations.scalarmult(_clientExchangeValue, 0, _privateKey, 0, basepoint, 0);