Commit graph

70 commits

Author SHA1 Message Date
Eric Kohl 91a5ee334d [SERVICES] Add a checks for vaild info level to RChangeServiceConfig2A/W and RQueryServiceConfig2A/W
CORE-14837
2018-07-22 12:45:23 +02:00
Hermès Bélusca-Maïto fafcd50a35
[SERVICES] Minor additions.
- Remove a redundant ScmWaitForLsa() call.
- Remove the LSA_RPC_SERVER_ACTIVE macro (just use directly the string).
- Improve output of DPRINTs.
2018-06-28 23:34:08 +02:00
Hermès Bélusca-Maïto 75dc031080
[SERVICES] Remove the "Special service accounts initialization" hack, and enable per-service account logging.
This effectively removes the temporary hacks introduced in r73486 (a35a785b)
and in r73487 (0ce031f7) for the LocalService and NetworkService accounts.

Now these accounts (and their corresponding user profiles) are created
on the fly, the first time a service that needs these is started.
The code introduced in r73501 (ade0d2cd) is now re-enabled: this has
been made possible thanks to commit f42b4bbe (thanks Eric!).

Dedicated to Joachim Henze ;-)

CORE-12541, CORE-12279
2018-06-28 23:34:02 +02:00
Eric Kohl fd090c6ca1 [SERVICES] Implement RI_ScSetServiceBitsA/W
- RI_ScSetServiceBitsA: Just call RI_ScSetServiceBitsW.
- RI_ScSetServiceBitsW: Store the service bits in the service list entry.
TODO: Merge all service bits in a global variable and pass it to the server service. Maybe use netapi.I_NetServerSetServiceBits(Ex)?
2018-05-01 21:33:37 +02:00
Eric Kohl 9f0c54fcd3 [SC][SERVICES] Support SERVICE_CONTROL_PARAMCHANGE and SERVICE_CONTROL_NETBIND* control codes 2018-02-25 11:07:41 +01:00
Hermès Bélusca-Maïto c6d65fec69
[SERVICES] Use safe-string routines in some places, and do not hardcode buffer lengths. 2018-02-25 00:50:01 +01:00
Hermès Bélusca-Maïto 1aa359ec7f
[SERVICES] Send services shutdown notifications only if they accept them. 2018-02-25 00:49:58 +01:00
Hermès Bélusca-Maïto 6c097b4740
[SERVICES] Add french translation. 2018-02-25 00:49:55 +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
Eric Kohl a8d256bf23 [SERVICES] Update a drivers status properly
- ScmUnloadDriver: Handle failed unload properly.
- ScmGetDriverStatus: A driver is running when its driver object was found. Otherwise it has been stopped.
- ScmControlDriver: Check a drivers status before and after unloading.

CORE-14317
2018-02-19 00:14:58 +01:00
Eric Kohl 6c9cdd84bb [SERVICES] Set a complete service status for running boot start or system start drivers 2018-02-12 15:50:30 +01:00
Eric Kohl e917471e04 [SERVICES] Fix the initial service status
- The initial dwWin32ExitCode for a disabled service is ERROR_SERVICE_DISABLED and ERROR_SRVICE_NEVER_STARTED for non-disabled services.
- The initial dwWaitHint is 2000 (2 seconds) for (user-mode) services and 0 for drivers.
- Move all driver-related code to driver.c.
2018-02-12 14:58:02 +01:00
Eric Kohl 85b71880fa [SERVICES] Update the service status after unloading a driver
Update the service status after unloading the driver and pass the new status to the caller.

CORE-14269
2018-02-10 17:02:23 +01:00
Eric Kohl 905d65b75b [SERVICES] Support the NoInteractiveServices registry value 2018-02-10 14:23:11 +01:00
Eric Kohl f0c7db730c [SERVICES] Remove the synchronous service control pipe code
Remove the synchronous service control pipe code because we are using the asynchronous service control pipe code for years.
2018-02-04 22:30:33 +01:00
Eric Kohl 2d69520595 [SERVICES] Do not delete running services.
CORE-14260
2018-01-28 00:57:58 +01:00
Erdem Ersoy ba3f074320 [TRANSLATIONS] Update the email address and add a note in the Turkish translation document (#271) 2018-01-07 22:09:42 +01:00
Pierre Schweitzer 9d91a2e8ce
[SERVICES] Fix querying the status of a registered but not started driver.
The current implementation was broken and some dead code was never called; always failing before.
This fix revives this dead code!
Extra fix: avoid derefencing potential null-ptr.
And also, as bonus, comment the function so that logic can be easily understood.

CORE-14062
2017-12-08 22:48:20 +01:00
Eric Kohl 7dd8ebcbbd [SERVICES] Use the STDCALL calling convention for all remote procedure calls. 2017-11-12 14:04:22 +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