X-Git-Url: http://git.iain.cx/?a=blobdiff_plain;f=io.h;h=60c3fd52c0fa928eb242dc9ec293cd0f3aab06fc;hb=2cd1c7c29ef4d2d3df3c5afd3ca6c788aede2bef;hp=5b9e8ca129f07ed4101ca89467f952fe0a44a971;hpb=5b9e64a9ae1fbf1254c9c246e5b123d3aa77a37a;p=nssm.git diff --git a/io.h b/io.h index 5b9e8ca..60c3fd5 100644 --- a/io.h +++ b/io.h @@ -11,10 +11,27 @@ #define NSSM_STDERR_DISPOSITION OPEN_ALWAYS #define NSSM_STDERR_FLAGS FILE_ATTRIBUTE_NORMAL +typedef struct { + TCHAR *service_name; + TCHAR *path; + unsigned long sharing; + unsigned long disposition; + unsigned long flags; + HANDLE read_handle; + HANDLE write_handle; + __int64 size; + unsigned long *tid_ptr; + unsigned long *rotate_online; +} logger_t; + int get_createfile_parameters(HKEY, TCHAR *, TCHAR *, unsigned long *, unsigned long, unsigned long *, unsigned long, unsigned long *, unsigned long); int set_createfile_parameter(HKEY, TCHAR *, TCHAR *, unsigned long); +int delete_createfile_parameter(HKEY, TCHAR *, TCHAR *); HANDLE append_to_file(TCHAR *, unsigned long, SECURITY_ATTRIBUTES *, unsigned long, unsigned long); -int get_output_handles(HKEY, STARTUPINFO *); +void rotate_file(TCHAR *, TCHAR *, unsigned long, unsigned long, unsigned long); +int get_output_handles(nssm_service_t *, HKEY, STARTUPINFO *); +void close_output_handles(STARTUPINFO *, bool, bool); void close_output_handles(STARTUPINFO *); +unsigned long WINAPI log_and_rotate(void *); #endif