| Age | Commit message (Collapse) | Author |
|
|
|
- Replaced direct size arithmetic in NICSetQOSParameters with checked integer-safe operations.
- Added overflow handling for classification table size computation:
- Multiply NumClassificationElements × ClassificationElementSize via RtlULongMult.
- Add the revision header size via RtlULongAdd.
- Return NDIS_STATUS_INVALID_LENGTH when either checked operation fails, instead of relying on unchecked arithmetic.
|
|
Summary
This PR addresses a static-analysis warning in rssv2.c related to comparing values of different integer widths in a loop condition.
Changes
- Updated the loop index type in NICSetRSSv2FindProcessorInRssSet from UINT8 to ULONG to match RssProcessorCount width.
- Added an explicit cast when returning the found index: return (UINT8)index; to preserve the function’s return type and behavior.
Why
Using matching integer widths in loop comparisons avoids analyzer warnings and reduces risk of subtle boundary issues.
Impact
No functional behavior change is intended; this is a type-safety and code-quality fix for warning cleanup.
|
|
Split winget DSC config into per-VS-edition files
|
|
Replace the single configuration.dsc.yaml (Community-only) with three
edition-specific WinGet DSC configurations:
- wdk-vscommunity.dsc.yaml
- wdk-vsenterprise.dsc.yaml
- wdk-vsprofessional.dsc.yaml
Each file installs the correct VS edition with the same WDK components,
Windows SDK 28000, and WDK 28000.
Co-authored-by: Copilot <[email protected]>
|
|
Move WinGet configs to _wdk_utils and update to SDK/WDK 28000
|
|
- Move configuration.dsc.yaml to _wdk_utils/winget/configs/
- Update VS channel from 17.Release to 18.Release
- Use version-agnostic VS Community package ID
- Bump SDK and WDK from 26100 to 28000
- Streamline VS component list
- Add wdk-desktop.vsconfig for VS component import
- Remove configuration_vsonly.dsc.yaml (superseded)
Co-authored-by: Copilot <[email protected]>
|
|
andremueiot/user/andremueiot/uninitialized_var_bindview
Potentially uninitialized variables in bindview
|
|
andremueiot/user/andremueiot/uninitialized_var_ndisbind
Potentially uninitialized variable in ndisbind.c
|
|
RI: Develop -> Main
|
|
FI: main -> develop
|
|
User/jvalesmena/wdk2604
|
|
Updated the runner configuration for GitHub Actions to use 'windows-2025-vs2026' with Visual Studio 2026.
|
|
|
|
|
|
|
|
|
|
|
|
Develop
|
|
Improve Build-Samples for Visual Studio detection
|
|
These changes eliminate the warnings about uninitialized variables under network\ndis.
A macro was also added to prottest.c to suppress a (false) buffer overrun.
|
|
These changes eliminate the warnings below in bindview.cpp by initializinf the variables mentioned.
1449 The status of this call to externally defined (SAL) GetCursorPos is not checked, potentially leaving pt uninitialized.
1528 The status of this call to externally defined (SAL) GetCursorPos is not checked, potentially leaving pt uninitialized.
1825 The status of this call to externally defined (SAL) GetDeviceStatus is not checked, potentially leaving ulStatus uninitialized.
|
|
Simplify prerequisites with environment-specific requisites section,
remove redundant build commands per WDK type since the script
auto-detects. Fix typo (Enviroment), casing (powershell), formatting.
Co-authored-by: Copilot <[email protected]>
|
|
Full VS editions register the WDK as 'Microsoft.Windows.DriverKit',
while Build Tools uses 'Component.Microsoft.Windows.DriverKit.BuildTools'.
Query vswhere for both component IDs and deduplicate by install path so
machines with only VS Build Tools are properly detected.
Co-authored-by: Copilot <[email protected]>
|
|
vswhere's default product filter only includes Community, Professional,
and Enterprise editions. Build Tools (Microsoft.VisualStudio.Product.BuildTools)
requires '-products *' to be discovered. Without this, machines with only
VS Build Tools installed would fail detection.
Co-authored-by: Copilot <[email protected]>
|
|
Write-Output goes to stdout and gets captured by the pipeline,
making the menu invisible. Write-Host writes directly to the
console, ensuring users see the numbered options.
Co-authored-by: Copilot <[email protected]>
|
|
- Remove Initialize-DevShell as a separate step; VS Dev Shell setup is
now fully owned by Resolve-BuildEnvironment alongside mode detection.
This eliminates the ordering problem where vswhere ran unconditionally
before knowing whether the environment was EWDK (which needs no VS).
- Fix EWDK regression: EWDK mode now returns early before any vswhere
or Dev Shell logic is invoked.
- Fix Auto+WDK from plain terminal: the old isWdk guard required
UCRTVersion to be set before the Dev Shell was opened, making Auto
detection fail on a clean terminal. Removed the guard; the code now
falls through to Dev Shell setup and validates UCRTVersion afterward.
- Fix VSINSTALLDIR trailing-backslash mismatch: when the Dev Shell is
already active, VSINSTALLDIR ends with '\' while vswhere installationPath
does not. Added TrimEnd('\') on both sides before comparing.
- Renumber Build-Samples.ps1 step comments (old Step 5 'Detect Build
Environment' merged into Step 1; remaining steps renumbered).
Co-authored-by: Copilot <[email protected]>
|
|
Restructure the document into a logical flow:
1. Prerequisites — tools (winget), WDK download link, repo clone
2. Building the Samples — NuGet, EWDK, WDK MSI/winget subsections with -RunMode intro
3. Expected Output — build plan and completion summary
4. Ways to Run — common Build-Samples.ps1 invocations
5. Additional Notes — pre-release WDK, usbview .NET packs, NuGet version pinning
Co-authored-by: Copilot <[email protected]>
|
|
The packages\ folder is a passive disk artifact that persists between
builds. If someone runs the script from inside an EWDK command prompt
while packages\ exists from a previous NuGet restore, Auto mode would
incorrectly select NuGet and then fail trying to find a VS installation
that may not be present in an EWDK-only setup.
EWDK is now checked first because \ being set is an active,
explicit signal that the user is intentionally in the EWDK environment.
Auto detection order is now: EWDK -> NuGet -> WDK
Co-authored-by: Copilot <[email protected]>
|
|
NuGet mode works correctly for GitHub Actions (the HTML open is already
guarded by [Environment]::UserInteractive which is false on CI runners).
The Github mode was redundant and is removed to keep the interface clean.
Co-authored-by: Copilot <[email protected]>
|
|
Previously, WdkVsComponentVersion was read from the global ProgramData
package cache, which is shared across all VS installations and could
return the wrong version when multiple installs are present.
- Add -include packages to the vswhere call in Get-VsInstallationsWithWdk
so each returned installation includes its WdkVsComponentVersion
- Initialize-DevShell now returns the selected installation object
- Resolve-BuildEnvironment accepts an optional -VsInstallation parameter;
when provided it reuses the already-selected install (no second prompt);
when absent (Dev Shell was pre-active) it calls Select-VsInstallation once
- Build-Samples.ps1 threads the result of Initialize-DevShell through to
Resolve-BuildEnvironment
Co-authored-by: Copilot <[email protected]>
|
|
Move Get-VsInstallationsWithWdk, Select-VsInstallation, Initialize-DevShell,
Assert-MsBuildAvailable, and Resolve-BuildEnvironment out of Build-Samples.ps1
into a new BuildEnvironment.ps1 helper file. Build-Samples.ps1 dot-sources it
via PSScriptRoot, consistent with the existing ListAllSamples.ps1 pattern.
Reduces Build-Samples.ps1 from 733 to 565 lines with no behaviour change.
Co-authored-by: Copilot <[email protected]>
|
|
- Add -RunMode parameter (Auto/WDK/NuGet/EWDK/Github) defaulting to Auto
- Auto-detection priority order: NuGet -> EWDK -> WDK
- Github mode: same as NuGet but suppresses opening the HTML report
- Add Get-VsInstallationsWithWdk: uses vswhere.exe from its fixed ProgramFiles
path to find VS installs with the Microsoft.Windows.DriverKit component
- Add Select-VsInstallation: errors if none found, verbose-logs if one found,
presents a numbered interactive menu if multiple found
- Replace Initialize-DevShell glob-based blind pick with the new helpers
- Remove GITHUB_REPOSITORY auto-detect branch; replace HTML open guard with
buildEnv.IsGithubMode
- Update comment-based help with -RunMode parameter docs and examples
Co-authored-by: Copilot <[email protected]>
|
|
RI Develop to Main
|
|
ci: update Code-Scanning workflow to use Build-Samples.ps1
|
|
|
|
Build-AllSamples.ps1 was removed in favor of Build-Samples.ps1.
Co-authored-by: Copilot <[email protected]>
|
|
Consolidate build scripts into a single Build-Samples.ps1
|
|
user/jvalesmena/new-build-samples
# Conflicts:
# Build-AllSamples.ps1
# Build-SampleSet.ps1
|
|
|
|
- When -Samples contains wildcards (* or ?), discover all samples first
then filter with -like (same pattern style as exclusions.csv)
- Exact sample names still work as before without discovery overhead
- Update parameter docs, examples, and Building-Locally.md
|
|
- Inline Build-Sample.ps1 logic as Build-SingleSample function in Build-Samples.ps1
- Pass function definition into parallel runspaces via $using: pattern
- Replace exit codes with return values for in-process execution
- Delete Build-Sample.ps1 (no longer needed as a separate script)
- Update Build-ChangedSamples.ps1 trigger file list
|
|
Build-Samples.ps1
- Delete Build-AllSamples.ps1 and Build-SampleSet.ps1 (replaced by Build-Samples.ps1)
- Update ci.yml workflow to call Build-Samples.ps1
- Update Build-ChangedSamples.ps1 to call Build-Samples.ps1
- Rewrite Building-Locally.md Step 6 with new script usage and output format
- Update Step 7 NuGet notes to reference Build-Samples.ps1
|
|
|
|
- ListAllSamples.ps1: output sorted sample names to stdout instead of
writing Samples.txt. The file output is replaced with Write-Output
so callers can capture results via pipeline or command substitution.
- Build-Samples.ps1: remove SampleListPath parameter. Default discovery
now calls ListAllSamples.ps1 at runtime and consumes its stdout.
Explicit -Samples array still works and is sorted alphabetically.
Both paths guarantee a consistent alphabetical sample ordering.
- Samples.txt: deleted. No longer needed as a pre-generated artifact.
WDS_TestPass.cs is unaffected - it only passes -LogFilesDirectory and
-InfOptions, neither of which changed.
Co-authored-by: Copilot <[email protected]>
|
|
|
|
|
|
microsoft/dependabot/github_actions/dot-github/workflows/tj-actions/changed-files-46
Bump tj-actions/changed-files from 41 to 46 in /.github/workflows
|
|
Build-Samples.ps1:
- Extract helper functions for readability (Resolve-BuildEnvironment,
Import-SampleExclusions, Initialize-DevShell, Assert-MsBuildAvailable,
Get-DiskFreeGB)
- Add #Requires -Version 7.0
- Fix build_number to explicit [int] cast (was string from regex)
- Fix multi-socket CPU handling (sum LogicalProcessors)
- Fix NuGet path detection to use absolute repo root path
- Support wildcard patterns in exclusion paths (-like vs ContainsKey)
- Guard Invoke-Item for CI/automation (skip in non-interactive sessions)
- Validate sample directories exist before building
- Wrap Get-Volume in try/catch for UNC/network drives
- Use Write-Host with carriage return for progress (Write-Progress
unreliable in -Parallel runspaces)
- Clean up variable names and add section comments
- Use switch instead of if/elseif for exit codes
ListAllSamples.ps1:
- Fix NuGet packages filter regex to catch packages anywhere in path
(was only matching paths starting with packages)
Samples.txt:
- Regenerated with fixed filter, remove BOM
Co-authored-by: Copilot <[email protected]>
|
|
Bumps [tj-actions/changed-files](https://github.com/tj-actions/changed-files) from 41 to 46.
- [Release notes](https://github.com/tj-actions/changed-files/releases)
- [Changelog](https://github.com/tj-actions/changed-files/blob/main/HISTORY.md)
- [Commits](https://github.com/tj-actions/changed-files/compare/v41...v46)
---
updated-dependencies:
- dependency-name: tj-actions/changed-files
dependency-version: '46'
dependency-type: direct:production
...
Signed-off-by: dependabot[bot] <[email protected]>
|