IopGetSessionIdFromSymbolicName
UINT64 __stdcall IopGetSessionIdFromSymbolicName(UNICODE_STRING *SymbolicLinkName){
unsigned int SessionIdFromPDO;
DEVICE_OBJECT *v2;
struct _DMA_ADAPTER *v3;
__int64 v4;
SessionIdFromPDO = -1;
v2 = IopDeviceObjectFromSymbolicName(SymbolicLinkName);
v3 = (struct _DMA_ADAPTER *)v2;
if( v2 )
{
v4 = *(_QWORD *)(*((_QWORD *)v2 + 39) + 40i64);
if( v4 )
{
if( (*(_DWORD *)(v4 + 396) & 0x20000) == 0 )
{
SessionIdFromPDO = IopGetSessionIdFromPDO(v2);
HalPutDmaAdapter(v3);
}
}
}
return SessionIdFromPDO;
}Referenced by:
IoRegisterPlugPlayNotification
PiUEventProcessBroadcastNotifications
PnpNotifyDeviceClassChange