Skip to content

feat(dfs): add DFS referral transport helpers#346

Merged
TalAloni merged 1 commit into
TalAloni:masterfrom
jahales:dfs-referral-helpers
Apr 18, 2026
Merged

feat(dfs): add DFS referral transport helpers#346
TalAloni merged 1 commit into
TalAloni:masterfrom
jahales:dfs-referral-helpers

Conversation

@jahales
Copy link
Copy Markdown
Contributor

@jahales jahales commented Apr 18, 2026

Add DfsReferralHelper and DfsPath under SMBLibrary/Client/DFS/ as the transport layer building on the already-merged DFS protocol types.

DfsReferralHelper sends FSCTL_DFS_GET_REFERRALS via DeviceIOControl with the sentinel FileId (MS-SMB2 §2.2.31) and returns a parsed ResponseGetDfsReferral. DfsPath parses UNC paths into components for referral request construction and future path replacement.

These are the building blocks for SMB2DfsFileStore (follow-up chunk).

Comment thread SMBLibrary/Client/DFS/DfsPath.cs Outdated
Comment thread SMBLibrary/Client/DFS/DfsPath.cs Outdated
Comment thread SMBLibrary/Client/DFS/DfsReferralHelper.cs Outdated
Add DfsReferralHelper and DfsPath under SMBLibrary/Client/DFS/ as the
transport layer building on the already-merged DFS protocol types.

DfsReferralHelper sends FSCTL_DFS_GET_REFERRALS via DeviceIOControl
with the sentinel FileId (MS-SMB2 §2.2.31) and returns a parsed
ResponseGetDfsReferral. DfsPath parses UNC paths into components for
referral request construction and future path replacement.

These are the building blocks for SMB2DfsFileStore (follow-up chunk).

Zero existing files modified. 167 lines across 2 new files.
@jahales jahales force-pushed the dfs-referral-helpers branch from 09d6a77 to 19090c5 Compare April 18, 2026 13:11
@jahales
Copy link
Copy Markdown
Contributor Author

jahales commented Apr 18, 2026

Sure thing, updated.

@TalAloni TalAloni merged commit 4c8a164 into TalAloni:master Apr 18, 2026
@TalAloni
Copy link
Copy Markdown
Owner

Thank you Jacob! merged.

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.

2 participants