diff options
Diffstat (limited to 'package/busybox/busybox-1.4.0-conf.patch')
-rw-r--r-- | package/busybox/busybox-1.4.0-conf.patch | 37 |
1 files changed, 0 insertions, 37 deletions
diff --git a/package/busybox/busybox-1.4.0-conf.patch b/package/busybox/busybox-1.4.0-conf.patch deleted file mode 100644 index e265a7a22..000000000 --- a/package/busybox/busybox-1.4.0-conf.patch +++ /dev/null @@ -1,37 +0,0 @@ ---- busybox-1.4.0/applets/applets.c Fri Jan 19 22:23:11 2007 -+++ busybox-1.4.0-conf/applets/applets.c Wed Jan 24 10:15:49 2007 -@@ -340,20 +340,26 @@ - if (sct) { - mode_t m = sct->m_mode; - -- if (sct->m_uid == ruid) /* same uid */ -+ if (sct->m_uid == ruid) -+ /* same uid */ - m >>= 6; -- else if ((sct->m_gid == rgid) || ingroup(ruid, sct->m_gid)) /* same group / in group */ -+ else if ((sct->m_gid == rgid) || ingroup(ruid, sct->m_gid)) -+ /* same group / in group */ - m >>= 3; - - if (!(m & S_IXOTH)) /* is x bit not set ? */ - bb_error_msg_and_die("you have no permission to run this applet!"); - -- if ((sct->m_mode & (S_ISGID | S_IXGRP)) == (S_ISGID | S_IXGRP)) { /* *both* have to be set for sgid */ -- xsetgid(sct->m_gid); -- } else xsetgid(rgid); /* no sgid -> drop */ -- -- if (sct->m_mode & S_ISUID) xsetuid(sct->m_uid); -- else xsetuid(ruid); /* no suid -> drop */ -+ if (sct->m_gid != 0) { -+ /* _both_ have to be set for sgid */ -+ if ((sct->m_mode & (S_ISGID | S_IXGRP)) == (S_ISGID | S_IXGRP)) { -+ xsetgid(sct->m_gid); -+ } else xsetgid(rgid); /* no sgid -> drop */ -+ } -+ if (sct->m_uid != 0) { -+ if (sct->m_mode & S_ISUID) xsetuid(sct->m_uid); -+ else xsetuid(ruid); /* no suid -> drop */ -+ } - } else { - /* default: drop all privileges */ - xsetgid(rgid); |