X-Git-Url: http://git.linux-vserver.org/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=util-vserver%2Fsrc%2Frebootmgr.c;h=43964bce2343efa6f3dcaa715c3e1380f5e0a458;hb=a297b49d55a63f1f1aebf517d5cf17300e080969;hp=8e9570eaae45d120efc8f3d2268371df62a69a53;hpb=da691fd4bad5e187b307b7fd86bf5fd61e47c3fc;p=util-vserver.git diff --git a/util-vserver/src/rebootmgr.c b/util-vserver/src/rebootmgr.c index 8e9570e..43964bc 100644 --- a/util-vserver/src/rebootmgr.c +++ b/util-vserver/src/rebootmgr.c @@ -37,6 +37,11 @@ The vreboot utility is used to send the signal from the vserver environment. */ +#ifdef HAVE_CONFIG_H +# include +#endif +#include "compat.h" + #include #include #include @@ -61,7 +66,7 @@ static int rebootmgr_opensocket (const char *vname) int ret = -1; char sockn[PATH_MAX]; int fd = socket (AF_UNIX,SOCK_STREAM,0); - sprintf (sockn,"/vservers/%s/dev/reboot",vname); + sprintf (sockn,"%s/%s/dev/reboot",VROOTDIR, vname); unlink (sockn); if (fd == -1){ fprintf (stderr,"Can't create a unix domain socket (%s)\n" @@ -99,13 +104,13 @@ static int rebootmgr_process (int fd, const char *vname) if (strcmp(buf,"reboot\n")==0){ char cmd[1000]; syslog (LOG_NOTICE,"reboot vserver %s\n",vname); - snprintf (cmd,sizeof(cmd)-1,"/usr/sbin/vserver %s restart >>/var/log/boot.log 2>&1",vname); + snprintf (cmd,sizeof(cmd)-1,"%s/vserver %s restart >>/var/log/boot.log 2>&1",SBINDIR, vname); system (cmd); ret = 0; }else if (strcmp(buf,"halt\n")==0){ char cmd[1000]; syslog (LOG_NOTICE,"halt vserver %s\n",vname); - snprintf (cmd,sizeof(cmd)-1,"/usr/sbin/vserver %s stop >>/var/log/boot.log 2>&1",vname); + snprintf (cmd,sizeof(cmd)-1,"%s/vserver %s stop >>/var/log/boot.log 2>&1",SBINDIR, vname); system (cmd); ret = 0; }else{ @@ -197,7 +202,7 @@ int main (int argc, char *argv[]) int fd = sockets[i]; if (FD_ISSET(fd,&fdin)){ struct sockaddr_un unc; - size_t len = sizeof(unc); + socklen_t len = sizeof(unc); unc.sun_family = AF_UNIX; fd = accept (fd,(struct sockaddr*)&unc,&len); if (fd != -1){