summary |
shortlog |
log |
commit | commitdiff |
tree
raw |
patch |
inline | side by side (from parent 1:
a295354)
https://dev.openwrt.org/ticket/13752
https://dev.openwrt.org/ticket/13794
Signed-off-by: John Crispin <blogic@openwrt.org>
static void handle_makedev(struct blob_attr *msg, struct blob_attr *data)
{
static void handle_makedev(struct blob_attr *msg, struct blob_attr *data)
{
+ unsigned int oldumask = umask(0);
static struct blobmsg_policy mkdev_policy[2] = {
{ .type = BLOBMSG_TYPE_STRING },
{ .type = BLOBMSG_TYPE_STRING },
static struct blobmsg_policy mkdev_policy[2] = {
{ .type = BLOBMSG_TYPE_STRING },
{ .type = BLOBMSG_TYPE_STRING },
m | strtoul(blobmsg_data(tb[1]), NULL, 8),
makedev(atoi(major), atoi(minor)));
}
m | strtoul(blobmsg_data(tb[1]), NULL, 8),
makedev(atoi(major), atoi(minor)));
}
}
static void handle_rm(struct blob_attr *msg, struct blob_attr *data)
}
static void handle_rm(struct blob_attr *msg, struct blob_attr *data)
return usage(argv[0]);
}
}
return usage(argv[0]);
}
}
uloop_init();
procd_signal();
if (getpid() != 1)
uloop_init();
procd_signal();
if (getpid() != 1)
static void make_dev(const char *path, bool block, int major, int minor)
{
static void make_dev(const char *path, bool block, int major, int minor)
{
+ unsigned int oldumask = umask(0);
unsigned int _mode = mode | (block ? S_IFBLK : S_IFCHR);
unsigned int _mode = mode | (block ? S_IFBLK : S_IFCHR);
DEBUG(2, "Creating %s device %s(%d,%d)\n",
block ? "block" : "character",
path, major, minor);
mknod(path, _mode, makedev(major, minor));
DEBUG(2, "Creating %s device %s(%d,%d)\n",
block ? "block" : "character",
path, major, minor);
mknod(path, _mode, makedev(major, minor));
}
static void find_devs(bool block)
}
static void find_devs(bool block)