chiark
/
gitweb
/
~ianmdlvl
/
elogind.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
trivial cleanups
[elogind.git]
/
libudev
/
libudev-util-private.c
diff --git
a/libudev/libudev-util-private.c
b/libudev/libudev-util-private.c
index 6b68b6a3660edef1edaee98625f3c338e92b2fc2..073f7e2df8fa1b54d28f079ba48b89e3e98232b3 100644
(file)
--- a/
libudev/libudev-util-private.c
+++ b/
libudev/libudev-util-private.c
@@
-25,7
+25,7
@@
#include "libudev.h"
#include "libudev-private.h"
#include "libudev.h"
#include "libudev-private.h"
-
int util_create_path(struct udev *udev, const char *path
)
+
static int create_path(struct udev *udev, const char *path, bool selinux
)
{
char p[UTIL_PATH_SIZE];
char *pos;
{
char p[UTIL_PATH_SIZE];
char *pos;
@@
-55,7
+55,8
@@
int util_create_path(struct udev *udev, const char *path)
return err;
dbg(udev, "mkdir '%s'\n", p);
return err;
dbg(udev, "mkdir '%s'\n", p);
- udev_selinux_setfscreatecon(udev, p, S_IFDIR|0755);
+ if (selinux)
+ udev_selinux_setfscreatecon(udev, p, S_IFDIR|0755);
err = mkdir(p, 0755);
if (err != 0) {
err = -errno;
err = mkdir(p, 0755);
if (err != 0) {
err = -errno;
@@
-66,10
+67,21
@@
int util_create_path(struct udev *udev, const char *path)
err = -ENOTDIR;
}
}
err = -ENOTDIR;
}
}
- udev_selinux_resetfscreatecon(udev);
+ if (selinux)
+ udev_selinux_resetfscreatecon(udev);
return err;
}
return err;
}
+int util_create_path(struct udev *udev, const char *path)
+{
+ return create_path(udev, path, false);
+}
+
+int util_create_path_selinux(struct udev *udev, const char *path)
+{
+ return create_path(udev, path, true);
+}
+
int util_delete_path(struct udev *udev, const char *path)
{
char p[UTIL_PATH_SIZE];
int util_delete_path(struct udev *udev, const char *path)
{
char p[UTIL_PATH_SIZE];
@@
-122,7
+134,7
@@
int util_unlink_secure(struct udev *udev, const char *filename)
uid_t util_lookup_user(struct udev *udev, const char *user)
{
char *endptr;
uid_t util_lookup_user(struct udev *udev, const char *user)
{
char *endptr;
-
in
t buflen = sysconf(_SC_GETPW_R_SIZE_MAX);
+
size_
t buflen = sysconf(_SC_GETPW_R_SIZE_MAX);
char buf[buflen];
struct passwd pwbuf;
struct passwd *pw;
char buf[buflen];
struct passwd pwbuf;
struct passwd *pw;
@@
-147,7
+159,7
@@
uid_t util_lookup_user(struct udev *udev, const char *user)
gid_t util_lookup_group(struct udev *udev, const char *group)
{
char *endptr;
gid_t util_lookup_group(struct udev *udev, const char *group)
{
char *endptr;
-
in
t buflen = sysconf(_SC_GETGR_R_SIZE_MAX);
+
size_
t buflen = sysconf(_SC_GETGR_R_SIZE_MAX);
char *buf;
struct group grbuf;
struct group *gr;
char *buf;
struct group grbuf;
struct group *gr;