Date: Fri, 7 Mar 1997 16:44:34 +1100 From: Bruce Evans <bde@zeta.org.au> To: msmith@atrad.adelaide.edu.au, pius@ienet.com Cc: hackers@freebsd.org, mark@quickweb.com, sos@ravenock.cybercity.dk Subject: Re: Linux JDK on 2.2 Message-ID: <199703070544.QAA02103@godzilla.zeta.org.au>
index | next in thread | raw e-mail
>In linux_file.c there's this comment in the linux_fcntl function:
>
> case LINUX_F_SETOWN:
> case LINUX_F_GETOWN:
> /*
> * We need to route around the normal fcntl() for these calls,
> * since it uses TIOC{G,S}PGRP, which is too restrictive for
> * Linux F_{G,S}ETOWN semantics. For sockets, this problem
> * does not exist.
> */
>
>So, how are FreeBSD's F_{G,S}ETOWN semantics different from Linux's?
FreeBSD's F_{G,S}ETOWN/O_ASYNC implementation is completely broken:
- it should apply to open file instances, but actually applies to
devices.
- normal kill() permissions don't apply. Any process can send SIGIO
to any process using a socket.
- for ttys, the process group handling is tangled up with POSIX
POSIX group handling. The process group can only be set to that
of a session leader with the tty as its controlling terminal.
It is impossible to set the pgrp to a process instead of a group.
- there are some confusing double negatives to convert from negative
pids to positive process group numbers and back. ISTR that at least
one driver gets this wrong.
Bruce
help
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199703070544.QAA02103>
