diff -pur lufis-0.2.orig/lufis.c lufis-0.2/lufis.c --- lufis-0.2.orig/lufis.c 2004-03-09 19:09:57.000000000 +0100 +++ lufis-0.2/lufis.c 2005-01-02 13:35:24.164957456 +0100 @@ -268,11 +268,24 @@ static int lu_getattr(const char *path, { struct lufs_fattr fattr; int res; + long int option_uid; + long int option_gid; res = lu_getattr_native(path, &fattr); if(res < 0) return res; + // Take uid= and gid= vars when the filesystem returns 1 + if(fattr.f_uid == (uid_t) 1) { + lu_opt_getint(&lu_cfg, "MOUNT", "uid", &option_uid, 0); + fattr.f_uid = (uid_t) option_uid; + } + + if(fattr.f_gid == (gid_t) 1) { + lu_opt_getint(&lu_cfg, "MOUNT", "gid", &option_gid, 0); + fattr.f_gid = (gid_t) option_gid; + } + stbuf->st_mode = fattr.f_mode; stbuf->st_nlink = fattr.f_nlink; stbuf->st_uid = fattr.f_uid;