Do not merge yet - My proof of concept for AOT compatible DiscUtils#54
Draft
devedse wants to merge 11 commits intoLTRData:LTRData.DiscUtils-initialfrom
Draft
Do not merge yet - My proof of concept for AOT compatible DiscUtils#54devedse wants to merge 11 commits intoLTRData:LTRData.DiscUtils-initialfrom
devedse wants to merge 11 commits intoLTRData:LTRData.DiscUtils-initialfrom
Conversation
LTRData
reviewed
Jan 4, 2026
Owner
There was a problem hiding this comment.
This seems to be wrong in several ways. It needs to implement reading from other locations of the hive file outside of current bin object, so _buffer cannot be used to get all data. There are also a few errors in offset calculations, and I am also not sure whether the total length calculation is really reliable. I will try to find out how this can be resolved in some way.
- Updated version to 0.17 in version.json - Added new SourceGenerator project with FactoryGenerator - Improved .gitignore to exclude additional build outputs - Modified Directory.Build.props for versioning and compiler settings - Registered new LogicalVolumeFactory and VirtualDiskTransport instances - Enhanced logging in various classes for better traceability - Created generate-packages.ps1 script for automated package generation
Modernize and refactor plugin/registration system for disk image and file system types: - Bump version to 1.0.85 - Add AoT-friendly registration path for DiskImageBuilder - Simplify and streamline FileSystemManager and VirtualDiskManager initialization - Remove console logging and exception handling from factory discovery - Make LogicalVolumeFactory internal - Make VolumeManager registration internal and direct - Add SetupCompleteAot for AoT environments - General cleanup for improved startup and reliability
277a7b4 to
5e3e244
Compare
…p to 1.0.104 During idle periods an iSCSI target can close the session due to the DefaultTime2Retain/DefaultTime2Wait timeout expiring while no traffic is flowing. This causes the next I/O to fail with a broken connection rather than a clean retry. Changes in Connection.cs: - SemaphoreSlim (_streamSemaphore) serialises all PDU traffic so the keepalive timer and the main Send/SendAsync/Logout paths never interleave on the NetworkStream. - Timer (_keepAliveTimer) fires every 10 s after login; skips ticks when a real command is in-flight. - SendNopOut: ITT=0xFFFFFFFF / TTT=0xFFFFFFFF so no NOP-In response is expected (RFC 3720 §10.18). - HandleNopIn: responds to target-initiated NOP-In (TTT!=0xFFFFFFFF) without advancing ExpectedStatusSequenceNumber (RFC 3720 §10.19). - ReadPdu/ReadPduAsync: loop over consecutive NOP-In PDUs (max 16) before returning the next real response PDU. Version bump: 1.0.103 -> 1.0.104
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Draft PR with some proof of concepts regarding AOT compatible disc utils