1
0
mirror of https://github.com/MariaDB/server.git synced 2025-07-30 16:24:05 +03:00

fixed the service bits of the IM

server-tools/instance-manager/IMService.cpp:
  * setting username and password to NULL so that the 
  IM runs at LocalSystem (this should be changed soon)
  * implemented stop service by raising a sigterm
  * implemented start service by loading options and calling manager()
server-tools/instance-manager/IMService.h:
  changed the sig for Run()
server-tools/instance-manager/WindowsService.cpp:
  default debugging to false
  changed the sig of RuN()
server-tools/instance-manager/WindowsService.h:
  change the sig of run()
server-tools/instance-manager/instance.cc:
  * remove the inclusion of process.h
  * concat all args into a single buffer to pass to CreateProcess
server-tools/instance-manager/instance_options.cc:
  quoting the binary to handle paths with quotes
server-tools/instance-manager/listener.cc:
  use a timeval for select so that our select will only run
  for 100 msec before we check to see if we are shutting down
server-tools/instance-manager/mysqlmanager.cc:
  if we are given the stand alone option, then run the manager as 
  standalone
server-tools/instance-manager/options.cc:
  Added stand alone command line arg
server-tools/instance-manager/options.h:
  Added stand alone command line arg
This commit is contained in:
unknown
2005-09-13 14:53:19 -05:00
parent 69b1940eef
commit c6dfe79beb
10 changed files with 58 additions and 31 deletions

View File

@ -1,12 +1,16 @@
#include <windows.h>
#include <signal.h>
#include "log.h"
#include "options.h"
#include "IMService.h"
#include "manager.h"
IMService::IMService(void)
{
serviceName= "MySqlManager";
displayName= "MySQL Manager";
username= NULL;
password= NULL;
}
IMService::~IMService(void)
@ -16,18 +20,25 @@ IMService::~IMService(void)
void IMService::Stop()
{
ReportStatus(SERVICE_STOP_PENDING);
// stop the IM work
raise(SIGTERM);
}
void IMService::Run()
void IMService::Run(DWORD argc, LPTSTR *argv)
{
// report to the SCM that we're about to start
ReportStatus((DWORD)SERVICE_START_PENDING);
Options o;
o.load(argc, argv);
// init goes here
ReportStatus((DWORD)SERVICE_RUNNING);
// wait for main loop to terminate
manager(o);
o.cleanup();
}
void IMService::Log(const char *msg)