chiark
/
gitweb
/
~ianmdlvl
/
elogind.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
log: fix log_full_errno() with custom facilities
[elogind.git]
/
src
/
shared
/
clean-ipc.c
diff --git
a/src/shared/clean-ipc.c
b/src/shared/clean-ipc.c
index ddd42cc2b2b742250fbda1cd92e3615e5721303b..39ab645133f8df33237ab34c875edfbd0dc19555 100644
(file)
--- a/
src/shared/clean-ipc.c
+++ b/
src/shared/clean-ipc.c
@@
-44,7
+44,7
@@
static int clean_sysvipc_shm(uid_t delete_uid) {
if (errno == ENOENT)
return 0;
if (errno == ENOENT)
return 0;
- log_warning
(
"Failed to open /proc/sysvipc/shm: %m");
+ log_warning
_errno(errno,
"Failed to open /proc/sysvipc/shm: %m");
return -errno;
}
return -errno;
}
@@
-78,7
+78,7
@@
static int clean_sysvipc_shm(uid_t delete_uid) {
if (errno == EIDRM || errno == EINVAL)
continue;
if (errno == EIDRM || errno == EINVAL)
continue;
- log_warning
(
"Failed to remove SysV shared memory segment %i: %m", shmid);
+ log_warning
_errno(errno,
"Failed to remove SysV shared memory segment %i: %m", shmid);
ret = -errno;
}
}
ret = -errno;
}
}
@@
-86,7
+86,7
@@
static int clean_sysvipc_shm(uid_t delete_uid) {
return ret;
fail:
return ret;
fail:
- log_warning
(
"Failed to read /proc/sysvipc/shm: %m");
+ log_warning
_errno(errno,
"Failed to read /proc/sysvipc/shm: %m");
return -errno;
}
return -errno;
}
@@
-101,7
+101,7
@@
static int clean_sysvipc_sem(uid_t delete_uid) {
if (errno == ENOENT)
return 0;
if (errno == ENOENT)
return 0;
- log_warning
(
"Failed to open /proc/sysvipc/sem: %m");
+ log_warning
_errno(errno,
"Failed to open /proc/sysvipc/sem: %m");
return -errno;
}
return -errno;
}
@@
-130,7
+130,7
@@
static int clean_sysvipc_sem(uid_t delete_uid) {
if (errno == EIDRM || errno == EINVAL)
continue;
if (errno == EIDRM || errno == EINVAL)
continue;
- log_warning
(
"Failed to remove SysV semaphores object %i: %m", semid);
+ log_warning
_errno(errno,
"Failed to remove SysV semaphores object %i: %m", semid);
ret = -errno;
}
}
ret = -errno;
}
}
@@
-138,7
+138,7
@@
static int clean_sysvipc_sem(uid_t delete_uid) {
return ret;
fail:
return ret;
fail:
- log_warning
(
"Failed to read /proc/sysvipc/sem: %m");
+ log_warning
_errno(errno,
"Failed to read /proc/sysvipc/sem: %m");
return -errno;
}
return -errno;
}
@@
-153,7
+153,7
@@
static int clean_sysvipc_msg(uid_t delete_uid) {
if (errno == ENOENT)
return 0;
if (errno == ENOENT)
return 0;
- log_warning
(
"Failed to open /proc/sysvipc/msg: %m");
+ log_warning
_errno(errno,
"Failed to open /proc/sysvipc/msg: %m");
return -errno;
}
return -errno;
}
@@
-183,7
+183,7
@@
static int clean_sysvipc_msg(uid_t delete_uid) {
if (errno == EIDRM || errno == EINVAL)
continue;
if (errno == EIDRM || errno == EINVAL)
continue;
- log_warning
(
"Failed to remove SysV message queue %i: %m", msgid);
+ log_warning
_errno(errno,
"Failed to remove SysV message queue %i: %m", msgid);
ret = -errno;
}
}
ret = -errno;
}
}
@@
-191,7
+191,7
@@
static int clean_sysvipc_msg(uid_t delete_uid) {
return ret;
fail:
return ret;
fail:
- log_warning
(
"Failed to read /proc/sysvipc/msg: %m");
+ log_warning
_errno(errno,
"Failed to read /proc/sysvipc/msg: %m");
return -errno;
}
return -errno;
}
@@
-211,7
+211,7
@@
static int clean_posix_shm_internal(DIR *dir, uid_t uid) {
if (errno == ENOENT)
continue;
if (errno == ENOENT)
continue;
- log_warning
(
"Failed to stat() POSIX shared memory segment %s: %m", de->d_name);
+ log_warning
_errno(errno,
"Failed to stat() POSIX shared memory segment %s: %m", de->d_name);
ret = -errno;
continue;
}
ret = -errno;
continue;
}
@@
-225,7
+225,7
@@
static int clean_posix_shm_internal(DIR *dir, uid_t uid) {
kid = xopendirat(dirfd(dir), de->d_name, O_NOFOLLOW|O_NOATIME);
if (!kid) {
if (errno != ENOENT) {
kid = xopendirat(dirfd(dir), de->d_name, O_NOFOLLOW|O_NOATIME);
if (!kid) {
if (errno != ENOENT) {
- log_warning
(
"Failed to enter shared memory directory %s: %m", de->d_name);
+ log_warning
_errno(errno,
"Failed to enter shared memory directory %s: %m", de->d_name);
ret = -errno;
}
} else {
ret = -errno;
}
} else {
@@
-239,7
+239,7
@@
static int clean_posix_shm_internal(DIR *dir, uid_t uid) {
if (errno == ENOENT)
continue;
if (errno == ENOENT)
continue;
- log_warning
(
"Failed to remove POSIX shared memory directory %s: %m", de->d_name);
+ log_warning
_errno(errno,
"Failed to remove POSIX shared memory directory %s: %m", de->d_name);
ret = -errno;
}
} else {
ret = -errno;
}
} else {
@@
-249,7
+249,7
@@
static int clean_posix_shm_internal(DIR *dir, uid_t uid) {
if (errno == ENOENT)
continue;
if (errno == ENOENT)
continue;
- log_warning
(
"Failed to remove POSIX shared memory segment %s: %m", de->d_name);
+ log_warning
_errno(errno,
"Failed to remove POSIX shared memory segment %s: %m", de->d_name);
ret = -errno;
}
}
ret = -errno;
}
}
@@
-258,7
+258,7
@@
static int clean_posix_shm_internal(DIR *dir, uid_t uid) {
return ret;
fail:
return ret;
fail:
- log_warning
(
"Failed to read /dev/shm: %m");
+ log_warning
_errno(errno,
"Failed to read /dev/shm: %m");
return -errno;
}
return -errno;
}
@@
-270,7
+270,7
@@
static int clean_posix_shm(uid_t uid) {
if (errno == ENOENT)
return 0;
if (errno == ENOENT)
return 0;
- log_warning
(
"Failed to open /dev/shm: %m");
+ log_warning
_errno(errno,
"Failed to open /dev/shm: %m");
return -errno;
}
return -errno;
}
@@
-287,7
+287,7
@@
static int clean_posix_mq(uid_t uid) {
if (errno == ENOENT)
return 0;
if (errno == ENOENT)
return 0;
- log_warning
(
"Failed to open /dev/mqueue: %m");
+ log_warning
_errno(errno,
"Failed to open /dev/mqueue: %m");
return -errno;
}
return -errno;
}
@@
-302,7
+302,7
@@
static int clean_posix_mq(uid_t uid) {
if (errno == ENOENT)
continue;
if (errno == ENOENT)
continue;
- log_warning
(
"Failed to stat() MQ segment %s: %m", de->d_name);
+ log_warning
_errno(errno,
"Failed to stat() MQ segment %s: %m", de->d_name);
ret = -errno;
continue;
}
ret = -errno;
continue;
}
@@
-317,7
+317,7
@@
static int clean_posix_mq(uid_t uid) {
if (errno == ENOENT)
continue;
if (errno == ENOENT)
continue;
- log_warning
(
"Failed to unlink POSIX message queue %s: %m", fn);
+ log_warning
_errno(errno,
"Failed to unlink POSIX message queue %s: %m", fn);
ret = -errno;
}
}
ret = -errno;
}
}
@@
-325,15
+325,15
@@
static int clean_posix_mq(uid_t uid) {
return ret;
fail:
return ret;
fail:
- log_warning
(
"Failed to read /dev/mqueue: %m");
+ log_warning
_errno(errno,
"Failed to read /dev/mqueue: %m");
return -errno;
}
int clean_ipc(uid_t uid) {
int ret = 0, r;
return -errno;
}
int clean_ipc(uid_t uid) {
int ret = 0, r;
- /* Refuse to clean IPC of the root
user
*/
- if (uid
== 0
)
+ /* Refuse to clean IPC of the root
and system users
*/
+ if (uid
<= SYSTEM_UID_MAX
)
return 0;
r = clean_sysvipc_shm(uid);
return 0;
r = clean_sysvipc_shm(uid);