115 Commits
Author SHA1 Message Date
Hermès Bélusca-Maïto b1bd421163 [UMPNPMGR] Simplify the LiveMedium check
Use the standard way of checking for the existence of
the `HKLM\SYSTEM\CurrentControlSet\Control\MiniNT` key.
Addendum to commits 8fabb29ed9 and 9fa8028ae4.
2026-07-27 19:32:27 +02:00
Hermès Bélusca-Maïto 8dce28564a [UMPNPMGR] IsConsoleBoot(): Check for RegOpenKeyExW() failure before continuing 2026-07-27 19:32:26 +02:00
Eric Kohl 46e69e6e50 [UMPNPMGR] PNP_FreeLogConf: Implement the deletion of one requirements list from a list of multiple alternatives 2026-07-12 10:52:46 +02:00
Eric Kohl c802387242 [UMPNPMGR] Fix indentation 2026-07-12 10:44:21 +02:00
Timo Kreuzer 1cf31524d5 [REACTOS] Stop using non-conforming swprintf / vswprintf
Use the underscored versions instead.
2026-05-07 06:27:58 +00:00
Eric Kohl 9fa8028ae4 [UMPNPMGR] Fix RunningOnLiveMedium according to Hermes' suggestions
Note: Running a program on a LiveCD is not the same as running it in setup mode.
2025-10-13 17:05:43 +02:00
Hermès Bélusca-Maïto 8f3ac7ef58 [ADVAPI32][RPCRT4][UMPNPMGR][WINLOGON] Fix buffer size retrieval for MakeSelfRelativeSD() (#8395)
Based on Timo's observation in PR #8387.

And improve debug ERR strings for last-error values.
2025-10-08 15:45:36 +02:00
Eric Kohl 8fabb29ed9 [UMPNPMGR] Fix the LiveCD check 2025-10-07 21:33:11 +02:00
Eric Kohl da720b864e [UMPNPMGR] PNP_ReportLogOn must not fail on a LiveCD
Fixes CORE-19050
2025-08-24 13:30:32 +02:00
Eric Kohl 8fbbb41a19 [UMPNPMGR] Fix a typo in a DPRINT line 2025-07-07 20:07:28 +02:00
Eric Kohl 9d21d48cda [UMPNPMGR] PNP_FreeLogConf: Delete a resource configuration 2025-07-07 20:05:29 +02:00
Eric Kohl 71b6fab74b [UMPNPMGR] PNP_AddEmptyLogConf: Add resource list to an existing requirements list 2025-06-28 15:58:11 +02:00
Eric Kohl 4afb871782 [UMPNPMGR] Implement PNP_UnregisterDeviceClassAssociation 2025-06-26 22:13:59 +02:00
Eric Kohl f1332c7722 [UMPNPMGR] Implement PNP_RegisterDeviceClassAssociation 2025-06-25 21:39:51 +02:00
Eric Kohl 44da696ad7 [UMPNPMGR] Fix PNP_GetInterfaceDeviceAlias
Pass Parameters to NtPlugPlayControl.
2025-06-19 11:49:56 +02:00
Eric Kohl 44d99fa60f [UMPNPMGR][NDK] Implement PNP_GetInterfaceDeviceAlias 2025-06-16 23:51:12 +02:00
Eric Kohl d32fd58722 [UMPNPMGR][ADVAPI32][SERVICES] Pass PNP events to the service manager
- umpnpmgr.dll: Call I_ScSendPnPMessage to report pnp events to the service manager.
- adavpi32.dll: Implement I_ScSendPnPMessage which calls the service managers RI_ScSendPnPMessage function.
- services.exe: Add a debug message to RI_ScSendPnPMessage.
2025-05-11 14:25:15 +02:00
Eric Kohl e0ef51b11e [UMPNPMGR] PNP_RegisterNotification: Validate a service and keep its status handle in the notification entry 2025-05-09 01:00:59 +02:00
Eric Kohl 3bb27eb416 [UMPNPMGR] Fix buggy identification of window and service handles 2025-05-07 23:57:09 +02:00
Eric Kohl dbc0c37750 [UMPNPMGR] Typo: Handle device interface removal events properly 2025-04-28 21:16:05 +02:00
Eric Kohl f8efb5d474 [UMPNPMGR] Report device interface arrivals and removals to registered windows
- Other event types are not supported yet.
- Services notification is not supported yet.
2025-04-27 17:09:50 +02:00
Eric Kohl 00983aa86f [UMPNPMGR] PNP_AddEmptyLogConf: Implement adding a resource list to an existing configuration value 2025-04-13 20:12:08 +02:00
Eric Kohl 2ec3a199af [UMPNPMGR] Implement first part of PNP_FreeLogConf 2025-04-05 18:17:33 +02:00
Eric Kohl c5325f5016 [UMPNPMGR] Implement first part of PNP_AddEmptyLogConf
TODO: Adding a new configuration to an already existing configuration of the same type.
2025-03-30 17:16:00 +02:00
Eric Kohl 91bc5b5e94 [UMPNPMGR] PNP_GetGlobalState returns CM_GLOBAL_STATE_SHUTTING_DOWN on service shutdown 2024-11-01 14:43:37 +01:00
Timo Kreuzer 0c2cdcae83 [REACTOS] Add missing line breaks at end of file 2024-10-06 10:47:11 +03:00
Eric Kohl c1b9bb5700 [UMPNPMGR] Add requirements list support to PNP_GetFirstLogConf and PNP_GetNextLogConf 2024-07-14 16:57:17 +02:00
Serge Gautherie df81dadd9c [UMPNPMGR] PNP_RegisterNotification(): Fix a string format (#6211)
Type was changed from DWORD to DWORD_PTR (as handle).
Addendum to commit 71df39b02
2023-12-23 21:50:47 +01:00
Eric Kohl 71df39b027 [IDL][SETUPAPI][UMPNPMGR] Improve PNP_RegisterNotification
- The 2nd parameter is the handle to the recipient.
- The 8th parameter is the callers process id.
2023-12-20 14:49:30 +01:00
Eric Kohl ec0a300f2b [UMPNPMGR] Broadcast a WM_DEVICECHANGE message after a device install was queued 2023-12-18 11:17:08 +01:00
Eric Kohl d8ba5920a2 [NTOS:PNP][UMPNPMGR] GUID_DEVICE_ENUMERATED should be a DeviceInstallEvent
- Move the GUID_DEVICE_ENUMERATED event from the TargetDeviceChangeEvent category to the DeviceInstallEvent category
- Create a new function that handles DeviceInstallEvent category events
2023-12-03 14:00:34 +01:00
Eric Kohl 30b9be047f [UMPNPMGR] Split the notification code by event category
- Move the TargetDeviceChangeEvent code into a separate function.
- Add a new function for the DeviceClassChangeEvent category.
2023-12-03 11:08:57 +01:00
Eric Kohl 01a8288d28 [UMPNPMGR] Move the pnp event thread to a separate file 2023-11-29 23:03:00 +01:00
Eric Kohl e1eb9e3620 [UMPNPMGR] PNP_Get(First/Next)LogConf: return proper tags for the resource list case 2023-06-29 18:06:02 +02:00
Eric Kohl 44a312478d [UMPNPMGR] OpenConfigurationKey: Open subkeys depending on the configuration type
- Boot and Basic Configurations are located in the LogConf subkey.
- Alloc and filtered Configurations are located in the Control subkey.
2023-06-28 23:15:26 +02:00
Timo Kreuzer b29b2682bf [UMPNPMGR] Fix uninitialized variable (#5310)
The unhiding and guilty revision that was identified by @stasm by bisecting the
bootability of LiveCD was 0.4.15-dev-6050-g13e6cbc
As that was the symptom: "We could not longer boot livecd". CORE-18986
2023-06-01 19:44:05 +09:00
Eric Kohl 2626c724e9 [UMPNPMGR] Replace some magic values 2023-05-29 11:58:09 +02:00
Eric Kohl 024daea0af [UMPNPMGR] Check ulFlags in PNP_GetGlobalState
Return CR_INVALID_FLAG if ulFlags is not zero.
2023-05-29 09:54:31 +02:00
Eric Kohl 13e6cbcafa [UMPNPMGR] Check for interactive caller in PNP_ReportLogOn
Do not run device install when a non-interactive user logs on.
2023-05-29 09:38:31 +02:00
George Bișoc cd1070dfc4 [UMPNPMGR] Create a security descriptor for PnP installation device event 2022-05-06 10:09:51 +02:00
Eric Kohl 74efe979a8 [UMPNPMGR] PNP_CreateDevInst: Create a device node for the device to be installed 2022-04-24 12:56:42 +02:00
Eric Kohl a7a222b52d [UMPNPMGR] PNP_CreateDevInst: Convert a phantom device to a normal device 2022-04-23 16:59:47 +02:00
Eric Kohl 33a0c66f30 [UMPNPMGR] PNP_CreateDevInst: Do not create a normal device if it is already present 2022-04-23 15:35:45 +02:00
Stanislav Motylkov 27453fb759 [UMPNPMGR] Fix hang when installing devices. Addendum to 0296fce00. 2022-04-20 02:38:41 +03:00
Eric Kohl 0296fce00e [UMPNPMGR] GenerateDeviceID must fail, if pszDeviceID contains backslashes 2022-04-19 23:14:23 +02:00
Eric Kohl f3ac86713d [UMPNPMGR] PNP_CreateDevInst: A phantom device can only be created if the device did not exist before 2022-04-19 00:09:54 +02:00
Eric Kohl 8897a890c9 [UMPNPMGR] PNP_CreateDevInst: Support the creation of phantom devices 2022-04-18 19:53:18 +02:00
Eric Kohl f63e8f8a03 [UMPNPMGR] Move device id generation into a separate function and limit device instance number 2022-04-18 14:14:11 +02:00
Eric Kohl 426687becf [UMPNPMGR] PNP_CreateDevInst: Do not create a new device while generating a device id 2022-04-18 12:59:41 +02:00
Eric Kohl 11886ebec2 [UMPNPMGR] PNP_GetRelatedDeviceInstance must return the root device as the parent of non-existing devices 2022-04-18 09:48:03 +02:00