Skip to content

feat: Espidf support#3999

Draft
rklaehn wants to merge 14 commits intomainfrom
espidf-support
Draft

feat: Espidf support#3999
rklaehn wants to merge 14 commits intomainfrom
espidf-support

Conversation

@rklaehn
Copy link
Copy Markdown
Contributor

@rklaehn rklaehn commented Mar 6, 2026

Description

A lot of ugly hacks to get esp32 to work. We will try to get this much smaller...

This isn't meant to be merged. It's a playground from which we will take isolated PRs to main until there is nothing left to do.

Breaking Changes

Notes & open questions

Change checklist

  • Self-review.
  • Documentation updates following the style guide, if relevant.
  • Tests if relevant.
  • All breaking changes documented.
    • List all breaking changes in the above "Breaking Changes" section.
    • Open an issue or PR on any number0 repos that are affected by this breaking change. Give guidance on how the updates should be handled or do the actual updates themselves. The major ones are:

@n0bot n0bot bot added this to iroh Mar 6, 2026
@github-project-automation github-project-automation bot moved this to 🚑 Needs Triage in iroh Mar 6, 2026
@github-actions
Copy link
Copy Markdown

github-actions bot commented Mar 11, 2026

Documentation for this PR has been generated and is available at: https://n0-computer.github.io/iroh/pr/3999/docs/iroh/

Last updated: 2026-03-24T09:07:54Z

@rklaehn rklaehn force-pushed the espidf-support branch 3 times, most recently from c7fc42f to 07e970e Compare March 11, 2026 16:01
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Cool stuff.

With #3992 you won't need the HMAC stuff, and you could instead use XChaCha20 and use the incoming nonce to encrypt the token frames (i.e. use it for the HandshakeTokenKey, that trait changed in that PR). This works without compromises because XChaCha20 has big enough nonces to allow random-choice nonces.

@rklaehn rklaehn force-pushed the espidf-support branch 3 times, most recently from 28ebf99 to b9c5391 Compare March 13, 2026 14:43
rklaehn added 9 commits March 17, 2026 15:51
This allows us to disable captive portal checks and https probes on esp32
Make ring optional, allow pure-Rust crypto providers, and relax TLS
requirements for constrained targets.
It is just a http request, so in princpile we could even do it via tcp.
But we need hyper anyway for other things I think.
The downside is that we have 1 more box for each lookup_ipv6 or lookup_ipv4,
but I doubt that it matters.

The upside is that hickory will be easier to feature gate later. And it's
less code.
@dignifiedquire dignifiedquire moved this from 🚑 Needs Triage to 🏗 In progress in iroh Mar 17, 2026
@rklaehn rklaehn changed the title WIP Espidf support feat: Espidf support Mar 24, 2026
feature gate maze...
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

Status: 🏗 In progress

Development

Successfully merging this pull request may close these issues.

3 participants