svn commit: r271489 - in head/sys: kern ofed/include/linux opencrypto sys

John Baldwin jhb at freebsd.org
Fri Sep 12 21:55:30 UTC 2014


On Friday, September 12, 2014 09:29:11 PM John Baldwin wrote:
> Author: jhb
> Date: Fri Sep 12 21:29:10 2014
> New Revision: 271489
> URL: http://svnweb.freebsd.org/changeset/base/271489
> 
> Log:
>   Fix various issues with invalid file operations:
>   - Add invfo_rdwr() (for read and write), invfo_ioctl(), invfo_poll(),
>     and invfo_kqfilter() for use by file types that do not support the
>     respective operations.  Home-grown versions of invfo_poll() were
>     universally broken (they returned an errno value, invfo_poll()
>     uses poll_no_poll() to return an appropriate event mask).  Home-grown
>     ioctl routines also tended to return an incorrect errno (invfo_ioctl
>     returns ENOTTY).
>   - Use the invfo_*() functions instead of local versions for
>     unsupported file operations.
>   - Reorder fileops members to match the order in the structure definition
>     to make it easier to spot missing members.
>   - Add several missing methods to linuxfileops used by the OFED shim
>     layer: fo_write(), fo_truncate(), fo_kqfilter(), and fo_stat().  Most
>     of these used invfo_*(), but a dummy fo_stat() implementation was
>     added.

For this last, if you managed to get a handle to one of these file descriptors
using any of the associated system calls (write(), fstat(), etc.) would 
trigger an instant-panic.  I don't think that non-root users can get to these
descriptors however.

-- 
John Baldwin


More information about the svn-src-head mailing list