Skip to content

Improve return result from SSL/TLS authenticate APIs#407

Merged
josesimoes merged 1 commit into
nanoframework:mainfrom
josesimoes:improvements-sslinit
Jul 10, 2026
Merged

Improve return result from SSL/TLS authenticate APIs#407
josesimoes merged 1 commit into
nanoframework:mainfrom
josesimoes:improvements-sslinit

Conversation

@josesimoes

@josesimoes josesimoes commented Jul 10, 2026

Copy link
Copy Markdown
Member

Description

  • Add CryptographicException.
  • Add SslErrors enum.
  • Update IntelliSense comments with new exceptions.
  • Bump assembly native version.
  • Requires supporting code from native layer updating declaration.

Motivation and Context

  • During SSL/TLS authentication there a vast number of possible reasons for failure. Until now the native code was returning a vague failed exception, leaving up to the developer the work to debug the root cause.
  • As the SSL init and authentication is happening, the code knows exactly what is the error. With these changes the exact exception and - if needed - an error code is surfaced to the C# code making much clearer what is the root cause.
  • Native implementation at Improvements in SslNative::InitHelper nf-interpreter#3460.

How Has This Been Tested?

  • Running unit tests and test code.

Screenshots

Types of changes

  • Improvement (non-breaking change that improves a feature, code or algorithm)
  • Bug fix (non-breaking change which fixes an issue with code or algorithm)
  • New feature (non-breaking change which adds functionality to code)
  • Breaking change (fix or feature that would cause existing functionality to change)
  • Config and build (change in the configuration and build system, has no impact on code or features)
  • Dependencies (update dependencies and changes associated, has no impact on code or features)
  • Unit Tests (add new Unit Test(s) or improved existing one(s), has no impact on code or features)
  • Documentation (changes or updates in the documentation, has no impact on code or features)

Checklist:

  • My code follows the code style of this project (only if there are changes in source code).
  • My changes require an update to the documentation (there are changes that require the docs website to be updated).
  • I have updated the documentation accordingly (the changes require an update on the docs in this repo).
  • I have read the CONTRIBUTING document.
  • I have tested everything locally and all new and existing tests passed (only if there are changes in source code).
  • I have added new tests to cover my changes.

- Add CryptographicException.
- Add SslErrors enum.
- Update IntelliSense comments with new exceptions.
- Bump assembly native version.
@coderabbitai

coderabbitai Bot commented Jul 10, 2026

Copy link
Copy Markdown

Warning

Review limit reached

@josesimoes, you've reached your PR review limit, so we couldn't start this review.

Next review available in: 17 minutes

Enable usage-based reviews in Billing to review now. Otherwise, wait until the next included review is available.
You're only billed for reviews past your plan's rate limits ($0.25/file).

How can I continue?

After more reviews become available, a review can be triggered using the @coderabbitai review command as a PR comment. Alternatively, push new commits to this PR.

To avoid repeated limits, reduce automatic review volume by pausing incremental auto-reviews earlier, using label-based review opt-in, excluding WIP or generated PR titles, or requesting reviews manually when the PR is ready. If your team needs uninterrupted high-volume reviews, an organization admin can enable usage-based reviews.

How do review limits work?

CodeRabbit enforces per-developer PR review limits for each organization. Most developers receive the normal plan review availability.

For paid Pro and Pro+ PR reviews, CodeRabbit uses adaptive limits for sustained high-volume activity. When a developer's recent PR review activity reaches the 95th percentile or higher among CodeRabbit users, additional reviews become available more gradually as earlier reviews age out of the rolling window.

Please refer docs for additional details.

Review details
⚙️ Run configuration

Configuration used: Repository: nanoframework/coderabbit/.coderabbit.yaml

Review profile: ASSERTIVE

Plan: Pro

Run ID: f8898043-bf14-44c8-a60a-27b743e7a54a

📥 Commits

Reviewing files that changed from the base of the PR and between 826fa6c and 039a54e.

📒 Files selected for processing (5)
  • nanoFramework.System.Net/Properties/AssemblyInfo.cs
  • nanoFramework.System.Net/Security/CryptographicException.cs
  • nanoFramework.System.Net/Security/SslError.cs
  • nanoFramework.System.Net/Security/SslStream.cs
  • nanoFramework.System.Net/System.Net.nfproj

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@nfbot

nfbot commented Jul 10, 2026

Copy link
Copy Markdown
Member

⚠️ Native declaration update required!

The checksum and/or native version of nanoFramework.System.Net have changed. The native declaration in nf-interpreter must be updated before this package can be released.

Previously published This build
Native version 100.2.0.12 100.2.0.14
Checksum 0x6DFA71D6 0x8EFB9944

👉 Tracking issue: nanoframework/Home#1815

The issue contains a link to the stubs artifact from this build and instructions for GitHub Copilot to perform the update.

@josesimoes

Copy link
Copy Markdown
Member Author

@coderabbitai review

@coderabbitai

coderabbitai Bot commented Jul 10, 2026

Copy link
Copy Markdown
✅ Action performed

Review finished.

Note: CodeRabbit is an incremental review system and does not re-review already reviewed commits. This command is applicable only when automatic reviews are paused.

@josesimoes

Copy link
Copy Markdown
Member Author

@coderabbitai resume review

@coderabbitai

coderabbitai Bot commented Jul 10, 2026

Copy link
Copy Markdown

@josesimoes, resuming automatic reviews for this PR now.

✅ Action performed

Reviews resumed.

@josesimoes
josesimoes merged commit 923b423 into nanoframework:main Jul 10, 2026
8 checks passed
@josesimoes
josesimoes deleted the improvements-sslinit branch July 10, 2026 11:50
josesimoes added a commit that referenced this pull request Jul 13, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Type: enhancement New feature or request

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants