Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Update to latest Windows SDK 10.0.22621.2428 #1751

Closed
coroiu opened this issue Dec 4, 2023 · 11 comments
Closed

Update to latest Windows SDK 10.0.22621.2428 #1751

coroiu opened this issue Dec 4, 2023 · 11 comments
Assignees
Labels
missing api Some documented API is missing from the metadata

Comments

@coroiu
Copy link

coroiu commented Dec 4, 2023

Suggestion

I'm not sure what the process for generating new versions of Win32 APIs looks like, but if possible I would like to request an update of the WebAuthn related APIs. According to Microsofts GitHub repository the latest version of MAKE_CREDENTIALS_OPTIONS is version 7 (found here: https://github.com/microsoft/webauthn/blob/master/webauthn.h).

@coroiu coroiu added the enhancement New feature or request label Dec 4, 2023
@coroiu coroiu changed the title Update Request: Update WindowsWebServices to support WEBAUTHN_AUTHENTICATOR_MAKE_CREDENTIAL_OPTIONS_VERSION_7 Update Request: WindowsWebServices to support WEBAUTHN_AUTHENTICATOR_MAKE_CREDENTIAL_OPTIONS_VERSION_7 Dec 4, 2023
@kennykerr
Copy link
Contributor

https://kennykerr.ca/rust-getting-started/how-are-crates-built.html

I don't know whether this is planned for inclusion into the Windows SDK but if so you may want to bring this up here: https://github.com/microsoft/win32metadata/

@kennykerr kennykerr added question Further information is requested and removed enhancement New feature or request labels Dec 4, 2023
@kennykerr
Copy link
Contributor

I'll transfer the issue for you.

@kennykerr kennykerr transferred this issue from microsoft/windows-rs Dec 4, 2023
@mikebattista
Copy link
Collaborator

@akshayku does this repo contain newer versions of APIs in the Windows SDK?

Is the intent that these APIs will deviate or that the GitHub headers will eventually make their way back into the platform SDK?

@mikebattista mikebattista self-assigned this Dec 4, 2023
@riverar
Copy link
Collaborator

riverar commented Dec 4, 2023

@mikebattista Might want to reach out to fido-dev alias too

@jonesnl
Copy link

jonesnl commented Dec 5, 2023

@mikebattista

I just downloaded the latest public SDK (10.0.22621.2428) from https://developer.microsoft.com/en-us/windows/downloads/windows-sdk/ and it has WEBAUTHN_AUTHENTICATOR_MAKE_CREDENTIAL_OPTIONS_VERSION_7 in the provided webauthn.h header.

Has the metadata used here been regenerated since the latest SDK release in October?

@mikebattista
Copy link
Collaborator

No that new SDK hasn't been incorporated yet. We can update.

I'm assuming it has all the other APIs wanted here as well? Updating to a new platform SDK is a different request than incorporating headers from an external repo.

@jonesnl
Copy link

jonesnl commented Dec 5, 2023

It has the current public set of APIs that apps should consume, yes.

We don't generally want people consuming that header outside of the public SDK.

There is some exceptions with integration testing from web browsers (Chromium/Firefox) which is mostly why that repo exists.

All changes from that repo will end up in the public SDK when the changes reach stable Windows releases though, and early access to the same changes can be found in the Insider SDK for testing against insider builds.

@jonesnl
Copy link

jonesnl commented Dec 5, 2023

So in short, no I don't think we should have any special treatment of the webauthn.h header for now.

@mikebattista mikebattista changed the title Update Request: WindowsWebServices to support WEBAUTHN_AUTHENTICATOR_MAKE_CREDENTIAL_OPTIONS_VERSION_7 Update to latest Windows SDK 10.0.22621.2428 Dec 5, 2023
@mikebattista mikebattista added missing api Some documented API is missing from the metadata and removed question Further information is requested labels Dec 5, 2023
@mikebattista
Copy link
Collaborator

Thanks. Working on the SDK update now.

@jonesnl
Copy link

jonesnl commented Dec 5, 2023

Do note that with Win32 APIs that are added mid-release, you may run into some cases where a client is running on an old OS version that doesn't have the new library containing the new API yet: microsoft/windows-rs#421

So while the new header will give you access to the new structs and version info, you may need to use DelayLoading or LoadLibrary/GetProcAddress if you are trying to access a new function in a way that can detect if the local OS doesn't have support for that function yet.

The WebAuthNGetApiVersionNumber() function helps detect these scenarios, but this limitation is something to keep in mind when developing cross-language applications.

@riverar
Copy link
Collaborator

riverar commented Dec 6, 2023

@jonesnl Hmm, how do devs learn if an API is available or not? Is that something we can get added to the docs @ https://learn.microsoft.com/windows/win32/api/webauthn/? Or get annotations/WINVER fences added to the headers themselves?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
missing api Some documented API is missing from the metadata
Projects
None yet
Development

No branches or pull requests

5 participants