PiDcContainerRequiresConfiguration

INT64 __stdcall PiDcContainerRequiresConfiguration(PWSTR ContainerId){
  int ObjectProperty; 
  int v4; 
  int v5; 
  ULONG v6; 
  ObjectProperty = 0;
  v4 = 0;
  v5 = 0;
  v6 = 0;
  if( wcscmp((PWCHAR)L"{00000000-0000-0000-0000-000000000000}", ContainerId) )
  {
    ObjectProperty = PnpGetObjectProperty(
                       PiPnpRtlCtx,
                       (__int64)ContainerId,
                       5i64,
                       0i64,
                       0i64,
                       (__int64)&DEVPKEY_DeviceContainer_ConfigFlags,
                       &v4,
                       (unsigned __int64)&v5,
                       4,
                       &v6,
                       0);
    if( ObjectProperty < 0 || v4 != 7 || v5 != -1 )
    {
      ObjectProperty = PnpSetObjectProperty(
                         PiPnpRtlCtx,
                         (__int64)ContainerId,
                         5u,
                         0i64,
                         0i64,
                         (__int64)&DEVPKEY_DeviceContainer_ConfigFlags,
                         7,
                         (__int64)&unconfiguredConfigFlags,
                         4u,
                         0);
      if( ObjectProperty >= 0 )
        ZwUpdateWnfStateData();
    }
  }
  return(unsigned int)ObjectProperty;
}

Referenced by:

PiDcHandleCustomDeviceEvent
PiDcHandleDeviceEvent
PiDcHandleInterfaceEvent
PiDcHandleSystemFirmwareUpdate
PiDcUpdateDeviceContainerMembership