Dmitry Timoshkov
b5c1a8f635
services: Add a 3000 ms timeout to StartService.
...
Signed-off-by: Dmitry Timoshkov <dmitry@baikal.ru>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-04-09 19:58:14 +02:00
Andrew Eikum
b29157e101
services: Fix reading past end of struct (Coverity).
...
Signed-off-by: Andrew Eikum <aeikum@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-02-12 16:24:47 +01:00
Andrew Eikum
73e8d0e6a5
services: Add support for service status change notifications.
...
Signed-off-by: Andrew Eikum <aeikum@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-01-23 18:28:38 +01:00
Andrey Gusev
fc92960cf4
services/tests: Fix resource leak.
...
Signed-off-by: Andrey Gusev <andrey.goosev@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-01-11 19:11:20 +01:00
Hans Leidekker
251c9ccff7
advapi32: Fix QueryServiceConfig2 on Wow64.
...
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-11-08 21:06:52 +01:00
Hans Leidekker
445996d31b
advapi32: Fix EnumServicesStatusEx on Wow64.
...
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-11-08 21:06:48 +01:00
Hans Leidekker
ac0744d450
advapi32: Fix EnumServicesStatus on Wow64.
...
The structures returned by this function contain pointers, which breaks on Wow64 if
the client is 32-bit (the service manager always runs in a 64-bit process).
This patch introduces a variant of ENUM_SERVICE_STATUS with offsets instead of pointers
and converts the structures on the client side.
The downside is that we need to buffer the data, but in return we can get rid of the
dummy buffer pointer.
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-11-08 21:06:40 +01:00
Bernhard Übelacker
de7220e255
advapi32: Fix ChangeServiceConfig2 when given a null description.
...
Signed-off-by: Bernhard Übelacker <bernhardu@mailbox.org>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-10-12 19:41:06 +02:00
Jacek Caban
69608af0a9
services: Call RpcMgmtWaitServerListen in RPC_Stop.
...
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-04-11 19:59:30 +02:00
Gerald Pfeifer
f353e42561
services/tests: Add #include <stdarg.h> to service.c.
...
Signed-off-by: Gerald Pfeifer <gerald@pfeifer.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-02-13 11:37:02 +01:00
Jacek Caban
2c24272804
services/tests: Test creating windows inside non-interactive service.
...
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-02-09 16:07:49 +01:00
Sebastian Lackner
2035a8c7c8
services: Check for services without lpBinaryPathName in get_winedevice_process.
...
Signed-off-by: Sebastian Lackner <sebastian@fds-team.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-09-29 22:40:52 +09:00
Sebastian Lackner
b79891a2ed
services: Load kernel drivers with same load order group into a single process.
...
Signed-off-by: Sebastian Lackner <sebastian@fds-team.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-09-01 21:21:30 +09:00
Sebastian Lackner
f628cbbaa1
services: Add a separate winedevice service for each kernel driver.
...
Signed-off-by: Sebastian Lackner <sebastian@fds-team.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-09-01 21:21:29 +09:00
Sebastian Lackner
b783f207fe
services: Do not create environment block before first service startup.
...
This basically reverts ce07a77610
.
Signed-off-by: Sebastian Lackner <sebastian@fds-team.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-09-01 20:47:51 +09:00
Sebastian Lackner
1c5affa205
advapi32: Unify service startup and control handling.
...
Signed-off-by: Sebastian Lackner <sebastian@fds-team.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-08-31 22:22:59 +09:00
Sebastian Lackner
328fbb6880
services/tests: Add test for passing arguments to a service.
...
Signed-off-by: Sebastian Lackner <sebastian@fds-team.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-08-31 22:22:58 +09:00
Sebastian Lackner
bc8f74f92f
services: Remove synchronization for CloseThreadpoolCleanupGroupMembers.
...
Signed-off-by: Sebastian Lackner <sebastian@fds-team.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-08-22 12:51:30 +09:00
Sebastian Lackner
039471ec37
services: Allocate a separate status_changed_event for each service.
...
Signed-off-by: Sebastian Lackner <sebastian@fds-team.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-08-19 15:31:43 +09:00
Sebastian Lackner
51f36c220e
services: Return an error instead of BOOL from process_send_start_message.
...
Signed-off-by: Sebastian Lackner <sebastian@fds-team.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-08-19 15:31:41 +09:00
Sebastian Lackner
9dfa1022e9
services: Use threadpool API instead of custom wait implementation.
...
Signed-off-by: Sebastian Lackner <sebastian@fds-team.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-08-18 20:38:14 +09:00
Sebastian Lackner
6fc42341ec
services: Sort autostart services by dwTagId config value.
...
Signed-off-by: Sebastian Lackner <sebastian@fds-team.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-08-18 20:38:14 +09:00
Sebastian Lackner
4c01feb714
services: Hold startup lock before calling service_start.
...
Signed-off-by: Sebastian Lackner <sebastian@fds-team.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-08-18 20:38:14 +09:00
Sebastian Lackner
36ccc45db6
services: Track number of services per process.
...
Signed-off-by: Sebastian Lackner <sebastian@fds-team.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-08-18 20:38:13 +09:00
Sebastian Lackner
b08ce1ae80
services: WaitForSingleObject returns a DWORD result.
...
Signed-off-by: Sebastian Lackner <sebastian@fds-team.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-08-18 20:38:13 +09:00
Sebastian Lackner
46a974856f
services: Add a grab_service function.
...
Signed-off-by: Sebastian Lackner <sebastian@fds-team.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-08-18 00:09:36 +09:00
Sebastian Lackner
049ac1d827
services: Hold an additional process reference while waiting for startup.
...
Signed-off-by: Sebastian Lackner <sebastian@fds-team.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-08-11 14:45:10 +09:00
Sebastian Lackner
cafcf6448f
services: Remove service_terminate function.
...
Signed-off-by: Sebastian Lackner <sebastian@fds-team.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-08-11 14:45:04 +09:00
Sebastian Lackner
5137bfd4ba
services: Ignore error in callback only for ControlService requests.
...
Signed-off-by: Sebastian Lackner <sebastian@fds-team.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-08-11 14:44:50 +09:00
Sebastian Lackner
fac8ec9389
services: Unlink process immediately after service stopped.
...
Signed-off-by: Sebastian Lackner <sebastian@fds-team.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-08-11 14:44:30 +09:00
Sebastian Lackner
46b2746938
services: Store process id in the process object.
...
Signed-off-by: Sebastian Lackner <sebastian@fds-team.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-08-11 14:43:25 +09:00
Sebastian Lackner
c8187d62f8
services: Fix leak of process object in process_terminate.
...
Signed-off-by: Sebastian Lackner <sebastian@fds-team.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-08-11 14:42:41 +09:00
Sebastian Lackner
cbc5de1c5f
services: Fix handling of user defined service controls.
...
Signed-off-by: Sebastian Lackner <sebastian@fds-team.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-08-10 22:25:09 +09:00
Sebastian Lackner
8f8626feef
services: Implement functionality to transfer extra data when sending service control.
...
Signed-off-by: Sebastian Lackner <sebastian@fds-team.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-08-10 16:17:29 +09:00
Sebastian Lackner
5f2b96b859
services: Preparation to allow arbitrary data in service RPC messages.
...
Signed-off-by: Sebastian Lackner <sebastian@fds-team.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-08-10 16:16:04 +09:00
Sebastian Lackner
37097ce95c
services: Track services and processes separately.
...
Signed-off-by: Sebastian Lackner <sebastian@fds-team.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-04-21 16:25:58 +09:00
Sebastian Lackner
72ae095d75
services: Change scmdatabase_remove_service to a void function.
...
Signed-off-by: Sebastian Lackner <sebastian@fds-team.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-04-20 21:51:42 +09:00
Sebastian Lackner
168af6e750
services: Hold a reference to process in svcctl_ControlService.
...
Signed-off-by: Sebastian Lackner <sebastian@fds-team.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-04-19 21:06:11 +09:00
Sebastian Lackner
4f3f502886
services: Improve implementation of service_get_pipe_name.
...
Signed-off-by: Sebastian Lackner <sebastian@fds-team.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-04-19 21:06:11 +09:00
Sebastian Lackner
ce07a77610
services: Initialize environment block immediately after startup.
...
Signed-off-by: Sebastian Lackner <sebastian@fds-team.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-04-15 17:57:10 +09:00
Sebastian Lackner
ed54b88173
services: Pass a process argument to wait_for_startup function.
...
Signed-off-by: Sebastian Lackner <sebastian@fds-team.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-03-16 21:59:42 +09:00
Sebastian Lackner
fa593d4d87
services: Pass a process argument to send_control function.
...
Signed-off-by: Sebastian Lackner <sebastian@fds-team.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-03-16 21:59:42 +09:00
Sebastian Lackner
7e2176459d
services: Pass a process argument to send_start_message function.
...
Signed-off-by: Sebastian Lackner <sebastian@fds-team.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-03-16 21:59:42 +09:00
Sebastian Lackner
6617ff24f2
services: Introduce refcounting for processes.
...
Signed-off-by: Sebastian Lackner <sebastian@fds-team.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-03-16 21:59:42 +09:00
Sebastian Lackner
7fc3107b4c
services: Initialize service ref_count directly in service_create.
...
Signed-off-by: Sebastian Lackner <sebastian@fds-team.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-03-16 21:59:41 +09:00
Sebastian Lackner
38a09f9c7b
services: Hold scmdatabase lock while checking marked_for_delete.
...
Signed-off-by: Sebastian Lackner <sebastian@fds-team.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-03-16 21:59:41 +09:00
Sebastian Lackner
4a3d712608
services: Fix a typo.
...
Signed-off-by: Sebastian Lackner <sebastian@fds-team.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-03-16 21:59:41 +09:00
Sebastian Lackner
7fc3f72de7
services: Move process related fields into a separate struct.
...
Signed-off-by: Sebastian Lackner <sebastian@fds-team.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-03-03 15:26:59 +09:00
Sebastian Lackner
00b1184f10
services: Store a separate variable instead of clearing control_mutex.
...
Signed-off-by: Sebastian Lackner <sebastian@fds-team.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-03-03 15:26:57 +09:00
Sebastian Lackner
d98194e791
services/tests: Initialize critical section just once.
...
Signed-off-by: Sebastian Lackner <sebastian@fds-team.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-03-03 15:26:42 +09:00
Sebastian Lackner
a80c0d3cf2
services/tests: Consistently terminate service_{ok,trace} strings with linebreak.
...
Signed-off-by: Sebastian Lackner <sebastian@fds-team.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-03-03 15:26:39 +09:00
Sebastian Lackner
6780c20342
services: Fix calculation of service timeout.
...
Signed-off-by: Sebastian Lackner <sebastian@fds-team.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-03-02 23:29:02 +09:00
Sebastian Lackner
4931f5fbe9
services: Get rid of unnecessary locks.
...
Signed-off-by: Sebastian Lackner <sebastian@fds-team.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-03-02 23:29:00 +09:00
Sebastian Lackner
34fd639801
services: Do not distinguish between shared/exclusive lock.
...
Signed-off-by: Sebastian Lackner <sebastian@fds-team.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-03-02 23:28:58 +09:00
Sebastian Lackner
0819c739ec
services: Remove pipe argument from service_send_command function.
...
Signed-off-by: Sebastian Lackner <sebastian@fds-team.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-03-02 23:28:55 +09:00
Sebastian Lackner
20633b292b
services: Consistently use InterlockedIncrement to increment refcount.
...
Signed-off-by: Sebastian Lackner <sebastian@fds-team.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-03-02 23:28:53 +09:00
Sebastian Lackner
94fb7c3b8b
services: Start SERVICE_FILE_SYSTEM_DRIVER services with winedevice.
...
Signed-off-by: Sebastian Lackner <sebastian@fds-team.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-02-16 14:46:26 +09:00
André Hentschel
67e5e8edf6
services: Fix access adjustment by reordering code (Clang).
...
Signed-off-by: André Hentschel <nerv@dawncrow.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-12-24 11:59:20 +01:00
Nikolay Sivov
ebbb8fa5da
services: Fix GetNotifyResults() prototype.
2015-03-05 21:17:56 +09:00
Nikolay Sivov
38bba54f32
services: Locate service image in proper system dir for WOW64 case.
2015-03-02 23:00:32 +09:00
Francois Gouget
123cfee93c
services: Fix compilation on systems that don't support nameless unions.
2015-03-02 13:49:13 +09:00
Nikolay Sivov
1896064332
services: Mark WOW64 services in registry.
2015-02-27 14:20:25 +09:00
Nikolay Sivov
daf0af4313
advapi32: Forward to CreateServiceWOW64W() when appropriate.
2015-02-27 14:20:25 +09:00
Nikolay Sivov
0f80d4b619
services: Make RPC interface compatible with native.
2015-02-27 14:20:24 +09:00
Andrew Eikum
1e783dbfaa
services: Monitor process handles for process quit.
2015-02-26 23:04:55 +09:00
Nikolay Sivov
c0b0d3b4e2
services: Pass resume index to server.
2015-02-25 20:35:23 +09:00
Nikolay Sivov
3c186a65d3
services: Make ChangeServiceConfig2W() rpc call compatible with native one.
2015-02-25 20:35:23 +09:00
Andreas Mohr
6a86e2e983
kernel32: Fix naming/spelling/typo of macro to HasOverlappedIoCompleted().
2014-08-04 19:28:04 +02:00
Nikolay Sivov
6a4c146962
services: Defer service delete until all handles are closed.
2014-06-12 18:24:17 +02:00
Nikolay Sivov
fdbd8ffffc
services: Remove loop that's not really used anymore (Coverity).
2014-04-21 10:40:40 +02:00
Jacek Caban
98e9e4a3b0
services: Skip tests if OpenSCManager failed.
...
This should also fix failures on VMs with insufficient privileges.
2014-04-08 19:23:25 +02:00
Nikolay Sivov
5300364dfd
services: Remove redundant error code check (Coverity).
2014-04-07 15:34:36 +02:00
Alexandre Julliard
99ef0d6ff0
makefiles: Get rid of the MAKE_TEST_RULES variable.
2014-01-02 12:13:16 +01:00
Alexandre Julliard
86b1f94d28
makefiles: Get rid of the MAKE_PROG_RULES variable.
2014-01-02 12:12:57 +01:00
Alexandre Julliard
d08ff3ff19
makefiles: Use a single variable for all types of idl files.
2013-12-31 18:15:17 +01:00
Alexandre Julliard
c3a48aab20
makefiles: Add makedep pragmas for client and server idl files.
2013-11-05 20:38:18 +01:00
Michael Stefaniuc
ba3f11023f
services/tests: Compile with -D__WINESRC__.
2013-10-16 11:41:20 +02:00
Frédéric Delanoy
debd1346b0
services: Use BOOL type where appropriate.
2013-10-09 10:09:00 +02:00
Michael Stefaniuc
0e681027a2
tests: Compile the tests by default with -D__WINESRC__.
2013-10-02 11:04:02 +02:00
Marcus Meissner
d82de9b9a7
services: Fix handle leak for service handles (Coverity).
2013-05-28 14:33:30 +02:00
Francois Gouget
cbeae4ca3d
services: Fix compilation on systems that don't support nameless unions.
2012-10-29 10:41:16 +01:00
Piotr Caban
afc4284d05
services: Added tests for service thread termination without setting service state to stopped.
2012-10-22 16:22:20 +02:00
Piotr Caban
522bc15b45
services: Kill service thread after timeout so it can terminate cleanly.
2012-10-22 16:19:53 +02:00
Jacek Caban
cea783ddda
services: Fixed memory leak.
2012-10-09 16:12:30 +02:00
Jacek Caban
52363aef65
advapi32: Pass service name as argv[0] to ServiceMain.
2012-06-15 18:35:42 +02:00
Jacek Caban
d0244d761d
services.exe: Added tests.
2012-06-15 18:35:42 +02:00
Francois Gouget
fac36c55e9
Assorted typo, spelling, wording and case fixes.
2012-05-15 16:26:43 +02:00
André Hentschel
e7f414556e
services: Remove unneeded shadow variable.
2012-04-18 17:13:26 +02:00
Alexandre Julliard
154aef98d8
services: Don't close the overlapped event when terminating a service.
...
An overlapping I/O operation may still be in progress.
2012-02-08 13:19:04 -06:00
Alexandre Julliard
c9eee73450
makefiles: Define __WINESRC__ when building programs.
2012-01-23 16:07:37 +01:00
Alexandre Julliard
da35622b83
makefiles: Disable use of Unicode macros globally for all the programs.
2012-01-20 13:14:16 +01:00
Piotr Caban
c21ede4474
services: Terminate service when its status is set to SERVICE_STOPPED.
2011-12-12 15:50:41 +01:00
Piotr Caban
01ef66cb1e
services: Move service cleanup code to separate function.
2011-12-12 15:50:40 +01:00
Piotr Caban
bc866c899f
services: Don't close control_pipe when SERVICE_CONTROL_STOP is sent.
...
This prevents service_control_dispatcher from being stopped. Thanks to
it the service may continue to work and do the clean up.
2011-12-12 15:50:40 +01:00
Piotr Caban
b9797b5caa
services: Check process status to determine if service has terminated.
2011-12-12 15:50:39 +01:00
Piotr Caban
c11e163eb7
services: Fix SERVICE_STATUS initialization in svcctl_ControlService.
2011-12-12 15:50:39 +01:00
Piotr Caban
c368e55196
services: Set result inside service_send_command.
2011-12-09 21:15:30 +01:00
Piotr Caban
8e915c51e1
services: Accept SERVICE_START_PENDING as valid service start status.
2011-12-09 21:15:29 +01:00
Piotr Caban
60a273569c
services: Wait for all services to terminate before exiting.
2011-11-30 16:32:17 +01:00
Piotr Caban
b8704a4929
services: Added support for SERVICE_CONFIG_PRESHUTDOWN_INFO.
2011-11-30 16:31:47 +01:00