diff options
author | joyce mcintosh <Joyce.McIntosh@Sun.COM> | 2010-08-11 16:48:54 -0700 |
---|---|---|
committer | joyce mcintosh <Joyce.McIntosh@Sun.COM> | 2010-08-11 16:48:54 -0700 |
commit | fd9ee8b58485b20072eeef1310a88ff348d5e7fa (patch) | |
tree | 74e8f3fc5f5409cdc6be3dae5631f8d0c672260a /usr/src/uts/common/fs/xattr.c | |
parent | e2c5185af3c50d9510e5df68aa37abdc6c0d3aac (diff) | |
download | illumos-joyent-fd9ee8b58485b20072eeef1310a88ff348d5e7fa.tar.gz |
6972305 Preferred DC not selected after setting pdc via sharectl
6971047 smbd hang during FVT regression test
6711195 Sparc:Get error "Windows Explorer has stopped working" once click on Details fr Properties on Vista
PSARC/2009/464 Offline attribute
6972515 Offline attribute - PSARC 2009/464
PSARC/2010/037 Windows Sparse Attribute
6972519 Windows Sparse Attribute - PSARC 2010/037
6719444 [CLI] - idmap help's output is not consistent with man pages's
6975449 idmap test suite needs idmap_cache_get_data() from libidmap
6974351 OpenSSL still taking smbd down
--HG--
rename : usr/src/lib/libidmap/common/idmap_priv.h => usr/src/cmd/idmap/idmap/namemaps.h
Diffstat (limited to 'usr/src/uts/common/fs/xattr.c')
-rw-r--r-- | usr/src/uts/common/fs/xattr.c | 26 |
1 files changed, 26 insertions, 0 deletions
diff --git a/usr/src/uts/common/fs/xattr.c b/usr/src/uts/common/fs/xattr.c index 1657f25549..a1173e69f5 100644 --- a/usr/src/uts/common/fs/xattr.c +++ b/usr/src/uts/common/fs/xattr.c @@ -228,6 +228,12 @@ xattr_fill_nvlist(vnode_t *vp, xattr_view_t xattr_view, nvlist_t *nvlp, case F_GEN: XVA_SET_REQ(&xvattr, XAT_GEN); break; + case F_OFFLINE: + XVA_SET_REQ(&xvattr, XAT_OFFLINE); + break; + case F_SPARSE: + XVA_SET_REQ(&xvattr, XAT_SPARSE); + break; default: break; } @@ -320,6 +326,16 @@ xattr_fill_nvlist(vnode_t *vp, xattr_view_t xattr_view, nvlist_t *nvlp, attr_to_name(F_GEN), xoap->xoa_generation) == 0); } + if (XVA_ISSET_RTN(&xvattr, XAT_OFFLINE)) { + VERIFY(nvlist_add_boolean_value(nvlp, + attr_to_name(F_OFFLINE), + xoap->xoa_offline) == 0); + } + if (XVA_ISSET_RTN(&xvattr, XAT_SPARSE)) { + VERIFY(nvlist_add_boolean_value(nvlp, + attr_to_name(F_SPARSE), + xoap->xoa_sparse) == 0); + } } /* * Check for optional ownersid/groupsid @@ -697,6 +713,14 @@ xattr_file_write(vnode_t *vp, uio_t *uiop, int ioflag, cred_t *cr, XVA_SET_REQ(&xvattr, XAT_REPARSE); xoap->xoa_reparse = value; break; + case F_OFFLINE: + XVA_SET_REQ(&xvattr, XAT_OFFLINE); + xoap->xoa_offline = value; + break; + case F_SPARSE: + XVA_SET_REQ(&xvattr, XAT_SPARSE); + xoap->xoa_sparse = value; + break; default: break; } @@ -838,6 +862,8 @@ xattr_copy(vnode_t *sdvp, char *snm, vnode_t *tdvp, char *tnm, XVA_SET_REQ(&xvattr, XAT_AV_QUARANTINED); XVA_SET_REQ(&xvattr, XAT_CREATETIME); XVA_SET_REQ(&xvattr, XAT_REPARSE); + XVA_SET_REQ(&xvattr, XAT_OFFLINE); + XVA_SET_REQ(&xvattr, XAT_SPARSE); pdvp = gfs_file_parent(sdvp); error = VOP_GETATTR(pdvp, &xvattr.xva_vattr, 0, cr, ct); |