Don't overwrite the first " when installing a service.
This commit is contained in:
parent
72bdc05cb7
commit
570e7e9c61
1 changed files with 5 additions and 5 deletions
|
@ -17,7 +17,7 @@
|
||||||
along with this program; if not, write to the Free Software
|
along with this program; if not, write to the Free Software
|
||||||
Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
|
Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
|
||||||
|
|
||||||
$Id: process.c,v 1.1.2.73 2003/08/17 12:05:08 guus Exp $
|
$Id: process.c,v 1.1.2.74 2003/08/22 15:05:01 guus Exp $
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#include "system.h"
|
#include "system.h"
|
||||||
|
@ -82,7 +82,7 @@ static SERVICE_STATUS status = {0};
|
||||||
static SERVICE_STATUS_HANDLE statushandle = 0;
|
static SERVICE_STATUS_HANDLE statushandle = 0;
|
||||||
|
|
||||||
bool install_service(void) {
|
bool install_service(void) {
|
||||||
char command[4096] = "";
|
char command[4096] = "\"";
|
||||||
char **argp;
|
char **argp;
|
||||||
bool space;
|
bool space;
|
||||||
SERVICE_DESCRIPTION description = {"Virtual Private Network daemon"};
|
SERVICE_DESCRIPTION description = {"Virtual Private Network daemon"};
|
||||||
|
@ -93,10 +93,8 @@ bool install_service(void) {
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
strncat(command, "\"", sizeof(command));
|
|
||||||
|
|
||||||
if(!strchr(program_name, '\\')) {
|
if(!strchr(program_name, '\\')) {
|
||||||
GetCurrentDirectory(sizeof(command), command);
|
GetCurrentDirectory(sizeof(command) - 1, command + 1);
|
||||||
strncat(command, "\\", sizeof(command));
|
strncat(command, "\\", sizeof(command));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -117,6 +115,8 @@ bool install_service(void) {
|
||||||
strncat(command, "\"", sizeof(command));
|
strncat(command, "\"", sizeof(command));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
logger(LOG_DEBUG, "Command: '%s'", command);
|
||||||
|
|
||||||
service = CreateService(manager, identname, identname,
|
service = CreateService(manager, identname, identname,
|
||||||
SERVICE_ALL_ACCESS, SERVICE_WIN32_OWN_PROCESS, SERVICE_AUTO_START, SERVICE_ERROR_NORMAL,
|
SERVICE_ALL_ACCESS, SERVICE_WIN32_OWN_PROCESS, SERVICE_AUTO_START, SERVICE_ERROR_NORMAL,
|
||||||
command, "NDIS", NULL, NULL, NULL, NULL);
|
command, "NDIS", NULL, NULL, NULL, NULL);
|
||||||
|
|
Loading…
Reference in a new issue