You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
46 lines
1.5 KiB
46 lines
1.5 KiB
https://gitlab.com/psmisc/psmisc/-/issues/35
|
|
|
|
diff --git a/ChangeLog b/ChangeLog
|
|
index df45ae3..be20ca0 100644
|
|
--- a/ChangeLog
|
|
+++ b/ChangeLog
|
|
@@ -5,8 +5,6 @@ Changes in 23.4
|
|
* pstree: fix layout when using -C !24
|
|
* pstree: add time namespace !25
|
|
* pstree: Dynamically link to selinux and use attr
|
|
- * fuser: Get less confused about duplicate dev_id !10
|
|
- * fuser: Only check pathname on non-block devices !31
|
|
|
|
Changes in 23.3
|
|
===============
|
|
diff --git a/src/fuser.c b/src/fuser.c
|
|
index 03e6237..f9d78db 100644
|
|
--- a/src/fuser.c
|
|
+++ b/src/fuser.c
|
|
@@ -1566,7 +1566,6 @@ check_dir(const pid_t pid, const char *dirname, struct device_list *dev_head,
|
|
struct stat st, lst;
|
|
char *dirpath;
|
|
char filepath[PATH_MAX];
|
|
- char real_filepath[PATH_MAX];
|
|
|
|
if (asprintf(&dirpath, "/proc/%d/%s", pid, dirname) < 0)
|
|
return;
|
|
@@ -1605,17 +1604,6 @@ check_dir(const pid_t pid, const char *dirname, struct device_list *dev_head,
|
|
dev_tmp = dev_tmp->next) {
|
|
if (thedev != dev_tmp->device)
|
|
continue;
|
|
-
|
|
- /* check the paths match if it is not a block device */
|
|
- if (! S_ISBLK(dev_tmp->name->st.st_mode)) {
|
|
- if (readlink(filepath, real_filepath, PATH_MAX-1) < 0) {
|
|
- if (strncmp(dev_tmp->name->filename, filepath, strlen(dev_tmp->name->filename)) != 0)
|
|
- continue;
|
|
- } else {
|
|
- if (strncmp(dev_tmp->name->filename, real_filepath, strlen(dev_tmp->name->filename)) != 0)
|
|
- continue;
|
|
- }
|
|
- }
|
|
if (access == ACCESS_FILE
|
|
&& (lstat(filepath, &lst) == 0)
|
|
&& (lst.st_mode & S_IWUSR)) {
|