|
@@ -1442,7 +1442,6 @@ asmlinkage long sys_times(struct tms __user * tbuf)
|
|
* Auch. Had to add the 'did_exec' flag to conform completely to POSIX.
|
|
* Auch. Had to add the 'did_exec' flag to conform completely to POSIX.
|
|
* LBT 04.03.94
|
|
* LBT 04.03.94
|
|
*/
|
|
*/
|
|
-
|
|
|
|
asmlinkage long sys_setpgid(pid_t pid, pid_t pgid)
|
|
asmlinkage long sys_setpgid(pid_t pid, pid_t pgid)
|
|
{
|
|
{
|
|
struct task_struct *p;
|
|
struct task_struct *p;
|
|
@@ -1470,7 +1469,7 @@ asmlinkage long sys_setpgid(pid_t pid, pid_t pgid)
|
|
if (!thread_group_leader(p))
|
|
if (!thread_group_leader(p))
|
|
goto out;
|
|
goto out;
|
|
|
|
|
|
- if (p->real_parent == group_leader) {
|
|
|
|
|
|
+ if (p->real_parent->tgid == group_leader->tgid) {
|
|
err = -EPERM;
|
|
err = -EPERM;
|
|
if (task_session(p) != task_session(group_leader))
|
|
if (task_session(p) != task_session(group_leader))
|
|
goto out;
|
|
goto out;
|