Place the ifchange socket in /var/state/ifchange within the chroot

jail and change configuration instructions as well.

Change default configuration instructions to specify setting root
of the chroot jail as owned by root.root.
This commit is contained in:
Nicholas J. Kain
2011-05-01 20:43:29 -04:00
parent b3f9115689
commit 59beb159d3
4 changed files with 23 additions and 17 deletions

View File

@@ -5,7 +5,6 @@
#define PID_FILE_DEFAULT "/var/run/ifchd.pid"
#define IFCHD_VERSION "0.8"
#define COMM_SOCKET_PATH "ifchange"
#define MAX_BUF 1024
#define SOCK_QUEUE 2
#define CONN_TIMEOUT 60

View File

@@ -1,5 +1,5 @@
/* ifchd.c - interface change daemon
* Time-stamp: <2011-04-30 07:26:54 nk>
* Time-stamp: <2011-05-01 19:03:48 njk>
*
* (C) 2004-2011 Nicholas J. Kain <njkain at gmail dot com>
*
@@ -524,7 +524,7 @@ static int get_listen(void)
struct sockaddr_un lsock_addr =
{
.sun_family = AF_UNIX,
.sun_path = COMM_SOCKET_PATH
.sun_path = "/var/state/ifchange"
};
lsock = socket(PF_UNIX, SOCK_STREAM, 0);
@@ -533,11 +533,11 @@ static int get_listen(void)
fcntl(lsock, F_SETFL, O_NONBLOCK);
(void) unlink(COMM_SOCKET_PATH);
(void) unlink("/var/state/ifchange");
ret = bind(lsock, (struct sockaddr *) &lsock_addr, sizeof(lsock_addr));
if (ret)
suicide("dispatch_work - failed to bind socket");
ret = chmod(COMM_SOCKET_PATH, S_IRUSR | S_IWUSR | S_IRGRP | S_IWGRP);
ret = chmod("/var/state/ifchange", S_IRUSR | S_IWUSR | S_IRGRP | S_IWGRP);
if (ret)
suicide("dispatch_work - failed to chmod socket");
ret = listen(lsock, SOCK_QUEUE);