X-Git-Url: http://git.iain.cx/?a=blobdiff_plain;f=service.h;h=c5a5d336e3a9ec22890339bda648ad7c072cea1e;hb=f7f20a0b3ecbb0e1a2eb59f95b50f0625b37c671;hp=00428d0e170233288e561cc41d76d2a1d2834ed3;hpb=6d0e20215772e976fcf364f16e005199d4f3b726;p=nssm.git diff --git a/service.h b/service.h index 00428d0..c5a5d33 100644 --- a/service.h +++ b/service.h @@ -46,6 +46,8 @@ typedef struct { TCHAR dir[DIR_LENGTH]; TCHAR *env; __int64 affinity; + TCHAR *dependencies; + unsigned long dependencieslen; unsigned long envlen; TCHAR *env_extra; unsigned long env_extralen; @@ -70,11 +72,14 @@ typedef struct { HANDLE stderr_thread; unsigned long stderr_tid; bool rotate_files; + bool stdout_copy_and_truncate; + bool stderr_copy_and_truncate; unsigned long rotate_stdout_online; unsigned long rotate_stderr_online; unsigned long rotate_seconds; unsigned long rotate_bytes_low; unsigned long rotate_bytes_high; + unsigned long rotate_delay; unsigned long default_exit_action; unsigned long restart_delay; unsigned long throttle_delay; @@ -82,6 +87,7 @@ typedef struct { unsigned long kill_console_delay; unsigned long kill_window_delay; unsigned long kill_threads_delay; + bool kill_process_tree; SC_HANDLE handle; SERVICE_STATUS status; SERVICE_STATUS_HANDLE status_handle; @@ -119,6 +125,9 @@ void cleanup_nssm_service(nssm_service_t *); SC_HANDLE open_service_manager(unsigned long); SC_HANDLE open_service(SC_HANDLE, TCHAR *, unsigned long, TCHAR *, unsigned long); QUERY_SERVICE_CONFIG *query_service_config(const TCHAR *, SC_HANDLE); +int set_service_dependencies(const TCHAR *, SC_HANDLE, TCHAR *); +int get_service_dependencies(const TCHAR *, SC_HANDLE, TCHAR **, unsigned long *, int); +int get_service_dependencies(const TCHAR *, SC_HANDLE, TCHAR **, unsigned long *); int set_service_description(const TCHAR *, SC_HANDLE, TCHAR *); int get_service_description(const TCHAR *, SC_HANDLE, unsigned long, TCHAR *); int get_service_startup(const TCHAR *, SC_HANDLE, const QUERY_SERVICE_CONFIG *, unsigned long *);