Rob Hague

Results 21 issues of Rob Hague

All of the finalizers in the library are no-ops, but their existence means that when `Dispose` (and thus `GC.SuppressFinalize`) is not called, the objects' lifetimes are extended unnecessarily while they...

Use the same logic as ssh-keygen: https://github.com/openssh/openssh-portable/blob/b6b49130a0089b297245ee39e769231d7c763014/ssh-keygen.c#L510C6-L510C12 Fixes #960 (I would add a test, but I'm not sure how to generate a key with the type as in the issue)

Instead of the point-in-time copy closes #1162

.NET 7 is EOL since May. The only .NET 7 features we use are `ObjectDisposedException.ThrowIf` (moved to a throw helper) and some newer regex features. This feels a bit weird,...

These tests were presumably once shared with the old integration tests repo but have since been sat doing nothing. This brings them into the unit tests project.

The async methods on SftpClient (as implemented in SftpSession) were only completing on receiving a response in the sftp layer, or via cancellation. They were not paying any attention to...

Here's how to use it: When authenticating i.e. when you have a certificate for your key which is signed by a certificate authority that the server trusts: ```cs using (var...

We support encrypted OpenSSH keys (defined at https://github.com/openssh/openssh-portable/blob/master/PROTOCOL.key) for which we have a bcrypt implementation (from somewhere) for the key derivation (kdf). Now that we depend on BouncyCastle and have...

We should add support for [RFC8308](https://datatracker.ietf.org/doc/html/rfc8308) extension negotation, and primarily, the `server-sig-algs` extension. Currently, we always try to authenticate RSA keys first with `ssh-rsa` (SHA-1) because otherwise certain servers are...

## Describe your changes This change represents an initial/example contribution towards #550. It adds a reference to [System.Memory](https://www.nuget.org/packages/System.Memory) and uses it to deduplicate a number of internal code paths. The...