Source-Changes archive

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

CVS commit: [netbsd-5] src



Module Name:    src
Committed By:   riz
Date:           Sun Jul 17 15:36:05 UTC 2011

Modified Files:
        src/distrib/sets/lists/comp [netbsd-5]: mi
        src/lib/libc/sys [netbsd-5]: Makefile.inc extattr_get_file.2
        src/lib/libpuffs [netbsd-5]: dispatcher.c puffs.c puffs.h
        src/sys/fs/puffs [netbsd-5]: puffs_msgif.h puffs_vfsops.c puffs_vnops.c
        src/sys/kern [netbsd-5]: vfs_xattr.c vnode_if.c
        src/sys/sys [netbsd-5]: Makefile extattr.h vnode_if.h
        src/sys/ufs/ffs [netbsd-5]: ffs_vnops.c
        src/sys/ufs/ufs [netbsd-5]: ufs_extattr.c

Log Message:
Pull up following revision(s) (requested by manu in ticket #1645):
lib/libc/sys/Makefile.inc                       1.207 via patch
lib/libc/sys/extattr_get_file.2                 patch
lib/libpuffs/dispatcher.c                       1.34,1.36 via patch
lib/libpuffs/puffs.c                            1.107 via patch
lib/libpuffs/puffs.h                            1.115,1.118 via patch
sys/fs/puffs/puffs_msgif.h                      1.71,1.76 via patch
sys/fs/puffs/puffs_vfsops.c                     1.88 via patch
sys/fs/puffs/puffs_vnops.c                      1.145,1.154 via patch
sys/kern/vfs_xattr.c                            1.24-1.27 via patch
sys/kern/vnode_if.c                             1.87 via patch
sys/sys/Makefile                                1.133 via patch
sys/sys/extattr.h                               1.6 via patch
sys/sys/vnode_if.h                              1.81 via patch
sys/ufs/ffs/ffs_vnops.c                         patch
sys/ufs/ufs/ufs_extattr.c                       1.31,1.34 via patch

* support extended attributes
* bump major due to structure growth
* add some spare space
* remove ABI sillyness
Support extended attributes.
Fix multiple non compliances in our Linux-like extattr API, and make it
public so that it can be used.
Improve a bit listxattr(2). It attemps to list both system and user
extended attributes, and it faled if calling user did not have privilege
for reading system EA. Now we just lise user EA and skip system EA in
reading them is not allowed.
Fix bug introduced in previous commuit: Do not vrele() a vnode we did not
obtained.
Improve UFS1 extended attributes usability
- autocreate attribute backing file for new attributes
- autoload attributes when issuing extattrctl start
- when autoloading attributes, do not display garbage warning when looking
up entries that got ENOENT
Add a flag to VOP_LISTEXTATTR(9) so that the vnode interface can tell the
filesystem in which format extended attribute shall be listed.
There are currently two formats:
- NUL-terminated strings, used for listxattr(2), this is the default.
- one byte length-pprefixed, non NUL-terminated strings, used for
  extattr_list_file(2), which is obtanined by setting the
  EXTATTR_LIST_PREFIXLEN flag to VOP_LISTEXTATTR(9)
This approach avoid the need for converting the list back and forth, except
in libperfuse, since FUSE uses NUL-terminated strings, and the kernel may
have requested EXTATTR_LIST_PREFIXLEN.


To generate a diff of this commit:
cvs rdiff -u -r1.1201.2.15 -r1.1201.2.16 src/distrib/sets/lists/comp/mi
cvs rdiff -u -r1.196.2.1 -r1.196.2.2 src/lib/libc/sys/Makefile.inc
cvs rdiff -u -r1.3 -r1.3.32.1 src/lib/libc/sys/extattr_get_file.2
cvs rdiff -u -r1.32.4.1 -r1.32.4.2 src/lib/libpuffs/dispatcher.c
cvs rdiff -u -r1.92.4.5 -r1.92.4.6 src/lib/libpuffs/puffs.c
cvs rdiff -u -r1.108.4.4 -r1.108.4.5 src/lib/libpuffs/puffs.h
cvs rdiff -u -r1.65.20.2 -r1.65.20.3 src/sys/fs/puffs/puffs_msgif.h
cvs rdiff -u -r1.81.8.1 -r1.81.8.2 src/sys/fs/puffs/puffs_vfsops.c
cvs rdiff -u -r1.129.4.8 -r1.129.4.9 src/sys/fs/puffs/puffs_vnops.c
cvs rdiff -u -r1.19.6.1 -r1.19.6.2 src/sys/kern/vfs_xattr.c
cvs rdiff -u -r1.78 -r1.78.4.1 src/sys/kern/vnode_if.c
cvs rdiff -u -r1.114 -r1.114.4.1 src/sys/sys/Makefile
cvs rdiff -u -r1.4 -r1.4.74.1 src/sys/sys/extattr.h
cvs rdiff -u -r1.72 -r1.72.20.1 src/sys/sys/vnode_if.h
cvs rdiff -u -r1.104.4.7 -r1.104.4.8 src/sys/ufs/ffs/ffs_vnops.c
cvs rdiff -u -r1.21.14.2 -r1.21.14.3 src/sys/ufs/ufs/ufs_extattr.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