signals: SI_USER: Masquerade si_pid when crossing pid ns boundary

Previous message: [thread] [date] [author]
Next message: [thread] [date] [author]
From: Linux Kernel Mailing List
Date: Thursday, April 2, 2009 - 10:01 pm

Gitweb:     http://git.kernel.org/linus/6588c1e3ff01418acafd938db0740e3477dc8cb7
Commit:     6588c1e3ff01418acafd938db0740e3477dc8cb7
Parent:     b3bfa0cba867f23365b81658b47efd906830879b
Author:     Sukadev Bhattiprolu <sukadev@linux.vnet.ibm.com>
AuthorDate: Thu Apr 2 16:58:09 2009 -0700
Committer:  Linus Torvalds <torvalds@linux-foundation.org>
CommitDate: Thu Apr 2 19:04:58 2009 -0700

    signals: SI_USER: Masquerade si_pid when crossing pid ns boundary
    
    When sending a signal to a descendant namespace, set ->si_pid to 0 since
    the sender does not have a pid in the receiver's namespace.
    
    Note:
    	- If rt_sigqueueinfo() sets si_code to SI_USER when sending a
    	  signal across a pid namespace boundary, the value in ->si_pid
    	  will be cleared to 0.
    
    Signed-off-by: Sukadev Bhattiprolu <sukadev@linux.vnet.ibm.com>
    Cc: Oleg Nesterov <oleg@tv-sign.ru>
    Cc: Roland McGrath <roland@redhat.com>
    Cc: "Eric W. Biederman" <ebiederm@xmission.com>
    Cc: Daniel Lezcano <daniel.lezcano@free.fr>
    Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
    Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
---
 kernel/signal.c |    2 ++
 1 files changed, 2 insertions(+), 0 deletions(-)

diff --git a/kernel/signal.c b/kernel/signal.c
index ba3da25..d803473 100644
--- a/kernel/signal.c
+++ b/kernel/signal.c
@@ -883,6 +883,8 @@ static int __send_signal(int sig, struct siginfo *info, struct task_struct *t,
 			break;
 		default:
 			copy_siginfo(&q->info, info);
+			if (from_ancestor_ns)
+				q->info.si_pid = 0;
 			break;
 		}
 	} else if (!is_si_special(info)) {
--
To unsubscribe from this list: send the line "unsubscribe git-commits-head" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Previous message: [thread] [date] [author]
Next message: [thread] [date] [author]

Messages in current thread:
signals: SI_USER: Masquerade si_pid when crossing pid ns b ..., Linux Kernel Mailing ..., (Thu Apr 2, 10:01 pm)