// gnssdriver.h
// CTL_CODE(0x0022, 0x042, METHOD_BUFFERED, FILE_ANY_ACCESS)
#define IOCTL_GNSS_CONFIG_SUPL_CERT 0x00220108
View the official Windows Driver Kit DDI referenceNo description available.
The IOCTL_GNSS_CONFIG_SUPL_CERT control code is used by the GNSS adapter to set SUPL certificates.
Pointer to a GNSS_SUPL_CERT_CONFIG structure.
Set to sizeof(GNSS_SUPL_CERT_CONFIG).
Set to NULL.
Set to 0.
Irp->IoStatus.Status is set to STATUS_SUCCESS if the request is successful. Otherwise, Status to the appropriate error condition as a NTSTATUS code.
The driver sets one of the following NTSTATUS values to indicate result.
For GNSS DDI version 1:
The GNSS adapter does not need to do anything special.
For GNSS DDI version 2 and later:
The GNSS adapter will only refer to certificates by name. It will be up to the GNSS driver to map the certificate names internally to any other representation or reference to the certificates, if needed.
The GNSS adapter will do a full purge or all previously injected certificates if needed before injecting a new set.
The GNSS driver needs to pass this certificate information to the SUPL component which should use the certificate to set up secure connection with H-SLP.
For GNSS DDI version 2 and later:
The GNSS driver must support receiving multiple calls of the IOCTL_GNSS_CONFIG_SUPL_CERT. The GNSS adapter will call this IOCTL multiple times, each time to inject a different root certificate. Different root certificates are identified by having a different SuplCertName, which provides the name of the certificate being injected.
If a certificate with the same name as an existing certificate is injected again, the GNSS driver should overwrite the previous certificate with the same name.
Creating IOCTL Requests in Drivers
WdfIoTargetSendInternalIoctlOthersSynchronously
WdfIoTargetSendInternalIoctlSynchronously
WdfIoTargetSendIoctlSynchronously