oxidecomputer / oxidecomputer/opte
`InnerFlowId` used by a port/layer/flowtable should be generic
Nobody has claimed this yet.
- Dominant language
- Rust
- Stars
- 77
- Forks
- 11
- Avg merge
- 9d 20h
- Merged PRs (30d)
- 8
Description
The InnerFlowId type is itself a generic 5-tuple, and probably applicable to most NetworkImpls that OPTE would conceivably want to support. We want to get to the point where this is an associated type, probably having a reasonable set of trait bounds (Hash, Copy, Eq, ...).
We need to be sure that stateful rule implementations / header transformation generators within a given NetworkImpl can correctly assume that they are receiving their own FlowId type from packet metadara, rather than the generic variant.
Related to #108.
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start with the linked lib/opte/README.adoc section, then trace InnerFlowId through the port, layer, and flowtable components and the NetworkImpl abstraction. Determine how stateful rule implementations and header transformation generators receive flow metadata. Done means NetworkImpl can provide its own FlowId type with suitable trait bounds and those consumers use that type consistently.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- rust
- Domain
- networking
- Issue type
- Refactor
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 32/100