summaryrefslogtreecommitdiff
path: root/sys-process/psmisc/files
diff options
context:
space:
mode:
authorV3n3RiX <venerix@redcorelinux.org>2021-03-20 14:27:17 +0000
committerV3n3RiX <venerix@redcorelinux.org>2021-03-20 14:27:17 +0000
commit5bb9ff1ee56d2b5e75e01a7f066d8b0cec84ec02 (patch)
tree66e860a5099bcad013f1cf667255dc372a7c11b3 /sys-process/psmisc/files
parent7218e1b46bceac05841e90472501742d905fb3fc (diff)
gentoo resync : 20.03.2021
Diffstat (limited to 'sys-process/psmisc/files')
-rw-r--r--sys-process/psmisc/files/psmisc-23.4-fuser_regression_revert.patch45
1 files changed, 45 insertions, 0 deletions
diff --git a/sys-process/psmisc/files/psmisc-23.4-fuser_regression_revert.patch b/sys-process/psmisc/files/psmisc-23.4-fuser_regression_revert.patch
new file mode 100644
index 000000000000..59b2bfcef1de
--- /dev/null
+++ b/sys-process/psmisc/files/psmisc-23.4-fuser_regression_revert.patch
@@ -0,0 +1,45 @@
+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)) {