summaryrefslogtreecommitdiff
path: root/debian/patches-applied/hurd_no_setfsuid
diff options
context:
space:
mode:
Diffstat (limited to 'debian/patches-applied/hurd_no_setfsuid')
-rw-r--r--debian/patches-applied/hurd_no_setfsuid26
1 files changed, 10 insertions, 16 deletions
diff --git a/debian/patches-applied/hurd_no_setfsuid b/debian/patches-applied/hurd_no_setfsuid
index 8a27b296..a2bf783c 100644
--- a/debian/patches-applied/hurd_no_setfsuid
+++ b/debian/patches-applied/hurd_no_setfsuid
@@ -5,10 +5,10 @@ Authors: Steve Langasek <vorlon@debian.org>
Upstream status: to be forwarded, now that pam_modutil_{drop,regain}_priv
are implemented
-Index: pam-debian/libpam/pam_modutil_priv.c
+Index: pam.debian/libpam/pam_modutil_priv.c
===================================================================
---- pam-debian.orig/libpam/pam_modutil_priv.c 2011-10-10 16:21:57.858599186 -0700
-+++ pam-debian/libpam/pam_modutil_priv.c 2011-10-10 17:31:02.805686298 -0700
+--- pam.debian.orig/libpam/pam_modutil_priv.c
++++ pam.debian/libpam/pam_modutil_priv.c
@@ -14,7 +14,9 @@
#include <syslog.h>
#include <pwd.h>
@@ -19,7 +19,7 @@ Index: pam-debian/libpam/pam_modutil_priv.c
/*
* Two setfsuid() calls in a row are necessary to check
-@@ -22,17 +24,61 @@
+@@ -22,17 +24,55 @@
*/
static int change_uid(uid_t uid, uid_t *save)
{
@@ -37,13 +37,10 @@ Index: pam-debian/libpam/pam_modutil_priv.c
+ if (setreuid(euid, uid))
+ return -1;
+ else {
-+ if (setreuid(0, -1))
-+ return -1;
++ setreuid(0, -1);
+ if (setreuid(-1, uid)) {
-+ if (setreuid(-1, 0))
-+ return -1;
-+ if (setreuid(0, -1))
-+ return -1;
++ setreuid(-1, 0);
++ setreuid(0, -1);
+ if (setreuid(-1, uid))
+ return -1;
+ }
@@ -66,13 +63,10 @@ Index: pam-debian/libpam/pam_modutil_priv.c
+ if (setregid(egid, gid))
+ return -1;
+ else {
-+ if (setregid(0, -1))
-+ return -1;
++ setregid(0, -1);
+ if (setregid(-1, gid)) {
-+ if (setregid(-1, 0))
-+ return -1;
-+ if (setregid(0, -1))
-+ return -1;
++ setregid(-1, 0);
++ setregid(0, -1);
+ if (setregid(-1, gid))
+ return -1;
+ }