Commit graph

142 commits

Author SHA1 Message Date
winesync 2648a8d999
****** Commit useless for ROS
[WINESYNC] setupapi: Add an internal helper for SetupDiSetDeviceRegistryProperty().

This essentially follows the model used in MSI. The next patch makes use of
this helper.

Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id b5b09649e6be0154154174b2641bca23a7216f96 by Zebediah Figura <z.figura12@gmail.com>
2024-02-20 16:46:42 +01:00
winesync 5ae438b51b
[WINESYNC] setupapi: Use a handle table to allocate device nodes.
The size of DEVINST is DWORD, so using the pointer directly won't work on
64-bit.

Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id f840bcc6f7dfdfda507e4fc89d9ed2fdc6ca3a94 by Zebediah Figura <z.figura12@gmail.com>
2024-02-20 16:46:41 +01:00
winesync 5db2aea2a2
[WINESYNC] setupapi: Remove a pointless cast.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id a3cedc1f3a2ca66c9ed15fe054413fb9566326c6 by Zebediah Figura <z.figura12@gmail.com>
2024-02-20 16:46:40 +01:00
winesync 6b52ad537e
[WINESYNC] setupapi: Set LastError on success in SetupInstallFromInfSectionW.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=45167
Signed-off-by: Gijs Vermeulen <gijsvrm@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id d45e6814d67c1f1a2eb6023f0fb5574d560fd9b8 by Austin English <austinenglish@gmail.com>
2024-02-20 16:46:39 +01:00
winesync 2721dd6bec
[WINESYNC] setupapi: Return CR_NO_SUCH_DEVNODE from CM_Get_Parent stub.
Signed-off-by: Alistair Leslie-Hughes <leslie_alistair@hotmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 074345edd6147a44b1311780c073f13d8114b726 by Tim Wanders <timwanders241@gmail.com>
2024-02-20 16:46:38 +01:00
winesync 0498aefcc0
[WINESYNC] setupapi: Recursively remove any subkeys before calling NtDeleteKey().
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id c9308b8d6b1e2f4dd39b19a6890423cd42fd4620 by Hugh McMaster <hugh.mcmaster@outlook.com>
2024-02-20 16:46:37 +01:00
winesync 4aaaa0687d
******* TODO: Check whether I want to remove this switch (lerror) thing and use code more similar to Wine's...
[WINESYNC] setupapi: Fix SetupDiGetDeviceRegistryProperty if property does not exist.

Signed-off-by: Andrew Wesie <awesie@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id e4645d60d72a9fbfbd745e275d4f90110bdceb4d by Andrew Wesie <awesie@gmail.com>

SYNC NOTE: Adapted for ReactOS code.

Co-authored-by: Hermès Bélusca-Maïto <hermes.belusca-maito@reactos.org>
2024-02-20 16:46:36 +01:00
winesync 3c8b1d2e0b
[WINESYNC] setupapi: Add SetupDiEnumDriverInfoA/W stubs.
Signed-off-by: Austin English <austinenglish@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 852cd999f3de5b95444b99a1912ed6900a64a37b by Austin English <austinenglish@gmail.com>
2024-02-20 16:46:35 +01:00
winesync d2a1c13b49
[WINESYNC] setupapi: Use sizeof() instead of numerical constants for buffer sizes.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 01080e6750abcad22ac30df0e4efe669b458f8ab by Nikolay Sivov <nsivov@codeweavers.com>
2024-02-20 16:46:34 +01:00
winesync 90985f90f3
[WINESYNC] setupapi: Add CM_Get_Sibling_Ex stub.
Signed-off-by: Andrey Gusev <andrey.goosev@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 1ce40299941f03fb14ca73e771c1d6ea0090165a by Andrey Gusev <andrey.goosev@gmail.com>
2024-02-20 16:46:33 +01:00
winesync a14c04ead8
[WINESYNC] setupapi: Add CM_Get_Child_Ex stub.
Signed-off-by: Andrey Gusev <andrey.goosev@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id afa920a73fbcea3fd9459b1b53976ab1b6e99735 by Andrey Gusev <andrey.goosev@gmail.com>
2024-02-20 16:46:32 +01:00
winesync f30e36c4f4
[WINESYNC] setupapi: Stub CM_Open_DevNode_Key and CM_Get_Child.
Signed-off-by: Christoph Brill <egore911@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 6b055830059bfd7afeb4e63e44f32eb28afc6c98 by Christoph Brill <egore911@gmail.com>
2024-02-20 16:46:31 +01:00
winesync a30a992340
[WINESYNC] setupapi: Add a stub implementation of SetupDiRemoveDeviceInterface.
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id cdb72f3997174afeb9bc6a8ecafc5de7b5d25afa by Hans Leidekker <hans@codeweavers.com>

SYNC NOTE: Move our already-existing stub to the correct file.
See commit 25b44b332 (r75031)

Co-authored-by: Hermès Bélusca-Maïto <hermes.belusca-maito@reactos.org>
2024-02-20 16:46:30 +01:00
winesync c3161ba3df
[WINESYNC] setupapi: Add SetupDiGetDevicePropertyW stub.
Signed-off-by: Alistair Leslie-Hughes <leslie_alistair@hotmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id b32a0eaab9971af4045d6def9c4b2ebaa336636a by Alistair Leslie-Hughes <leslie_alistair@hotmail.com>
2024-02-20 16:46:29 +01:00
winesync 3a7551e779
[WINESYNC] setupapi: Added CM_Get_Version().
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id af533d1eebd382d7ee72eaaef1cf7461356da9e5 by Nikolay Sivov <nsivov@codeweavers.com>
2024-02-20 16:46:28 +01:00
winesync 0824862ce9
[WINESYNC] setupapi: Add stub for setupapi.dll.CM_Get_DevNode_Status.
Signed-off-by: Rob Walker <bob.mt.wya@gmail.com>
Signed-off-by: André Hentschel <nerv@dawncrow.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 10058e7c4efb472a372b09705c16d312d62d6b0c by Rob Walker <bob.mt.wya@gmail.com>
2024-02-20 16:46:27 +01:00
winesync a812357122
[WINESYNC] setupapi: Fix a typo in comment.
Signed-off-by: Andrey Gusev <andrey.goosev@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id bf9d01edd6b96ebeaeaa092e62d4b666045d0d9e by Andrey Gusev <andrey.goosev@gmail.com>
2024-02-20 16:46:26 +01:00
winesync 0a3ecfaca5
[WINESYNC] setupapi: Add SetupDiSetDeviceInstallParamsW stub.
Signed-off-by: Austin English <austinenglish@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id f820c0942854c14fcd063c83225af03e73286334 by Austin English <austinenglish@gmail.com>
2024-02-20 16:46:25 +01:00
winesync 06ece874e4
[WINESYNC] setupapi: Add SetupDiSelectBestCompatDrv stubs.
Signed-off-by: Austin English <austinenglish@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 9ad0bc63725bc32176b5bb75b58c7341c7bdebcb by Austin English <austinenglish@gmail.com>
2024-02-20 16:46:24 +01:00
winesync 11d3aafd1a
[WINESYNC] setupapi: SetupDiCreateDeviceInfoListEx returns INVALID_HANDLE_VALUE on error.
wine commit id ab92627e19f10d7ad23abb101b21ec7bd122628c by Dmitry Timoshkov <dmitry@baikal.ru>
2024-02-20 16:46:23 +01:00
winesync afef92797e
[WINESYNC] setupapi: SetupDiGetClassDevsEx returns INVALID_HANDLE_VALUE on error.
wine commit id afa912b4f2bd31b2ba58a607f310ab3b761b58e9 by Dmitry Timoshkov <dmitry@baikal.ru>
2024-02-20 16:46:22 +01:00
winesync 7f653d99da
[WINESYNC] setupapi: Avoid shadowing devInst variable.
wine commit id 14650b939cf4ccae964337a3e0ff07945fb4f84f by Dmitry Timoshkov <dmitry@baikal.ru>
2024-02-20 16:46:21 +01:00
winesync c930c4aa92
**** Investigate this more, but I don't think we need this commit in ROS
[WINESYNC] setupapi: Restore close brace before using guid string as reg key.

wine commit id a3487ad3169f5d323ffec2ded6754c3357640161 by Aric Stewart <aric@codeweavers.com>
2024-02-20 16:46:20 +01:00
winesync 17b1828dc8
[WINESYNC] setupapi: Implement SetupLogErrorA(), SetupLogErrorW().
wine commit id a851aaa4248b9f38c0c6e3b1c04e54f95de163b3 by Pierre Schweitzer <pierre@reactos.org>
2024-02-20 16:46:19 +01:00
winesync ca222b438f
[WINESYNC] setupapi: Implement SetupOpenLog(), SetupCloseLog().
wine commit id 799dfa6ada18ee9bf748d5c55e1a4118396b05ba by Pierre Schweitzer <pierre@reactos.org>
2024-02-20 16:46:18 +01:00
winesync 2b566ee2e3
[WINESYNC] setupapi: Add stubs for CM_Get_Device_Interface_List_SizeA/W.
wine commit id f272c126072dc96da2c1fce1118b09e9126c3013 by André Hentschel <nerv@dawncrow.de>
2024-02-20 16:46:17 +01:00
winesync eb0bf1660a
[WINESYNC] setupapi: Add a stub for SetupDiSetClassInstallParamsW.
wine commit id 3013b6c6da9f02fa7afc3b49a036d063d4c4837a by Austin English <austinenglish@gmail.com>
2024-02-20 16:46:17 +01:00
winesync 9cfa2b94cc
[WINESYNC] setupapi: Add CM_Get_DevNode_Registry_Property wrapper around CM_Get_DevNode_Registry_Property_Ex.
wine commit id cfb81f2c606c17ff005fce87a2e79e1d27b8224a by Mark Harmstone <hellas@burntcomma.com>
2024-02-20 16:46:16 +01:00
winesync 9cd60c5288
[WINESYNC] setupapi: Fix buffer overflow in SetupGetFileCompressionInfoW.
wine commit id b8c42020a98e3a5f486cbd03ef80302d6d605871 by Thomas Faber <thomas.faber@reactos.org>

SYNC NOTE: Already in ReactOS but reformatted following Wine.
See commit dcb9fa585 (r58019)

Co-authored-by: Hermès Bélusca-Maïto <hermes.belusca-maito@reactos.org>
2024-02-20 16:46:15 +01:00
winesync d8efd058a8
[WINESYNC] setupapi: Make sure DeviceInterfaceData->cbSize is initialized in SetupDiEnumDeviceInterfaces.
wine commit id 8d854a4830776aaacb70161709db315d54eb77f0 by Austin English <austinenglish@gmail.com>
2024-02-20 16:46:14 +01:00
winesync ca81cc071b
[WINESYNC] setupapi: Use BOOL type where appropriate.
wine commit id 9c76ccfda124ca471b3de4d8a04aed1e15a6b9f2 by Frédéric Delanoy <frederic.delanoy@gmail.com>
2024-02-20 16:46:13 +01:00
winesync d671a6c70e
[WINESYNC] setupapi: Stub SetupDiDestroyDriverInfoList.
wine commit id bdadd760a3b0685d828a3cfa09ed8a82df72e48c by Vincent Povirk <vincent@codeweavers.com>

SYNC NOTE: Fixed 1st parameter type in .spec file.

Co-authored-by: Hermès Bélusca-Maïto <hermes.belusca-maito@reactos.org>
2024-02-20 16:46:12 +01:00
winesync 5cb388a0df
[WINESYNC] setupapi: Constify a character string.
wine commit id 7102459c60be38e9aaf7501d0eca4134f48420d3 by Frédéric Delanoy <frederic.delanoy@gmail.com>
2024-02-20 16:46:11 +01:00
winesync 2d55e7dc08
[WINESYNC] setupapi: Support signature $Windows NT$ in SetupDiGetINFClassA/W too.
wine commit id 6aace3014d355d355e802299d62a34e8865951ba by Stefan Leichter <Stefan.Leichter@camline.com>
2024-02-20 16:46:10 +01:00
winesync 04c9e75649
[WINESYNC] setupapi: Use BOOL type where appropriate.
wine commit id cef6b07372bb29cb491721f64d2c1017f960b45b by Frédéric Delanoy <frederic.delanoy@gmail.com>
2024-02-20 16:46:09 +01:00
winesync 22eb5aa6a5
[WINESYNC] setupapi: Avoid using CONST.
wine commit id 09524be58380b612d0a9d2ba023ac25791e3fe03 by Michael Stefaniuc <mstefani@redhat.de>

SYNC NOTE: Minus the uglier parameters formatting.

Co-authored-by: Hermès Bélusca-Maïto <hermes.belusca-maito@reactos.org>
2024-02-20 16:46:08 +01:00
winesync 5b63ed40d5
[WINESYNC] setupapi: Add a stub for SetupDiSetDeviceInstallParamsA.
wine commit id a829c2b3ad5ac82ad658a22722f169a7d19dea75 by Stefan Leichter <Stefan.Leichter@camline.com>
2024-02-20 16:46:07 +01:00
winesync d5d9f88581
[WINESYNC] setupapi: Add stub keyword to some FIXMEs.
wine commit id f8c77fbd628a62221f985755baf7de675d4f31f0 by André Hentschel <nerv@dawncrow.de>
2024-02-20 16:46:06 +01:00
winesync f241c96e0b
[WINESYNC] setupapi: Add stubs for CM_Reenumerate_DevNode and CM_Reenumerate_DevNode_Ex.
wine commit id f79fa294c9f7c15286e575c6a38aa2827ff06d1e by André Hentschel <nerv@dawncrow.de>
2024-02-20 16:46:05 +01:00
winesync 7a7ed5a50e
[WINESYNC] setupapi: Add CM_Get_Device_ID_ExA stub.
wine commit id 32fb489f1c603b112e62e0e103ae23d390b9cc1a by André Hentschel <nerv@dawncrow.de>
2024-02-20 16:46:04 +01:00
winesync 75274d785e
[WINESYNC] setupapi: Add stub for SetupAddToSourceListW.
wine commit id 8a0442124462ac37273b94b22c35b6ccb8dc6145 by Sylvain Petreolle <spetreolle@yahoo.fr>
2024-02-20 16:46:03 +01:00
winesync 13195280e3
[WINESYNC] setupapi: Fix total size when appending multi-string values.
wine commit id 4b7085fdd499ca39a7e0ae47bd27323876103df0 by Alexandre Julliard <julliard@winehq.org>
2024-02-20 16:46:02 +01:00
winesync 7df436ff9f
****** FIXME: This commit also touches SetupGetInfFileListW
[WINESYNC] setupapi: Avoid memory leaks (coverity).

wine commit id 4d796458d0ed517d45adc57a1aedaf1c3bdde232 by André Hentschel <nerv@dawncrow.de>
2024-02-20 16:46:01 +01:00
winesync f180d22b75
[WINESYNC] setupapi: Add a stub for SetupDiGetDeviceInstallParamsW.
wine commit id 7b32809890a148346648d7dd06084ada83479850 by André Hentschel <nerv@dawncrow.de>
2024-02-20 16:46:00 +01:00
winesync aae4fd6710
****** FIXME: INSPECT: The ROS-equivalent SetupInstallServicesFromInfSectionExW does not support DelService section yet!
[WINESYNC] setupapi: SetupInstallServicesFromInfSection doesn't fail if there are no AddService or DelService directives in the section.

wine commit id da922769c5536932185d7bfce604ee1b7885b75d by Hans Leidekker <hans@codeweavers.com>
2024-02-20 16:46:00 +01:00
winesync 464b490a2c
[WINESYNC] setupapi: Add stub for SetupAddToSourceListA.
wine commit id b3b78b337ea6ba0cf96ddc37161fe71844440851 by Stefan Leichter <Stefan.Leichter@camline.com>
2024-02-20 16:45:59 +01:00
winesync 82fece3243
[WINESYNC] setupapi: Add support for a WinePreInstall section for registry keys that need to be created before anything else.
wine commit id 9a6a1126b9b8b4b5f17b16249eba761063be4be8 by Alexandre Julliard <julliard@winehq.org>
2024-02-20 16:45:58 +01:00
winesync f9d8e345de
[WINESYNC] setupapi: Print the debug string and not the pointer to it.
wine commit id 8f6801fdc02ff8307d81368be5d231505c78a35a by Michael Stefaniuc <mstefani@redhat.de>
2024-02-20 16:45:54 +01:00
winesync c17b8bc8ca
[WINESYNC] setupapi: Correctly handle errors in fake_dlls_callback (Coverity).
wine commit id edd9066d5b676104c036cb621574f36ea055951b by Frédéric Delanoy <frederic.delanoy@gmail.com>
2024-02-20 16:45:53 +01:00
winesync f9fc4b3593
[WINESYNC] setupapi: Add stub for CM_Get_Class_Registry_PropertyW.
wine commit id 88baa9e700027b4d57cc8c5589c3a4e8843b31c1 by André Hentschel <nerv@dawncrow.de>
2024-02-20 16:45:52 +01:00