public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
* Re: + make-good_sigevent-non-static.patch added to -mm tree
@ 2007-01-25 15:43 Oleg Nesterov
  2007-01-26  9:32 ` Sébastien Dugué
  0 siblings, 1 reply; 4+ messages in thread
From: Oleg Nesterov @ 2007-01-25 15:43 UTC (permalink / raw)
  To: sebastien.dugue
  Cc: Zach Brown, Suparna Bhattacharya, Benjamin LaHaise,
	Ulrich Drepper, Ingo Molnar, Thomas Gleixner, Andrew Morton,
	linux-kernel

SИbastien DuguИ wrote:
>
> +struct task_struct *good_sigevent(sigevent_t *event)
> +{
> +	struct task_struct *task = current->group_leader;
> +
> +	if ((event->sigev_notify & SIGEV_THREAD_ID) == SIGEV_THREAD_ID) {
> +		task = find_task_by_pid(event->sigev_notify_thread_id);
> +
> +		if (!task || task->tgid != current->tgid)
> +			return NULL;
> +	} else if (event->sigev_notify == SIGEV_SIGNAL) {

No, no, we can't use "else" here,

> +		if (event->sigev_signo <= 0 || event->sigev_signo > SIGRTMAX)

because we skip the check above in SIGEV_THREAD_ID case.

This way any user can crash the kernel with a minimal effort.

Oleg.


^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2007-01-26 10:40 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2007-01-25 15:43 + make-good_sigevent-non-static.patch added to -mm tree Oleg Nesterov
2007-01-26  9:32 ` Sébastien Dugué
2007-01-26 10:08   ` Oleg Nesterov
2007-01-26 10:39     ` Sébastien Dugué

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox