Source-Changes archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

CVS commit: [netbsd-6-0] src



Module Name:    src
Committed By:   bouyer
Date:           Mon Apr 21 10:15:38 UTC 2014

Modified Files:
        src/external/cddl/osnet/dist/uts/common/fs/zfs [netbsd-6-0]:
            zfs_vfsops.c
        src/sys/coda [netbsd-6-0]: coda_vfsops.c
        src/sys/fs/adosfs [netbsd-6-0]: advfsops.c
        src/sys/fs/cd9660 [netbsd-6-0]: cd9660_vfsops.c
        src/sys/fs/efs [netbsd-6-0]: efs_vfsops.c
        src/sys/fs/filecorefs [netbsd-6-0]: filecore_vfsops.c
        src/sys/fs/hfs [netbsd-6-0]: hfs_vfsops.c
        src/sys/fs/msdosfs [netbsd-6-0]: msdosfs_vfsops.c
        src/sys/fs/nilfs [netbsd-6-0]: nilfs_vfsops.c
        src/sys/fs/ntfs [netbsd-6-0]: ntfs_vfsops.c
        src/sys/fs/ptyfs [netbsd-6-0]: ptyfs_vfsops.c
        src/sys/fs/puffs [netbsd-6-0]: puffs_vfsops.c
        src/sys/fs/smbfs [netbsd-6-0]: smbfs_vfsops.c
        src/sys/fs/sysvbfs [netbsd-6-0]: sysvbfs_vfsops.c
        src/sys/fs/tmpfs [netbsd-6-0]: tmpfs_vfsops.c
        src/sys/fs/udf [netbsd-6-0]: udf_vfsops.c
        src/sys/fs/union [netbsd-6-0]: union_vfsops.c
        src/sys/fs/unionfs [netbsd-6-0]: unionfs_vfsops.c
        src/sys/fs/v7fs [netbsd-6-0]: v7fs_vfsops.c
        src/sys/kern [netbsd-6-0]: vfs_syscalls.c
        src/sys/miscfs/nullfs [netbsd-6-0]: null_vfsops.c
        src/sys/miscfs/overlay [netbsd-6-0]: overlay_vfsops.c
        src/sys/miscfs/procfs [netbsd-6-0]: procfs_vfsops.c
        src/sys/miscfs/umapfs [netbsd-6-0]: umap_vfsops.c
        src/sys/nfs [netbsd-6-0]: nfs_vfsops.c
        src/sys/ufs/chfs [netbsd-6-0]: chfs_vfsops.c
        src/sys/ufs/ext2fs [netbsd-6-0]: ext2fs_vfsops.c
        src/sys/ufs/ffs [netbsd-6-0]: ffs_vfsops.c
        src/sys/ufs/lfs [netbsd-6-0]: lfs_vfsops.c
        src/sys/ufs/mfs [netbsd-6-0]: mfs_vfsops.c

Log Message:
Pull up following revision(s) (requested by maxv in ticket #1050):
        sys/ufs/chfs/chfs_vfsops.c: revision 1.11
        sys/fs/unionfs/unionfs_vfsops.c: revision 1.13
        sys/fs/nilfs/nilfs_vfsops.c: revision 1.16
        sys/ufs/mfs/mfs_vfsops.c: revision 1.107
        sys/fs/sysvbfs/sysvbfs_vfsops.c: revision 1.43
        sys/ufs/ffs/ffs_vfsops.c: revision 1.297
        sys/kern/vfs_syscalls.c: revision 1.478
        sys/kern/vfs_syscalls.c: revision 1.479
        sys/fs/puffs/puffs_vfsops.c: revision 1.110
        sys/fs/cd9660/cd9660_vfsops.c: revision 1.84
        sys/nfs/nfs_vfsops.c: revision 1.227
        sys/fs/v7fs/v7fs_vfsops.c: revision 1.10
        sys/ufs/ext2fs/ext2fs_vfsops.c: revision 1.180
        sys/miscfs/umapfs/umap_vfsops.c: revision 1.92
        sys/fs/filecorefs/filecore_vfsops.c: revision 1.76
        sys/miscfs/nullfs/null_vfsops.c: revision 1.88
        sys/fs/ptyfs/ptyfs_vfsops.c: revision 1.50
        sys/coda/coda_vfsops.c: revision 1.81
        sys/ufs/lfs/lfs_vfsops.c: revision 1.321
        sys/fs/tmpfs/tmpfs_vfsops.c: revision 1.59
        sys/fs/hfs/hfs_vfsops.c: revision 1.31
        sys/miscfs/overlay/overlay_vfsops.c: revision 1.61
        sys/fs/union/union_vfsops.c: revision 1.72
        sys/fs/ntfs/ntfs_vfsops.c: revision 1.94
        sys/kern/vfs_syscalls.c: revision 1.480
        sys/fs/efs/efs_vfsops.c: revision 1.25
        sys/kern/vfs_syscalls.c: revision 1.482
        sys/fs/msdosfs/msdosfs_vfsops.c: revision 1.107
        external/cddl/osnet/dist/uts/common/fs/zfs/zfs_vfsops.c: revision 1.12
        sys/miscfs/procfs/procfs_vfsops.c: revision 1.91
        sys/fs/smbfs/smbfs_vfsops.c: revision 1.100
        sys/fs/adosfs/advfsops.c: revision 1.70
        sys/fs/udf/udf_vfsops.c: revision 1.67
Limit check for 'data_len'. Otherwise a (un)privileged user can easily
panic the system by passing a huge size.
ok christos@
An (un)privileged user can easily make the kernel dereference a NULL
pointer.
The kernel allows 'data' to be NULL; it's the fs's responsibility to
ensure that it isn't NULL (if the fs actually needs data).
ok christos@
Some fs's - like kernfs - set their vfs_min_mount_data to zero. Add a check
to prevent an (un)privileged user from requesting a zero-sized allocation
(and thus a panic).
This thing is totally buggy: 'data_len' is modified by the fs, so calling
kmem_free with it while its value has changed since the kmem_alloc is far
from being a good idea.
If the kernel figures out that something mismatches, it will panic
(typically with kernfs).


To generate a diff of this commit:
cvs rdiff -u -r1.7 -r1.7.8.1 \
    src/external/cddl/osnet/dist/uts/common/fs/zfs/zfs_vfsops.c
cvs rdiff -u -r1.70 -r1.70.12.1 src/sys/coda/coda_vfsops.c
cvs rdiff -u -r1.63 -r1.63.10.1 src/sys/fs/adosfs/advfsops.c
cvs rdiff -u -r1.74 -r1.74.10.1 src/sys/fs/cd9660/cd9660_vfsops.c
cvs rdiff -u -r1.22 -r1.22.12.1 src/sys/fs/efs/efs_vfsops.c
cvs rdiff -u -r1.68 -r1.68.10.1 src/sys/fs/filecorefs/filecore_vfsops.c
cvs rdiff -u -r1.27.8.1 -r1.27.8.1.4.1 src/sys/fs/hfs/hfs_vfsops.c
cvs rdiff -u -r1.93.6.1 -r1.93.6.1.4.1 src/sys/fs/msdosfs/msdosfs_vfsops.c
cvs rdiff -u -r1.8 -r1.8.10.1 src/sys/fs/nilfs/nilfs_vfsops.c
cvs rdiff -u -r1.87 -r1.87.12.1 src/sys/fs/ntfs/ntfs_vfsops.c
cvs rdiff -u -r1.42.18.1 -r1.42.18.1.2.1 src/sys/fs/ptyfs/ptyfs_vfsops.c
cvs rdiff -u -r1.100.8.2 -r1.100.8.2.4.1 src/sys/fs/puffs/puffs_vfsops.c
cvs rdiff -u -r1.95 -r1.95.14.1 src/sys/fs/smbfs/smbfs_vfsops.c
cvs rdiff -u -r1.38.6.1 -r1.38.6.1.4.1 src/sys/fs/sysvbfs/sysvbfs_vfsops.c
cvs rdiff -u -r1.52 -r1.52.14.1 src/sys/fs/tmpfs/tmpfs_vfsops.c
cvs rdiff -u -r1.62 -r1.62.10.1 src/sys/fs/udf/udf_vfsops.c
cvs rdiff -u -r1.67 -r1.67.6.1 src/sys/fs/union/union_vfsops.c
cvs rdiff -u -r1.9 -r1.9.16.1 src/sys/fs/unionfs/unionfs_vfsops.c
cvs rdiff -u -r1.5.6.1 -r1.5.6.1.4.1 src/sys/fs/v7fs/v7fs_vfsops.c
cvs rdiff -u -r1.449.2.2 -r1.449.2.2.4.1 src/sys/kern/vfs_syscalls.c
cvs rdiff -u -r1.83 -r1.83.18.1 src/sys/miscfs/nullfs/null_vfsops.c
cvs rdiff -u -r1.56 -r1.56.18.1 src/sys/miscfs/overlay/overlay_vfsops.c
cvs rdiff -u -r1.86 -r1.86.12.1 src/sys/miscfs/procfs/procfs_vfsops.c
cvs rdiff -u -r1.86 -r1.86.18.1 src/sys/miscfs/umapfs/umap_vfsops.c
cvs rdiff -u -r1.220 -r1.220.14.1 src/sys/nfs/nfs_vfsops.c
cvs rdiff -u -r1.2 -r1.2.8.1 src/sys/ufs/chfs/chfs_vfsops.c
cvs rdiff -u -r1.162 -r1.162.10.1 src/sys/ufs/ext2fs/ext2fs_vfsops.c
cvs rdiff -u -r1.275.2.2 -r1.275.2.2.2.1 src/sys/ufs/ffs/ffs_vfsops.c
cvs rdiff -u -r1.293.2.1 -r1.293.2.1.4.1 src/sys/ufs/lfs/lfs_vfsops.c
cvs rdiff -u -r1.103 -r1.103.14.1 src/sys/ufs/mfs/mfs_vfsops.c

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.




Home | Main Index | Thread Index | Old Index