// wdm.h
DRIVER_PROXY_ENDPOINT_FUNCTION DriverProxyEndpointFunction;
VOID DriverProxyEndpointFunction()
{...}
View the official Windows Driver Kit DDI referenceNo description available.
The DRIVER_PROXY_ENDPOINT_FUNCTION callback defines the function signature for a hot-swappable endpoint function in the DriverProxy system. This is a generic function pointer type that represents any driver function that can be made hot-swappable through the Driver Hot-Swap framework.
Endpoint functions are driver-implemented functions that can be replaced at runtime without unloading the driver. The DriverProxy system creates wrapper functions that redirect calls to the current implementation of each endpoint function, enabling hot-swap functionality.
This callback type serves as a generic function pointer for the DriverProxy system. In practice, endpoint functions will have different signatures depending on their specific purpose, but they are all treated as DRIVER_PROXY_ENDPOINT_FUNCTION pointers within the DriverProxy infrastructure.
In Driver Hot-Swap V2, endpoint functions are automatically discovered during the build process through compiler and linker analysis. The compiler identifies functions that should be hot-swappable and places information about them in the .shsept section of the binary.
Key characteristics of endpoint functions:
The actual IRQL requirements for endpoint functions depend on the specific function being implemented. Drivers should design their endpoint functions according to the IRQL constraints of their intended usage.
IoGetDriverProxyWrapperFromEndpoint
IofGetDriverProxyWrapperFromEndpoint
DRIVER_PROXY_ENDPOINT_INFORMATION