diff options
Diffstat (limited to 'libtrivfs/fsys-getroot.c')
-rw-r--r-- | libtrivfs/fsys-getroot.c | 9 |
1 files changed, 3 insertions, 6 deletions
diff --git a/libtrivfs/fsys-getroot.c b/libtrivfs/fsys-getroot.c index d91b9fa8..90a93d13 100644 --- a/libtrivfs/fsys-getroot.c +++ b/libtrivfs/fsys-getroot.c @@ -44,7 +44,6 @@ trivfs_S_fsys_getroot (struct trivfs_control *cntl, mach_port_t new_realnode; struct trivfs_protid *cred; struct iouser *user; - struct idvec *uvec, *gvec; if (!cntl) return EOPNOTSUPP; @@ -75,11 +74,9 @@ trivfs_S_fsys_getroot (struct trivfs_control *cntl, if (err) return err; - uvec = make_idvec (); - gvec = make_idvec (); - idvec_set_ids (uvec, uids, nuids); - idvec_set_ids (gvec, gids, ngids); - user = iohelp_create_iouser (uvec, gvec); /* XXX check return value? */ + err = iohelp_create_complex_iouser (&user, uids, nuids, gids, ngids); + if (err) + return err; /* Validate permissions. */ if (! trivfs_check_access_hook) |