microsoft / microsoft/win32metadata

The return value of `LsaNtStatusToWinError()` should be `WIN32_ERROR`.

Open
#2,163 0 comments 0 reactions 0 assignees View on GitHub
bug
Dominant language
C++
Stars
1.5k
Forks
149
Avg merge
5d 16h
Merged PRs (30d)
4

Description

## Actual behavior

Currently this P/Invoke returns a uint, however its value type is already expressed in CsWin32 via the `WIN32_ERROR` enum.

## Expected behavior

That the return type matches the function's intent.

## Repro steps
N/A

1. `NativeMethods.txt` content:
```
LsaNtStatusToWinError
```

2. `NativeMethods.json` content (if present):
N/A

3. Any of your own code that should be shared?
4. N/A

### Context

- CsWin32 version: 0.3.253
- Win32Metadata version (if explicitly set by project): N/A
- Target Framework: net472
- `LangVersion` (if explicitly set by project): N/A

Contributor guide

Open the contributing guide

Research direction

Start with the NativeMethods.txt entry for LsaNtStatusToWinError and inspect how its Win32 metadata is translated into the generated P/Invoke signature. Confirm the generated return type is WIN32_ERROR rather than uint, using the CsWin32 context described in the issue; the work is done when the signature reflects the enum without changing the function behavior.

Written by the indexing model from the issue text.

Assessment

Tech stack
csharp
Domain
tooling
Issue type
Bug
Difficulty
3/5
Estimated time
1-2 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.