Hacktoberfest 2026: the issues maintainers tagged for October, open and beginner-friendly. Browse Hacktoberfest issues

Inverted logic for assigning DHCPv6 addresses to techports works by accident

Open Beginner friendly
#380 0 comments 0 reactions 0 assignees View on GitHub

Maintainers usually reply within 5 days

Nobody has claimed this yet.

Assessment

Difficulty
2/5
Estimated time
1-3 hours
Newbie friendliness
78/100
Issue type
Bug
Clarity
Clearly specified
Activity status
Active
Tech stack
rust
Domain
networking

Research direction

Start in tfportd/src/netsupport.rs around lines 88-91, then read the callsite in tfportd/src/techport.rs around lines 129-138. Confirm how each techport name is passed and invert the address-selection logic so the intended interface is selected directly. Done means DHCPv6 addresses sync to their corresponding techports without relying on the two-call interaction; run the relevant project tests afterward.

Written by the indexing model from the issue text.

Description

Ry and I found this one today. The logic for finding DHCPv6 addresses on the techports to sync to the switch has this snippet:

https://github.com/oxidecomputer/dendrite/blob/247502812015b409d33240b836d5bf242817453d/tfportd/src/netsupport.rs#L88-L91

That skips the address if its interface starts with the argument, ifname. But looking at the callsite, this works by accident because here:

https://github.com/oxidecomputer/dendrite/blob/247502812015b409d33240b836d5bf242817453d/tfportd/src/techport.rs#L129-L138

we're calling it twice, once for each techport. So when the looped ifname is techport0 we find the address for techport1, and vice versa. It works, but by accident, and we should invert the logic.

Dominant language
Rust
Stars
20
Forks
3
Avg merge
8h 29m
Merged PRs (30d)
2

Getting set up

We have not checked this project's setup files yet. Start from its README, and see our first-contribution guide for the general steps.

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

More from oxidecomputer/dendrite

All issues in oxidecomputer/dendrite

Similar issues

More Rust issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.