Date: Fri, 28 Jun 2002 11:55:48 -0700 (PDT) From: Nate Lawson <nate@root.org> To: current@freebsd.org Cc: Andreas Gustafsson <gson@nominum.com> Subject: Re: kern/38527: /dev/random does not obey O_NONBLOCK flag (fwd) Message-ID: <Pine.BSF.4.21.0206281152560.25620-100000@root.org>
next in thread | raw e-mail | index | archive | help
I assume this change was made so devices that were booting without a keyboard didn't hang indefinitely. But I agree with Andreas -- shouldn't the usermode programs be changed, not the kernel interface? If someone has better reasons for this, please let us know and close the PR (as well as document it somewhere). -Nate ---------- Forwarded message ---------- Date: Fri, 28 Jun 2002 11:02:45 -0700 (PDT) From: Andreas Gustafsson <gson@nominum.com> To: Nate Lawson <nate@root.org> Cc: freebsd-gnats-submit@FreeBSD.org Subject: Re: kern/38527: /dev/random does not obey O_NONBLOCK flag Nate Lawson writes: > This behavior is intentional and was changed some time ago. If you want > to block on /dev/random waiting for bytes to be available, use > select/poll. You've got to be kidding. Why would you intentionally implement a behaviour that is a) gratuitously different from every other implementation of /dev/random b) gratuitously different from every other character device in the history of Unix by being nonblocking by default, c) not even correctly nonblocking, because when no data is available, read() on a nonblocking device is supposed to return -1 with errno=EWOULDBLOCK, but in the case of /dev/random, read() returns 0, and d) undocumented? -- Andreas Gustafsson, gson@nominum.com To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-current" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?Pine.BSF.4.21.0206281152560.25620-100000>