obj = yaffs_get_equivalent_obj(obj);
if (obj != NULL) {
obj->dirty = 1;
- obj->yst_atime = (u32) actime;
- obj->yst_mtime = (u32) modtime;
- obj->yst_ctime = (u32) time(NULL);
+ obj->yst_atime = actime;
+ obj->yst_mtime = modtime;
+ obj->yst_ctime = time(NULL);
} else {
errno = EIO;
rv = -1;
mode = S_IFLNK |
((S_IRWXU | S_IRWXG | S_IRWXO) & ~rtems_filesystem_umask);
- created_link = yaffs_create_symlink(parent_dir, name, mode,
+ created_link = yaffs_create_symlink(parent_dir, name, mode,
geteuid(), getegid(), target);
if (created_link != NULL) {
- // In RTEMS VFS, there is no filesytem-wide sync(), only per-file
- // flushes. Filesystem-wide sync is implemented by looping over all of
- // the open files and individually fsync()ing them. That's part of why
- // every close() in RTEMS-yaffs is accompanied by an implicit fsync().
- // There is no such close() call associated with the symlink's creation,
- // since it wasn't created via open(). Therefore, flush it immediately
- // instead.
- yaffs_flush_file(created_link, 0, 0, 0);
ret = 0;
} else {
errno = EINVAL;