Skip to content

feat: Fix device info more-data page count#502

Merged
DennisDyallo merged 7 commits into
yubikit-composite-device-newfrom
yubikit-device-info-more-data-count
Jul 1, 2026
Merged

feat: Fix device info more-data page count#502
DennisDyallo merged 7 commits into
yubikit-composite-device-newfrom
yubikit-device-info-more-data-count

Conversation

@DennisDyallo

Copy link
Copy Markdown
Collaborator

Summary

  • Interpret device info TAG_MORE_DATA as a remaining page count.
  • Add SmartCard, FIDO HID, and OTP HID regression coverage for count semantics.

Verification

  • dotnet toolchain.cs -- test --project Core --filter "FullyQualifiedName~DeviceInfoReaderTests"
  • Read-only review: no findings

@DennisDyallo DennisDyallo changed the title Fix device info more-data page count feat: Fix device info more-data page count Jun 24, 2026
@DennisDyallo DennisDyallo requested a review from Copilot June 26, 2026 12:29

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Pull request overview

Updates Core device-info discovery to treat the device-info “more data” TLV (TAG_MORE_DATA / 0x10) as a remaining page count (instead of a boolean), and adds regression tests across SmartCard, FIDO HID, and OTP HID transports to lock in the corrected semantics.

Changes:

  • Interpret TAG_MORE_DATA value as “remaining pages” and skip/Dispose that TLV before parsing device info.
  • Add SmartCard + FIDO HID + OTP HID unit tests validating remaining-page-count behavior and requested page sequence tracking.

Reviewed changes

Copilot reviewed 2 out of 2 changed files in this pull request and generated 1 comment.

File Description
src/Core/src/Devices/DeviceInfoReader.cs Updates multi-page read loop to use remaining-page count semantics and exclude the “more data” TLV from device-info parsing.
src/Core/tests/Yubico.YubiKit.Core.UnitTests/Devices/DeviceInfoReaderTests.cs Adds regression coverage for remaining-page-count semantics across transports (including OTP requested-page tracking).

Comment thread src/Core/src/Devices/DeviceInfoReader.cs Outdated
Base automatically changed from yubikit-performance to yubikit-composite-device-new July 1, 2026 10:46
@DennisDyallo DennisDyallo marked this pull request as ready for review July 1, 2026 10:47
@DennisDyallo DennisDyallo merged commit 15a6445 into yubikit-composite-device-new Jul 1, 2026
3 checks passed
@DennisDyallo DennisDyallo deleted the yubikit-device-info-more-data-count branch July 1, 2026 11:54
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Development

Successfully merging this pull request may close these issues.

2 participants