[Spread-cvs] commit: r684 - trunk/daemon

jonathan at spread.org jonathan at spread.org
Fri Jan 24 14:34:56 EST 2014


Author: jonathan
Date: 2014-01-24 14:34:56 -0500 (Fri, 24 Jan 2014)
New Revision: 684

Modified:
   trunk/daemon/winservice.c
Log:
Fix windows EOL in winservice.c file

Modified: trunk/daemon/winservice.c
===================================================================
--- trunk/daemon/winservice.c	2014-01-24 19:31:48 UTC (rev 683)
+++ trunk/daemon/winservice.c	2014-01-24 19:34:56 UTC (rev 684)
@@ -33,249 +33,249 @@
  *
  */
 
-#include <stdlib.h>
-
-#include "spu_alarm.h"
-#include "sp_events.h"
-
-#include <Windows.h>
-#include <Winsvc.h>
-
-// The name used by Windows to refer to this service
-#define SERVICE_NAME "spread"
-#define DISPLAY_NAME "Spread Service"
-#define SERVICE_DESCRIPTION_STR "Provides distributed message based communications services."
-
-/* ************************************************************************* */
-
-static void ErrorMessageBox(const char *faultMsg, DWORD err)
-{
-	LPVOID lpMsgBuf;
-	char szBuf[1024];
-	FormatMessage(
-		FORMAT_MESSAGE_ALLOCATE_BUFFER | FORMAT_MESSAGE_FROM_SYSTEM,
-		NULL,
-		err,
-		MAKELANGID(LANG_NEUTRAL, SUBLANG_DEFAULT),
-		(LPTSTR) &lpMsgBuf,
-		0, NULL);
-	sprintf_s(szBuf, sizeof(szBuf), "%s Error %d: %s", faultMsg, err, lpMsgBuf);
-	MessageBox(NULL, szBuf, DISPLAY_NAME, MB_OK);
-	LocalFree(lpMsgBuf);
-}
-
-/* ************************************************************************* */
-
-static BOOL InstallService()
-{
-    SERVICE_DESCRIPTION sdBuf;
-    SC_HANDLE hSCManager;
-    SC_HANDLE hService;
-
-    char lpszBinaryPathName[_MAX_PATH + 10];
-
-	if (!GetModuleFileName(NULL, lpszBinaryPathName, _MAX_PATH)) {
-        ErrorMessageBox(TEXT("Unable to get the executable's path."), GetLastError());
-        return FALSE;
-    }
-
-	strcat(lpszBinaryPathName, TEXT(" --service"));
-
-    hSCManager = OpenSCManager(NULL, NULL, SC_MANAGER_ALL_ACCESS);
-    
-    if (hSCManager == NULL) {
-        ErrorMessageBox(TEXT("Unable to open the service manager."), GetLastError());
-        return FALSE;
-    }
-
-    hService = CreateService(hSCManager, 
-        SERVICE_NAME, // service name
-        DISPLAY_NAME, // service name to display
-        SERVICE_ALL_ACCESS, // desired access
-        SERVICE_WIN32_OWN_PROCESS | SERVICE_INTERACTIVE_PROCESS, // service type
-        SERVICE_DEMAND_START, // start type 
-        SERVICE_ERROR_NORMAL, // error control type 
-        lpszBinaryPathName, // service's binary 
-        NULL, // no load ordering group 
-        NULL, // no tag identifier 
-        TEXT("\0"), // no dependencies
-        NULL, // LocalSystem account
-        NULL); // no password
-    
-    if (hService == NULL) {
-        ErrorMessageBox(TEXT("Unable to create the service."), GetLastError());
-        CloseServiceHandle(hService);
-        return FALSE;
-    }
-
-    sdBuf.lpDescription = (LPTSTR) SERVICE_DESCRIPTION_STR;
-    if (!ChangeServiceConfig2(hService, SERVICE_CONFIG_DESCRIPTION, &sdBuf)) {
-        ErrorMessageBox(TEXT("Unable to change the service description."), GetLastError());
-        return FALSE;
-    }
-
-    CloseServiceHandle(hService);
-    CloseServiceHandle(hSCManager);
-    return TRUE;
-}
-
-/* ************************************************************************* */
-
-static BOOL UninstallService()
-{
-    SC_HANDLE hSCManager;
-    SC_HANDLE hService;
-    SERVICE_STATUS status;
-    BOOL bDelete;
-
-    hSCManager = OpenSCManager(NULL, NULL, SC_MANAGER_ALL_ACCESS);
-
-    if (hSCManager == NULL) {
-        ErrorMessageBox(TEXT("Couldn't open service manager."), GetLastError());
-        return FALSE;
-    }
-
-    hService = OpenService(hSCManager, SERVICE_NAME, SERVICE_STOP | DELETE);
-
-    if (hService == NULL) {
-        ErrorMessageBox(TEXT("Couldn't open service."), GetLastError());
-        CloseServiceHandle(hSCManager);
-        return FALSE; 
-    }
-
-    memset(&status, 0, sizeof(status));
-    ControlService(hService, SERVICE_CONTROL_STOP, &status);
-
-    bDelete = DeleteService(hService);
-
-    CloseServiceHandle( hService );
-    CloseServiceHandle( hSCManager );
-
-    if (!bDelete) {
-        ErrorMessageBox(TEXT("Service could not be uninstalled."), GetLastError());
-        return FALSE;
-    }
-    return TRUE;
-}
-
-/* ************************************************************************* */
-
-SERVICE_STATUS m_ServiceStatus;
-SERVICE_STATUS_HANDLE m_ServiceStatusHandle;
-extern int SpreadMain(int argc, char *argv[]);
-
-static void WINAPI ServiceCtrlHandler(DWORD Opcode)
-{
-    switch(Opcode)
-    {
-    case SERVICE_CONTROL_PAUSE: 
-        m_ServiceStatus.dwCurrentState = SERVICE_PAUSED;
-        break;
-
-    case SERVICE_CONTROL_CONTINUE:
-        m_ServiceStatus.dwCurrentState = SERVICE_RUNNING;
-        break;
-
-    case SERVICE_CONTROL_STOP:
-		E_exit_events();
-		m_ServiceStatus.dwCurrentState = SERVICE_STOP_PENDING;
-        m_ServiceStatus.dwWin32ExitCode = NO_ERROR;
-        m_ServiceStatus.dwCheckPoint = 0;
-        m_ServiceStatus.dwWaitHint = 0;
-        SetServiceStatus(m_ServiceStatusHandle, &m_ServiceStatus);
-        break;
-
-    case SERVICE_CONTROL_INTERROGATE:
-        break;
-
-    case SERVICE_CONTROL_SHUTDOWN:
-        break;
-    }
-    return;
-}
-
-/* ************************************************************************* */
-
-static void spread_atexit(void)
-{
-    m_ServiceStatus.dwCurrentState = SERVICE_STOPPED;
-    SetServiceStatus(m_ServiceStatusHandle, &m_ServiceStatus);
-}
-
-/* ************************************************************************* */
-
-//static int    My_Argc;
-//static char **My_Argv;
-
-static void WINAPI ServiceMain(DWORD argc, LPTSTR *argv)
-{
-    DWORD status;
-
-	abort();
-
-    m_ServiceStatus.dwServiceType = SERVICE_WIN32;
-    m_ServiceStatus.dwCurrentState = SERVICE_START_PENDING;
-    m_ServiceStatus.dwControlsAccepted = SERVICE_ACCEPT_STOP;
-    m_ServiceStatus.dwWin32ExitCode = NO_ERROR;
-    m_ServiceStatus.dwServiceSpecificExitCode = 0;
-    m_ServiceStatus.dwCheckPoint = 0;
-    m_ServiceStatus.dwWaitHint = 0;
-
-    m_ServiceStatusHandle = RegisterServiceCtrlHandler(SERVICE_NAME, ServiceCtrlHandler); 
-    if (m_ServiceStatusHandle == (SERVICE_STATUS_HANDLE)0) 
-    {
-        return;
-    }
-    m_ServiceStatus.dwWaitHint = 0;
-    m_ServiceStatus.dwCheckPoint = 0;
-    m_ServiceStatus.dwCurrentState = SERVICE_RUNNING;
-    SetServiceStatus(m_ServiceStatusHandle, &m_ServiceStatus);
-    
-    atexit( spread_atexit );
-
-    status = SpreadMain(argc, argv);
-
-	if (status != 0) {
-        m_ServiceStatus.dwWin32ExitCode = ERROR_SERVICE_SPECIFIC_ERROR;
-        m_ServiceStatus.dwServiceSpecificExitCode = status;
-    }
-    m_ServiceStatus.dwCurrentState = SERVICE_STOPPED;
-    SetServiceStatus(m_ServiceStatusHandle, &m_ServiceStatus);
-
-	return;
-}
-
-/* ************************************************************************* */
-
-int main(int argc, char *argv[])
-{
-	//My_Argc = argc;
-	//My_Argv = argv;
-
-    if (argc > 1)
-    {
-        if (_stricmp(argv[1], "--service") == 0)
-        {
-            SERVICE_TABLE_ENTRY DispatchTable[] = {
-                {SERVICE_NAME, ServiceMain},
-                {NULL, NULL}
-            };
-			StartServiceCtrlDispatcher(DispatchTable);
-            return 0;    
-        }
-
-        if (_stricmp(argv[1], "--install-service") == 0)
-        {
-            return InstallService() ? 0 : 1;
-        }
-
-        if (_stricmp(argv[1], "--uninstall-service") == 0)        
-        {
-            return UninstallService() ? 0 : 1;
-        }
-    } 
-    
-    return SpreadMain(argc, argv);
-}
-
-/* ************************************************************************* */
+#include <stdlib.h>
+
+#include "spu_alarm.h"
+#include "sp_events.h"
+
+#include <Windows.h>
+#include <Winsvc.h>
+
+// The name used by Windows to refer to this service
+#define SERVICE_NAME "spread"
+#define DISPLAY_NAME "Spread Service"
+#define SERVICE_DESCRIPTION_STR "Provides distributed message based communications services."
+
+/* ************************************************************************* */
+
+static void ErrorMessageBox(const char *faultMsg, DWORD err)
+{
+	LPVOID lpMsgBuf;
+	char szBuf[1024];
+	FormatMessage(
+		FORMAT_MESSAGE_ALLOCATE_BUFFER | FORMAT_MESSAGE_FROM_SYSTEM,
+		NULL,
+		err,
+		MAKELANGID(LANG_NEUTRAL, SUBLANG_DEFAULT),
+		(LPTSTR) &lpMsgBuf,
+		0, NULL);
+	sprintf_s(szBuf, sizeof(szBuf), "%s Error %d: %s", faultMsg, err, lpMsgBuf);
+	MessageBox(NULL, szBuf, DISPLAY_NAME, MB_OK);
+	LocalFree(lpMsgBuf);
+}
+
+/* ************************************************************************* */
+
+static BOOL InstallService()
+{
+    SERVICE_DESCRIPTION sdBuf;
+    SC_HANDLE hSCManager;
+    SC_HANDLE hService;
+
+    char lpszBinaryPathName[_MAX_PATH + 10];
+
+	if (!GetModuleFileName(NULL, lpszBinaryPathName, _MAX_PATH)) {
+        ErrorMessageBox(TEXT("Unable to get the executable's path."), GetLastError());
+        return FALSE;
+    }
+
+	strcat(lpszBinaryPathName, TEXT(" --service"));
+
+    hSCManager = OpenSCManager(NULL, NULL, SC_MANAGER_ALL_ACCESS);
+    
+    if (hSCManager == NULL) {
+        ErrorMessageBox(TEXT("Unable to open the service manager."), GetLastError());
+        return FALSE;
+    }
+
+    hService = CreateService(hSCManager, 
+        SERVICE_NAME, // service name
+        DISPLAY_NAME, // service name to display
+        SERVICE_ALL_ACCESS, // desired access
+        SERVICE_WIN32_OWN_PROCESS | SERVICE_INTERACTIVE_PROCESS, // service type
+        SERVICE_DEMAND_START, // start type 
+        SERVICE_ERROR_NORMAL, // error control type 
+        lpszBinaryPathName, // service's binary 
+        NULL, // no load ordering group 
+        NULL, // no tag identifier 
+        TEXT("\0"), // no dependencies
+        NULL, // LocalSystem account
+        NULL); // no password
+    
+    if (hService == NULL) {
+        ErrorMessageBox(TEXT("Unable to create the service."), GetLastError());
+        CloseServiceHandle(hService);
+        return FALSE;
+    }
+
+    sdBuf.lpDescription = (LPTSTR) SERVICE_DESCRIPTION_STR;
+    if (!ChangeServiceConfig2(hService, SERVICE_CONFIG_DESCRIPTION, &sdBuf)) {
+        ErrorMessageBox(TEXT("Unable to change the service description."), GetLastError());
+        return FALSE;
+    }
+
+    CloseServiceHandle(hService);
+    CloseServiceHandle(hSCManager);
+    return TRUE;
+}
+
+/* ************************************************************************* */
+
+static BOOL UninstallService()
+{
+    SC_HANDLE hSCManager;
+    SC_HANDLE hService;
+    SERVICE_STATUS status;
+    BOOL bDelete;
+
+    hSCManager = OpenSCManager(NULL, NULL, SC_MANAGER_ALL_ACCESS);
+
+    if (hSCManager == NULL) {
+        ErrorMessageBox(TEXT("Couldn't open service manager."), GetLastError());
+        return FALSE;
+    }
+
+    hService = OpenService(hSCManager, SERVICE_NAME, SERVICE_STOP | DELETE);
+
+    if (hService == NULL) {
+        ErrorMessageBox(TEXT("Couldn't open service."), GetLastError());
+        CloseServiceHandle(hSCManager);
+        return FALSE; 
+    }
+
+    memset(&status, 0, sizeof(status));
+    ControlService(hService, SERVICE_CONTROL_STOP, &status);
+
+    bDelete = DeleteService(hService);
+
+    CloseServiceHandle( hService );
+    CloseServiceHandle( hSCManager );
+
+    if (!bDelete) {
+        ErrorMessageBox(TEXT("Service could not be uninstalled."), GetLastError());
+        return FALSE;
+    }
+    return TRUE;
+}
+
+/* ************************************************************************* */
+
+SERVICE_STATUS m_ServiceStatus;
+SERVICE_STATUS_HANDLE m_ServiceStatusHandle;
+extern int SpreadMain(int argc, char *argv[]);
+
+static void WINAPI ServiceCtrlHandler(DWORD Opcode)
+{
+    switch(Opcode)
+    {
+    case SERVICE_CONTROL_PAUSE: 
+        m_ServiceStatus.dwCurrentState = SERVICE_PAUSED;
+        break;
+
+    case SERVICE_CONTROL_CONTINUE:
+        m_ServiceStatus.dwCurrentState = SERVICE_RUNNING;
+        break;
+
+    case SERVICE_CONTROL_STOP:
+		E_exit_events();
+		m_ServiceStatus.dwCurrentState = SERVICE_STOP_PENDING;
+        m_ServiceStatus.dwWin32ExitCode = NO_ERROR;
+        m_ServiceStatus.dwCheckPoint = 0;
+        m_ServiceStatus.dwWaitHint = 0;
+        SetServiceStatus(m_ServiceStatusHandle, &m_ServiceStatus);
+        break;
+
+    case SERVICE_CONTROL_INTERROGATE:
+        break;
+
+    case SERVICE_CONTROL_SHUTDOWN:
+        break;
+    }
+    return;
+}
+
+/* ************************************************************************* */
+
+static void spread_atexit(void)
+{
+    m_ServiceStatus.dwCurrentState = SERVICE_STOPPED;
+    SetServiceStatus(m_ServiceStatusHandle, &m_ServiceStatus);
+}
+
+/* ************************************************************************* */
+
+//static int    My_Argc;
+//static char **My_Argv;
+
+static void WINAPI ServiceMain(DWORD argc, LPTSTR *argv)
+{
+    DWORD status;
+
+	abort();
+
+    m_ServiceStatus.dwServiceType = SERVICE_WIN32;
+    m_ServiceStatus.dwCurrentState = SERVICE_START_PENDING;
+    m_ServiceStatus.dwControlsAccepted = SERVICE_ACCEPT_STOP;
+    m_ServiceStatus.dwWin32ExitCode = NO_ERROR;
+    m_ServiceStatus.dwServiceSpecificExitCode = 0;
+    m_ServiceStatus.dwCheckPoint = 0;
+    m_ServiceStatus.dwWaitHint = 0;
+
+    m_ServiceStatusHandle = RegisterServiceCtrlHandler(SERVICE_NAME, ServiceCtrlHandler); 
+    if (m_ServiceStatusHandle == (SERVICE_STATUS_HANDLE)0) 
+    {
+        return;
+    }
+    m_ServiceStatus.dwWaitHint = 0;
+    m_ServiceStatus.dwCheckPoint = 0;
+    m_ServiceStatus.dwCurrentState = SERVICE_RUNNING;
+    SetServiceStatus(m_ServiceStatusHandle, &m_ServiceStatus);
+    
+    atexit( spread_atexit );
+
+    status = SpreadMain(argc, argv);
+
+	if (status != 0) {
+        m_ServiceStatus.dwWin32ExitCode = ERROR_SERVICE_SPECIFIC_ERROR;
+        m_ServiceStatus.dwServiceSpecificExitCode = status;
+    }
+    m_ServiceStatus.dwCurrentState = SERVICE_STOPPED;
+    SetServiceStatus(m_ServiceStatusHandle, &m_ServiceStatus);
+
+	return;
+}
+
+/* ************************************************************************* */
+
+int main(int argc, char *argv[])
+{
+	//My_Argc = argc;
+	//My_Argv = argv;
+
+    if (argc > 1)
+    {
+        if (_stricmp(argv[1], "--service") == 0)
+        {
+            SERVICE_TABLE_ENTRY DispatchTable[] = {
+                {SERVICE_NAME, ServiceMain},
+                {NULL, NULL}
+            };
+			StartServiceCtrlDispatcher(DispatchTable);
+            return 0;    
+        }
+
+        if (_stricmp(argv[1], "--install-service") == 0)
+        {
+            return InstallService() ? 0 : 1;
+        }
+
+        if (_stricmp(argv[1], "--uninstall-service") == 0)        
+        {
+            return UninstallService() ? 0 : 1;
+        }
+    } 
+    
+    return SpreadMain(argc, argv);
+}
+
+/* ************************************************************************* */




More information about the Spread-cvs mailing list