Commit Graph

185 Commits (338539c7090075918c5135df83366bb7058da537)

Author SHA1 Message Date
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
Austin English 06d429d6b6 Spelling fixes. 2008-03-27 20:48:19 +01:00
Stefan Leichter 6cb602c6db advapi32: Partly implemented QueryServiceConfig2A/W. 2008-03-26 14:13:07 +01:00
Paul Vriens e92121d41e advapi/service: Give service its own debug channel. 2008-03-14 11:21:53 +01:00
Maarten Lankhorst 284f86183c advapi: Check if service really exists before bombing out in CreateService. 2008-02-22 11:55:12 +01:00
Rob Shearman b2f4c7737b advapi32: Fix the size calculation in StartServiceW.
Calculating an open-ended structure using sizeof doesn't yield an 
accurate size because of alignment.
2008-02-04 13:03:16 +01:00
Paul Chitescu 038c3a264b advapi32: Accept a NULL lpServiceStatus in ControlService. 2008-01-10 12:07:22 +01:00
Alexandre Julliard 781c3b9c6a advapi32: Fix the length written to the pipe for the start message. 2008-01-07 12:18:11 +01:00
Alexandre Julliard 3133280d08 advapi32: Don't wait for 20 seconds if a service fails to start. 2008-01-04 12:50:11 +01:00
Alexandre Julliard 7593fac632 advapi32: Start non-interactive services in a separate window station. 2007-12-20 16:44:36 +01:00
Alexandre Julliard eb2d8458a3 advapi32: Move the EnumDependentServicesA/W stubs in service.c where they belong.
Make the stubs return success.
2007-12-20 15:00:42 +01:00
Alexandre Julliard c673b2284d advapi32: Return from StartServiceCtrlDispatcher when all services are stopped. 2007-12-19 18:28:20 +01:00
Alexandre Julliard a12b9c52da advapi32: Replace the list of services with an array. 2007-12-19 17:02:12 +01:00
Alexandre Julliard 1f11ad8288 advapi32: Use exponential backoff when waiting for a service to start. 2007-12-19 15:07:20 +01:00
Alexandre Julliard 865bb0a67a advapi32: Reimplement RegisterServiceCtrlHandler on top of RegisterServiceCtrlHandlerEx. 2007-12-19 15:05:04 +01:00
Tim Schwartz 65d2f8a68d advapi32: service_control_dispatcher(): Fixed invalid pipe test to display GetLastError() before it gets overwritten. 2007-12-05 13:47:00 +01:00
Gerald Pfeifer f874126bec advapi32: Remove untriggerable check. 2007-11-19 13:51:45 +01:00
Louis Lenders 22e9da0dd7 advapi32: Improve stub for EnumServicesStatusExA a bit. 2007-10-15 16:56:11 +02:00
Mikolaj Zalewski a8b8ddd865 advapi32: Fix GetServiceDisplayNameA for cchBuffer == 0. 2007-09-28 11:30:00 +02:00
Mikolaj Zalewski 2ba324738d advapi32: The lpServiceStartName should default to LocalSystem for Win32 services. 2007-09-27 12:49:35 +02:00
Christian Gmeiner bb3a968d30 advapi32: fix some compiler warnings when using -Wsign-compare. 2007-09-25 14:12:46 +02:00
Mikolaj Zalewski c5c0a26f60 advapi32: QueryObjectSecurity should return a self-relative security descriptor and not overflow the buffer. 2007-09-18 10:47:50 +02:00
Lionel Debroux 82ef8d7239 advapi32: Replace SERV_free by HeapFree. 2007-09-12 14:09:17 +02:00
Mikolaj Zalewski ec58b4485a advapi32: Obtain the process id locally. 2007-08-23 13:35:41 +02:00
Mikolaj Zalewski 346fbb32e1 advapi32: Return an error if we try to start an already running service. 2007-08-23 13:35:34 +02:00
Paul Vriens 9b8e9516ab advapi32/service: Be a bit more consistent. 2007-07-30 14:59:20 +02:00
Paul Vriens 9c2d8c73aa advapi32/service: Fix GetServiceDisplayNameA for service with no displayname. 2007-07-30 14:59:13 +02:00
Paul Vriens 07af2fe2b5 advapi32/service: Set correct error when the service doesn't exist. 2007-07-30 14:46:14 +02:00
Paul Vriens dc6653887c advapi32/service: Fix buffersize calculations for GetServiceDisplayNameW. 2007-07-27 12:50:31 +02:00
Paul Vriens 95d2f04611 advapi32/service: Forward GetServiceDisplayNameA to GetServiceDisplayNameW. 2007-07-27 12:50:19 +02:00
Paul Vriens 83d8cbcc48 advapi32/service: Handle is checked before servicename. 2007-07-24 11:26:00 +02:00
Paul Vriens 4c24492d31 advapi32/service: lpBinaryPathName is mandatory. 2007-07-20 11:45:09 +02:00
Paul Vriens af27e2159f advapi32/service: Some tests for DeleteService. 2007-07-19 11:57:01 +02:00
Paul Vriens f8f6340a69 advapi32/service: Check for duplicate displayname. 2007-07-19 11:56:39 +02:00
Paul Vriens 6c63fa627e advapi32/service: Check combination of service-type and start-type. 2007-07-16 22:47:09 +02:00
Paul Vriens f09359cda4 advapi/service: Check servicetype and starttype. 2007-07-13 12:28:25 +02:00
Paul Vriens d470e688c4 advapi/service: Create specific access rights for service handles. 2007-07-13 12:27:40 +02:00
Paul Vriens 137eb037b9 advapi/service: Check for empty servicename and binaryname. 2007-07-12 12:58:29 +02:00
Paul Vriens c011369aab advapi/service: Check if we have enough access rights to create a service. 2007-07-12 12:58:16 +02:00
Paul Vriens 5dab8935b9 advapi/service: First tests (and fixes) for CreateService. 2007-07-12 12:58:08 +02:00
Paul Vriens 13b3b724c6 advapi/service: Fix possible handle leak. 2007-07-12 12:57:47 +02:00
Paul Vriens 05fec6c871 advapi/service: Simplify DeleteService by using RegDeleteTree. 2007-07-12 12:57:41 +02:00