NDIS_GENERIC_OBJECT structure (ndis.h)
The NDIS_GENERIC_OBJECT structure defines a generic object which a software component can use to obtain an NDIS handle.
Syntax
typedef struct _NDIS_GENERIC_OBJECT {
NDIS_OBJECT_HEADER Header;
PVOID Caller;
PVOID CallersCaller;
PDRIVER_OBJECT DriverObject;
} NDIS_GENERIC_OBJECT, *PNDIS_GENERIC_OBJECT;
Members
Header
The NDIS_OBJECT_HEADER structure for the generic object structure (NDIS_GENERIC_OBJECT). NDIS sets the Type member of the structure that Header specifies to NDIS_OBJECT_TYPE_GENERIC_OBJECT, the Revision member to NDIS_GENERIC_OBJECT_REVISION_1, and the Size member to sizeof(NDIS_GENERIC_OBJECT).
Caller
Reserved for NDIS.
CallersCaller
Reserved for NDIS.
DriverObject
The driver object that is associated with the generic object. If there is no driver object, this member is NULL. This is the value passed at the DriverObject parameter of the NdisAllocateGenericObject function.
Remarks
Software components that do not already have an NDIS handle call NdisAllocateGenericObject to create a generic object. Such components use the handle obtained from NdisAllocateGenericObject to allocate NDIS resources.
The Size parameter of NdisAllocateGenericObject specifies an amount of memory, in bytes, to reserve for the caller. NdisAllocateGenericObject adds the additional memory after the NDIS_OBJECT_STRUCTURE members.
Most NDIS drivers do not require a generic object to get a handle. NDIS protocol, intermediate, and miniport drivers obtain a handle during initialization.
Use the NdisFreeGenericObject function to free a generic object that was created with NdisAllocateGenericObject.
Requirements
Requirement | Value |
---|---|
Minimum supported client | Supported in NDIS 6.0 and later. |
Header | ndis.h (include Ndis.h) |