Date: Mon, 14 Dec 1998 15:39:37 -0800 (PST) From: marcel@scc.nl To: freebsd-gnats-submit@FreeBSD.ORG Subject: i386/9082: linux emulator: linux_kill syscall: EINVAL on signal 0 Message-ID: <199812142339.PAA01250@hub.freebsd.org>
next in thread | raw e-mail | index | archive | help
>Number: 9082 >Category: i386 >Synopsis: linux emulator: linux_kill syscall: EINVAL on signal 0 >Confidential: no >Severity: serious >Priority: medium >Responsible: freebsd-bugs >State: open >Quarter: >Keywords: >Date-Required: >Class: sw-bug >Submitter-Id: current-users >Arrival-Date: Mon Dec 14 15:40:00 PST 1998 >Last-Modified: >Originator: Marcel Moolenaar >Organization: SCC vof >Release: -current >Environment: FreeBSD scones.sup.scc.nl 3.0-CURRENT FreeBSD 3.0-CURRENT #6: Mon Dec 14 22:52:55 CET 1998 marcel@scones.sup.scc.nl:/usr/src/sys/compile/SCONES i386 >Description: kill(pid, 0) normally returns 0 on both FreeBSD and Redhat after having performed all sorts of sanity checks. The FreeBSD linux emulator returns EINVAL in such a case. Allowing signal 0 to be passed to kill will result in compatible behaviour. >How-To-Repeat: n/a >Fix: --- linux_signal.c.orig Tue Dec 15 00:36:31 1998 +++ linux_signal.c Tue Dec 15 00:36:14 1998 @@ -310,7 +310,7 @@ printf("Linux-emul(%d): kill(%d, %d)\n", p->p_pid, args->pid, args->signum); #endif - if (args->signum <= 0 || args->signum >= LINUX_NSIG) + if (args->signum < 0 || args->signum >= LINUX_NSIG) return EINVAL; tmp.pid = args->pid; tmp.signum = linux_to_bsd_signal[args->signum]; >Audit-Trail: >Unformatted: To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-bugs" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199812142339.PAA01250>