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
Piotr Caban
8141fb80eb
services: Create service environment when first service is started.
2011-11-15 19:37:33 +01:00
Francois Gouget
97ab9cc7e5
services: Give a name to the scmdatabase critical section.
2011-10-27 14:20:51 +02:00
Francois Gouget
d494733353
services: Issue a fixme when a service fails to start.
2011-09-08 20:08:06 +02:00
Francois Gouget
fe3f2e3258
services: If a service is not started, then say so when ControlService() is called on it.
2011-08-30 11:47:37 +02:00
Francois Gouget
eafb44d4e1
services: Refuse to start disabled services.
2011-08-30 11:47:35 +02:00
Francois Gouget
9183a171f1
services: Cleanup when a service fails to start so it is still fully considered to be stopped.
2011-08-30 11:47:32 +02:00
Alexandre Julliard
717bd66440
widl: Default to the cdecl calling convention in client/server functions.
2011-06-13 11:53:28 +02:00
Alexandre Julliard
f51668fdf9
services: Add a timeout to all pipe communications with the service process.
2011-05-20 12:34:39 +02:00
Alexandre Julliard
c9dc9a1063
services: Load some timeout parameters from the registry.
2011-05-20 12:33:58 +02:00
Alexandre Julliard
0c1c1fc20d
services: Add a helper function to send a command to the service.
2011-05-20 12:32:32 +02:00
Eric Pouech
0b9ddd1ce4
services: Be sure to unlock the current database in all error cases in service_start_process.
2011-04-25 11:38:44 +02:00
Francois Gouget
ba3542bca7
services: Make find_service_by_group() static.
2011-03-16 14:14:23 +01:00
André Hentschel
7abdbe62d1
services: Mention the unkown type in the error message.
2010-11-02 11:16:32 +01:00
Hans Leidekker
7135ac7641
advapi32: Implement EnumServicesStatusExA/W.
2010-10-29 14:33:57 +02:00
Hans Leidekker
ae7d41bfa2
advapi32: Implement EnumServicesStatusA/W.
2010-10-27 13:31:04 +02:00
Hans Leidekker
e01455d41d
services: Support setting and changing service dependencies.
2010-10-22 12:06:24 +02:00
Hans Leidekker
eae2cf56cb
services: Save service dependencies.
2010-10-22 12:06:15 +02:00
Alexandre Julliard
81b8ee863e
makefiles: Add a standard header for all makefiles to replace the common variable initializations.
2010-09-19 12:36:48 +02:00
Alexandre Julliard
6fb39dfe4a
programs: Remove explicit imports of kernel32 and ntdll.
2010-07-21 17:38:37 +02:00
Alexandre Julliard
3f6f036b4d
services: Start the 32-bit winedevice.exe for 32-bit kernel drivers.
2010-06-01 13:38:21 +02:00
Mikhail Maroukhine
93d9d8a3af
programs: Fix compiler warnings with flag -Wcast-qual.
2010-03-29 12:18:48 +02:00
Alexandre Julliard
bef5645eb1
makefiles: Remove the no longer needed explicit separators for dependencies.
2010-03-16 13:28:19 +01:00
Paul Chitescu
910b191574
services.exe: Reduce Registry access to KEY_READ or MAXIMUM_ALLOWED wherever possible.
2009-12-07 14:51:05 +01:00
Eric Pouech
7cdf3389dd
services: Correctly store the service's PID upon startup.
2009-08-29 17:11:19 +02:00
Paul Chitescu
8fd619618f
services.exe: When asked to search by display name skip NULL names.
2009-07-01 14:53:13 +02:00
Paul Vriens
76c0babdcf
services: Fix a typo.
2009-04-29 13:08:45 +02:00
Rob Shearman
286dc62e34
services: Always initialise the out buffer in svcctl_QueryServiceStatusEx and svcctl_QueryServiceConfig2W.
2009-03-24 13:11:53 +01:00
Rob Shearman
1c89dacf9c
services: svcctl_GetServiceDisplayNameW and svcctl_GetServiceKeyNameW should have string attribute on output buffer.
...
They also should not have two parameters for specifying the size of the buffer.
The buffer size should also not include in the nul-terminating character.
2009-03-24 13:11:41 +01:00
Rob Shearman
8f07e6932b
services: Add a ref count to the service entry in svcctl_CreateServiceW.
...
The ref count will be released by SC_RPC_HANDLE_destroy when the
returned handle is destroyed.
Change svcctl_OpenServiceW to use InterlockedIncrement to increment
the ref count since the service is in the database and therefore could
be shared and SC_RPC_HANDLE_destroy doesn't take the scmdatabase lock
when decrementing the ref count.
2009-03-24 13:10:57 +01:00
Marcus Meissner
2c7ac13662
services: Handle realloc failures better (Coverity).
2009-02-02 15:21:43 +01:00
Rob Shearman
d3085abc08
Change parameter type from size_t to SIZE_T for MIDL_user_allocate.
2009-02-02 11:55:21 +01:00
Michael Stefaniuc
24c4f1de95
services: Remove superfluous pointer casts.
2009-01-29 14:06:11 +01:00
Alexandre Julliard
746948551a
services: Add stub implementation for SERVICE_CONFIG_FAILURE_ACTIONS in ChangeServiceConfig2W.
2009-01-27 11:27:45 +01:00
Alexandre Julliard
05a840dfc9
advapi32: Fix GetServiceDisplayNameW behavior to pass the tests.
2009-01-21 23:35:35 +01:00
Alexandre Julliard
c795150932
advapi32: Fix GetServiceKeyNameW behavior to pass the tests.
2009-01-21 23:32:29 +01:00
Alexandre Julliard
b608a43df7
advapi32: Reimplemented QueryServiceConfig2W in services.exe.
2009-01-19 20:34:02 +01:00
Maarten Lankhorst
768160e944
ntdll: Make all exported wine functions CDECL.
2008-12-17 15:02:25 +01:00
Alexandre Julliard
3249b40f70
advapi32: Reimplemented ChangeServiceConfig2W in services.exe.
2008-11-26 14:35:30 +01:00
Alexandre Julliard
42fb9fe779
services: Properly initialize service status at creation time.
2008-11-25 11:56:33 +01:00
Peter Dons Tychsen
741dd708c4
services: Fixed problem with services where DependOnServices key is REG_SZ and not REG_MULTI_SZ.
2008-09-17 10:55:50 +02:00
Alexandre Julliard
b66685cdd8
programs: Build the programs that support it with -DWINE_NO_UNICODE_MACROS.
2008-09-03 14:21:41 +02:00
James Hawkins
d725626a2b
services: Assign the service manager db to the lock in LockServiceDatabase.
2008-07-18 11:06:25 +02:00
Alexandre Julliard
7e8ecd2d64
services.exe: Pass the service name as first argument when auto-starting services.
2008-07-02 12:02:11 +02:00
Alexandre Julliard
33914a1bf4
services: Send the service name in the control requests.
...
Only start a single dispatcher thread for all services.
2008-05-08 18:08:41 +02:00
Paul Vriens
df2120e586
services.exe: Spelling fixes.
2008-05-08 11:12:07 +02:00
Paul Vriens
b0f34a600f
services.exe: Move a trace to a more appropriate place.
2008-05-06 11:25:46 +02:00
Alexandre Julliard
d760cba090
services: Fixed the result check for the control mutex wait.
2008-05-05 13:34:05 +02:00
Alexandre Julliard
8ae87c7f0e
services: Use the correct invalid handle value for the control pipe.
2008-05-05 13:34:05 +02:00
Alexandre Julliard
af972cb1e4
services.exe: Don't reject config changes if the display name corresponds to the service being changed.
2008-04-24 13:53:21 +02:00
Alexandre Julliard
ea74621986
services.exe: Make the changed status event an auto-reset event.
2008-04-24 13:53:02 +02:00
Austin English
6e59cd2c34
Spelling fixes.
2008-04-22 12:20:12 +02:00
Rob Shearman
5a35bd4971
services: Automatically start boot-start, system-start and auto-start services when services.exe is started, instead of in wineboot.exe.
2008-04-11 12:13:45 +02:00
Rob Shearman
559fafebbf
services: Split RPC_MainLoop into initialisation and the actual loop.
2008-04-11 12:12:58 +02:00
Francois Gouget
8a18e0e43a
Assorted spelling fixes.
2008-04-07 13:36:18 +02:00
Francois Gouget
1aa72f7e47
services: Add a trailing '\n' to a couple of Wine traces.
2008-04-07 13:36:17 +02:00
Rob Shearman
0b7a37acdc
services: Fix memory leak of some data in the service record.
2008-04-01 19:11:06 +02:00
Rob Shearman
8529a3c404
services: Fill in the functions between implemented functions in svcctl.idl so that it our remoting code is wire-compatible with NT.
...
Add the necessary stubs for these in services.exe.
2008-03-29 11:51:47 +01:00
Rob Shearman
809d714f24
services: Introduce an scmdatabase object to store the root key of the services database.
...
Make the functions that deal with the service database more object-oriented.
Add a finer-grained locking architecture.
2008-03-29 11:51:43 +01:00
Rob Shearman
b8348b95a6
services: Remove dependency on service name being determined correctly in order for the two ends on the control pipe to meet up.
...
Instead use the mechanism used by native which uses
\\.\pipe\net\NtControlPipeN.
Also remove the service startup event set by StartServiceCtrlDispatcher
as we wait for the service status to change instead.
2008-03-29 11:51:39 +01:00
Rob Shearman
9a6fc01d84
services: Move ControlService and StartServiceW from advapi32.dll to services.exe.
...
This also changes the architecture such that services.exe is the server
end of the control pipe and the service is the client end.
2008-03-29 11:51:34 +01:00
Rob Shearman
7afd9a977a
services: Move LockServiceDatabase and UnlockServiceDatabase from advapi32.dll to services.exe.
2008-03-29 11:51:01 +01:00
Rob Shearman
b48714b148
services: Move SetServiceStatus and QueryServiceStatusEx to services.exe.
2008-03-29 11:50:57 +01:00
Mikołaj Zalewski
010dcb168b
services: Move GetServiceDisplayName to services.exe and implement GetServiceKeyName.
2008-03-29 11:17:33 +01:00
Mikołaj Zalewski
76d4eeebff
services: Move ChangeServiceConfigW implementation from advapi32.dll to services.exe.
2008-03-29 11:17:07 +01:00
Mikołaj Zalewski
a363b9a066
services: Move QueryServiceConfigW from advapi32.dll to services.exe.
2008-03-29 11:16:43 +01:00
Mikołaj Zalewski
a2156fc348
services: Move CreateService, OpenService and DeleteService implementations from advapi32.dll to services.exe.
2008-03-29 11:15:59 +01:00
Mikołaj Zalewski
4275fbf603
services: Start a local RPC server.
2008-03-29 11:15:05 +01:00
Mikołaj Zalewski
a1fbd5508f
services.exe: Load list of services from registry at startup.
2008-03-28 14:49:17 +01:00
Mikołaj Zalewski
7bd0efa123
services.exe: Add a new program.
2008-03-28 14:49:17 +01:00