Conversation
| /// Export both private and public keys from a Curve25519 key structure | ||
| /// </summary> | ||
| /// <param name="key">Curve25519 key structure</param> | ||
| /// <returns>A tuple containing the private key and public key as byte arrays</returns> |
There was a problem hiding this comment.
Update the returns tags to match the new return type (void).
Maybe we could move the comments at line 2428-2429 directly here.
There was a problem hiding this comment.
yes, good catch. updated & removed code that was commented out.
| //var configAttr = (AssemblyConfigurationAttribute)Attribute.GetCustomAttribute( | ||
| // Assembly.GetExecutingAssembly(), typeof(AssemblyConfigurationAttribute)); | ||
|
|
||
| //return configAttr?.Configuration ?? "Unknown"; |
There was a problem hiding this comment.
Can this commented code be removed?
There was a problem hiding this comment.
ah yes, I did not intend to keep the code commented out.
gasbytes
left a comment
There was a problem hiding this comment.
Some more minor changes.
wrapper/CSharp/README.md
Outdated
| Calling ctx Init from wolfSSL | ||
| ``` | ||
|
|
||
| Note the `WOLFSSL_DLL` is used in the wolfssl `visibiility.h` and defines the `WOLFSSL_API` like this: |
There was a problem hiding this comment.
Spelling and maybe we could provide the full path to the header file?:
wolfssl/wolfssl/wolfcrypt/visibility.h
There was a problem hiding this comment.
good idea. updated
wrapper/CSharp/README.md
Outdated
|
|
||
| ### Build wolfSSL and install to arbitrary directory | ||
|
|
||
| To have a n isolated instance of wolfSSL, in this case `$HOME/wolfssl-install-psk`: |
There was a problem hiding this comment.
oh, good catch! fixed.
cb69f56 to
5bd701d
Compare
|
Jenkins retest this please. for |
|
Jenkins retest this please. for "Cannot contact wolf-linux-cloud-node" |
|
Please resolve merge conflicts |
6a26918 to
fcd98ce
Compare
d579dbe to
61bce5e
Compare
|
Jenkins retest this please. for: "Remote call on wolf-linux-cloud-node-nnn failed. The channel is closing down or has closed down" |
|
Hi @dgarske - merge conflicts resolved. |
|
Please don't merge this yet. I am not sure if I want to have the VS2005 / .NET 3.5 support introduced this way. I've got a large portion of these changes in #8621 already. The changes made to CSharp for .NET 3.5 should hopefully be backwards compatible. And the actual project files I may want to keep elsewhere. |
|
Marked as draft per @dgarske #8562 (comment) |
Description
Updates C# Wrapper examples, adds features to wolfSSL C# wrapper, fixes Windows build-time warnings, revised code for compatibility with older frameworks missing language and library features otherwise found in recent versions..
App.configsettings:WOLFSSL_DLL_PATHandWOLFSSL_CERTS_PATH.See: https://gojimmypi.github.io/Using-wolfssl-in-Visual-Studio/
.github/workflows/visual-studio.ymlis intentionally separate from the existing win-csharp-test.yml workflow. This newvisual-studio.ymlis intended to grow to be repository-wide, checking all the Visual Studio project files everywhere for line endings, file encoding, and check build configurations for projects beyond just the C# wrapper. Actual functional tests are expected to remain in a separate workflow. See the WIP my_visual-studio.yml which is beyond the scope of this PR.NET 3.5 Compatibility for wolfSSL C# Wrappers
Overview
This PR adds compatibility with .NET Framework 3.5 to the wolfSSL C# wrappers and examples, enabling wolfSSL to be used in environments that require older .NET Framework versions.
Key Changes
Framework Targeting
App.configfiles to usesupportedRuntime version="v2.0.50727"instead of v4.0System.Core,System.Xml.Linq,System.Data.DataSetExtensions)System.Configurationreference for configuration managementDLL Import/Export Handling
curve25519.h,ed25519.h) to fix DLL import/export declarations for better compatibility, fixingwarning C4141: 'dllexport': used more than oncecpp.hintfile to assist Visual Studio with C++ identifier interpretationwolfSSL.cswith improved DLL path handling for .NET 3.5 environmentssniffer.hto notdefine SSL_SNIFFER_API __declspec(dllexport)unlessSSL_SNIFFER_EXPORTSfoundBuild System
visual_studio.yml) to test building with .NET 3.5include.amto include new files in distributionError Handling and Logging
App.configfilesDocumentation
Benefits
Fixes zd#
Testing
How did you test?
Tested manually on Windows 2022, Visual Studio 2022. See also new workflow (build only) from my visual_studio.yml
Checklist