Lines Matching refs:attrs
195 int set_attr(const char *file, struct hostfs_iattr *attrs, int fd) in set_attr() argument
201 if (attrs->ia_valid & HOSTFS_ATTR_MODE) { in set_attr()
203 if (fchmod(fd, attrs->ia_mode) != 0) in set_attr()
205 } else if (chmod(file, attrs->ia_mode) != 0) { in set_attr()
209 if (attrs->ia_valid & HOSTFS_ATTR_UID) { in set_attr()
211 if (fchown(fd, attrs->ia_uid, -1)) in set_attr()
213 } else if (chown(file, attrs->ia_uid, -1)) { in set_attr()
217 if (attrs->ia_valid & HOSTFS_ATTR_GID) { in set_attr()
219 if (fchown(fd, -1, attrs->ia_gid)) in set_attr()
221 } else if (chown(file, -1, attrs->ia_gid)) { in set_attr()
225 if (attrs->ia_valid & HOSTFS_ATTR_SIZE) { in set_attr()
227 if (ftruncate(fd, attrs->ia_size)) in set_attr()
229 } else if (truncate(file, attrs->ia_size)) { in set_attr()
240 if (attrs->ia_valid & ma) { in set_attr()
250 if (attrs->ia_valid & HOSTFS_ATTR_ATIME_SET) { in set_attr()
251 times[0].tv_sec = attrs->ia_atime.tv_sec; in set_attr()
252 times[0].tv_usec = attrs->ia_atime.tv_nsec / 1000; in set_attr()
254 if (attrs->ia_valid & HOSTFS_ATTR_MTIME_SET) { in set_attr()
255 times[1].tv_sec = attrs->ia_mtime.tv_sec; in set_attr()
256 times[1].tv_usec = attrs->ia_mtime.tv_nsec / 1000; in set_attr()
268 if (attrs->ia_valid & (HOSTFS_ATTR_ATIME | HOSTFS_ATTR_MTIME)) { in set_attr()
270 attrs->ia_atime = st.atime; in set_attr()
271 attrs->ia_mtime = st.mtime; in set_attr()