Skip to content

ieee80211: populate and verify legacy PLCP header fields - #1210

Draft
mgonzalezlopezudc wants to merge 1 commit into
inet-framework:masterfrom
mgonzalezlopezudc:fix/ieee80211-audit-legacy-plcp
Draft

mgonzalezlopezudc wants to merge 1 commit into
inet-framework:masterfrom
mgonzalezlopezudc:fix/ieee80211-audit-legacy-plcp

Conversation

@mgonzalezlopezudc

Copy link
Copy Markdown
Contributor

Summary

DSSS PLCP SIGNAL/LENGTH used incorrect units and computed CRC was a stub. Preserve PSDU byte length separately, populate wire airtime/rate/extension fields, and compute/verify DSSS, HR-DSSS and FHSS CRC.

Scope

PHY header representation, serializers, radio encapsulation/decapsulation and test fillers.

Dependencies and merge order

No prerequisite within this audit series; this topic was built and tested independently on the pinned base.

Validation

Pinned test base: 7287f347aaca36e557c708d6930a6f5a450b2833.

The isolated topic head passed an assertions-enabled debug build (-O0 -Wall -g0; debug symbols omitted for storage) and the focused checks below. The larger integration source tree also passed debug and release compilation; no separate release build is claimed for this topic.

Executed focused test commands, from the repository root after source setenv -q:

inet_run_unit_tests -m debug -f 'Ieee80211(LegacyPlcp|RadioWireIdentity|OnWireBitCompliance)_1\.test'

Results: 3 unit cases passed.

Limits and review status

IR computed mode explicitly rejects unsupported CRC; full IR support remains unresolved. Declared modes are retained.

Draft pending final independent review and reconciliation with current upstream. Live PR overlap has not been reverified against the pinned test base.

DSSS transmission previously left SIGNAL zero and serialized PSDU octets as airtime. Preserve the byte-length model contract and carry the independent wire duration, including the 11 Mbps length-extension bit. Populate FHSS PLW and PSF and serialize their specified bit order.

Computed DSSS, HR-DSSS and FHSS CRC now checks the protected wire fields. Tests exercise real radio encapsulation and reception, an independent DSSS CRC vector, extension boundaries, protected-field corruption and declared checksum modes. IR computed mode fails explicitly instead of claiming unconditional success; full IR CRC support remains unresolved.

Change: src.ieee80211.phy | behavior.change.fix | test migration | wifi-audit
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant