Commit graph

16 commits

Author SHA1 Message Date
Eric Kohl 5e2c4657ca [ADVAPI32][SERVICES] Add (dummy) password encryption/decryption functions to CreateServiceA/W and ChangeServiceConfigA/W in order to prepare to pass encrypted passwords to the service manager 2018-09-17 16:34:48 +02:00
Eric Kohl bf1e655172 [ADVAPI32] Stop the service dispatcher thread only if a SERVICE_CONTROL_STOP command was sent 2018-07-29 23:40:36 +02:00
Serge Gautherie 8c312fe7e1 [ADVAPI32] Fix 2 TRACE() format copypastas. 2018-05-03 08:10:43 +02:00
Eric Kohl db60cd219c [ADVAPI32] SEH-protext the calls to service control handlers
ScControlService:
- SEH-protext the calls to service control handlers.
- Return ERROR_EXCEPTION_IN_SERVICE if a service control handler throws an exception.
- Return ERROR_SERVICE_CANNOT_ACCEPT_CTRL if no service control handler has been registered for the service.
2018-05-02 23:24:26 +02:00
Eric Kohl aba6ce5b84 [ADVAPI32] Ignore the return value of the HandlerFunctionEx as well
Ignore the return value of the HandlerFunctionEx because we already ignore the return value of the HandlerFunction.
This fixes a winetest failure.
2018-04-19 06:09:57 +02:00
Eric Kohl 94435b53d7 [ADVAPI32] Revert unnecessary changes, clarify comments and clean-up inconsistencies 2018-03-25 12:03:07 +02:00
Eric Kohl 32bb592e12 [ADVAPI32] Improve remaining TRACE messages in service manager functions 2018-03-25 11:30:10 +02:00
Eric Kohl d7e2b7a8e0 [ADVAPI32] Add or improve TRACE messages in a lot of service manager functions 2018-03-25 03:58:53 +02:00
Eric Kohl 51bbab834c [ADVAPI32] Add or improve TRACE messages in the service manager functions 2018-03-25 03:20:34 +02:00
Hermès Bélusca-Maïto 295ea36f9e
[ADVAPI32] Few improvements for Services.
- Set some last errors.
- Fix error code returned by ScLookupServiceByServiceName().
- Check the validity of the handler proc in RegisterServiceCtrlHandler(Ex)W().
- Improve some traces; comment some code.
2018-02-26 00:37:09 +01:00
Hermès Bélusca-Maïto 2e3f80f940
[ADVAPI32] Code formatting + improve two traces. 2018-02-26 00:37:05 +01:00
Hermès Bélusca-Maïto 0c44925ec1
[ADVAPI32] ScStartService(): Just start the thread straight ahead, and return a suitable error code if thread creation failed. 2018-02-26 00:37:01 +01:00
Hermès Bélusca-Maïto 91b50f9ccb
[ADVAPI32] Take into account the service handler context when dispatching a control notification to a service. (Used e.g. by tcpsvcs.) 2018-02-26 00:36:57 +01:00
Hermès Bélusca-Maïto 635aabb011
[ADVAPI32] Use RPC types where needed. Comments cleanup. 2018-02-26 00:36:53 +01:00
Eric Kohl 1dfbed9c3d [SERVICES][ADVAPI32] Fix the broken service stop sequence
services\database.c:
- Refactor ScmControlService() so that it can be used to send the dispatcher loop stop command.
- Separate the code to decrement the image run counter from the service image cleanup code.

services\rpcserver.c:
- RSetServiceStatus(): Stop the dispatcher loop when the image run counter is zero and remove the service image after that.

advapi32\service\sctrl.c:
- Do not terminate the service dispatcher loop when the last service is being stopped. Wait for an explicit dispatcher stop command (empty service name).

CORE-12413
2018-02-24 11:14:05 +01:00
Colin Finck c2c66aff7d Git conversion: Make reactos the root directory, move rosapps, rostests, wallpapers into modules, and delete rossubsys. 2017-10-03 07:45:34 +00:00