@@ -304,8 +304,8 @@ gt_bind(int argc, char **argv)
|
|||||||
break;
|
break;
|
||||||
case CTL_STATE:
|
case CTL_STATE:
|
||||||
if (mud_set_state(mud, (struct sockaddr *)&req.path.addr,
|
if (mud_set_state(mud, (struct sockaddr *)&req.path.addr,
|
||||||
req.path.state, req.path.rate_tx,
|
req.path.state, req.path.rate_tx,
|
||||||
req.path.rate_rx, 0, req.path.fixed_rate))
|
req.path.rate_rx, 0, req.path.fixed_rate))
|
||||||
res.ret = errno;
|
res.ret = errno;
|
||||||
break;
|
break;
|
||||||
case CTL_PATH_STATUS:
|
case CTL_PATH_STATUS:
|
||||||
|
|||||||
@@ -24,7 +24,7 @@ ctl_rundir(char *dst, size_t size)
|
|||||||
"/tmp/" PACKAGE_NAME ".%u",
|
"/tmp/" PACKAGE_NAME ".%u",
|
||||||
};
|
};
|
||||||
|
|
||||||
for (int i = 0; i < COUNT(fmt); i++) {
|
for (unsigned i = 0; i < COUNT(fmt); i++) {
|
||||||
char path[128];
|
char path[128];
|
||||||
int ret = snprintf(dst, size, fmt[i], geteuid());
|
int ret = snprintf(dst, size, fmt[i], geteuid());
|
||||||
|
|
||||||
@@ -33,7 +33,7 @@ ctl_rundir(char *dst, size_t size)
|
|||||||
((size_t)ret >= sizeof(path)))
|
((size_t)ret >= sizeof(path)))
|
||||||
continue;
|
continue;
|
||||||
|
|
||||||
memcpy(path, dst, ret + 1);
|
memcpy(path, dst, (size_t)ret + 1);
|
||||||
char *p = dirname(path);
|
char *p = dirname(path);
|
||||||
|
|
||||||
if (p && !access(p, W_OK))
|
if (p && !access(p, W_OK))
|
||||||
|
|||||||
@@ -97,7 +97,7 @@ gt_path_cmp_addr(struct sockaddr_storage *a, struct sockaddr_storage *b)
|
|||||||
}
|
}
|
||||||
|
|
||||||
static int
|
static int
|
||||||
gt_path_status(int fd, int state, struct sockaddr_storage *addr)
|
gt_path_status(int fd, enum mud_state state, struct sockaddr_storage *addr)
|
||||||
{
|
{
|
||||||
struct ctl_msg req = {
|
struct ctl_msg req = {
|
||||||
.type = CTL_PATH_STATUS,
|
.type = CTL_PATH_STATUS,
|
||||||
|
|||||||
Reference in New Issue
Block a user