PiPnpRtlApplyMandatoryDeviceFilters

NTSTATUS __stdcall PiPnpRtlApplyMandatoryDeviceFilters(
        HPNPCTX *hPnpCtx,
        WCHAR *DeviceInstanceId,
        VOID *ObjectBaseKey,
        _SECURITY_SUBJECT_CONTEXT *SecuritySubjectContext,
        UINT8 *Matched){
  NTSTATUS result; 
  WCHAR *v9; 

  *Matched = 0;
  result = PiPnpRtlIsDeviceValidForSession(hPnpCtx, DeviceInstanceId, ObjectBaseKey, SecuritySubjectContext, Matched);
  if( result < 0 )
    goto LABEL_5;
  if( *Matched )
    result = PiPnpRtlIsDeviceEnumerableForUser(
               v9,
               DeviceInstanceId,
               (_SECURITY_SUBJECT_CONTEXT *)ObjectBaseKey,
               (UINT8 *)SecuritySubjectContext);
  if( result < 0 )
LABEL_5:
    *Matched = 0;
  return result;
}

Referenced by:

PiPnpRtlApplyMandatoryDeviceContainerFiltersCallback
PiPnpRtlApplyMandatoryDeviceInterfaceFilters
PiPnpRtlApplyMandatoryFilters