Lines Matching defs:attrs
205 int set_attr(const char *file, struct hostfs_iattr *attrs, int fd)
211 if (attrs->ia_valid & HOSTFS_ATTR_MODE) {
213 if (fchmod(fd, attrs->ia_mode) != 0)
215 } else if (chmod(file, attrs->ia_mode) != 0) {
219 if (attrs->ia_valid & HOSTFS_ATTR_UID) {
221 if (fchown(fd, attrs->ia_uid, -1))
223 } else if (chown(file, attrs->ia_uid, -1)) {
227 if (attrs->ia_valid & HOSTFS_ATTR_GID) {
229 if (fchown(fd, -1, attrs->ia_gid))
231 } else if (chown(file, -1, attrs->ia_gid)) {
235 if (attrs->ia_valid & HOSTFS_ATTR_SIZE) {
237 if (ftruncate(fd, attrs->ia_size))
239 } else if (truncate(file, attrs->ia_size)) {
250 if (attrs->ia_valid & ma) {
260 if (attrs->ia_valid & HOSTFS_ATTR_ATIME_SET) {
261 times[0].tv_sec = attrs->ia_atime.tv_sec;
262 times[0].tv_usec = attrs->ia_atime.tv_nsec / 1000;
264 if (attrs->ia_valid & HOSTFS_ATTR_MTIME_SET) {
265 times[1].tv_sec = attrs->ia_mtime.tv_sec;
266 times[1].tv_usec = attrs->ia_mtime.tv_nsec / 1000;
278 if (attrs->ia_valid & (HOSTFS_ATTR_ATIME | HOSTFS_ATTR_MTIME)) {
280 attrs->ia_atime = st.atime;
281 attrs->ia_mtime = st.mtime;