aboutsummaryrefslogtreecommitdiff
path: root/libdiskfs/dir-lookup.c
Commit message (Collapse)AuthorAgeFilesLines
* 2002-03-25 Neal H Walfield <neal@cs.uml.edu>Neal H. Walfield2002-03-261-10/+19
| | | | | | | | | | | | | | | | | | | | | | * peropen-make.c (diskfs_make_peropen): Instead of returning the peropen, return as error_t and return the peropen in the new parameter *PPO. * diskfs.h (diskfs_make_peropen): Change declaration to reflect new semantics. * boot-start.c (diskfs_start_bootstrap): Check the return value of diskfs_make_peropen using the new semantics. (diskfs_S_exec_startup_get_info): Likewise. (diskfs_execboot_fsys_startup): Likewise. (diskfs_S_fsys_init): Likewise. * dir-lookup.c (diskfs_S_dir_lookup): Likewise. * dir-mkfile.c (diskfs_S_dir_mkfile): Likewise. * file-exec.c (diskfs_S_file_exec): Likewise. * file-reparent.c (diskfs_S_file_reparent): Likewise. * fsys-getfile.c (diskfs_S_fsys_getfile): Likewise. * fsys-getroot.c (diskfs_S_fsys_getroot): Likewise. * trans-callback.c (_diskfs_translator_callback2_fn): Likewise. * init-startup.c (diskfs_startup_diskfs): Likewise.
* 2002-01-03 Roland McGrath <roland@frob.com>Roland McGrath2002-01-041-1/+1
| | | | | | * dir-lookup.c (diskfs_S_dir_lookup): Clear S_ITRANS bits in MODE. * dir-mkdir.c (diskfs_S_dir_mkdir): Likewise. * dir-mkfile.c (diskfs_S_dir_mkfile): Likewise.
* 2001-12-08 Roland McGrath <roland@frob.com>Roland McGrath2001-12-081-7/+16
| | | | | | | * dir-lookup.c (diskfs_S_dir_lookup): Append trailing / to RETRYNAME returned for absolute symlink when MUSTBEDIR is set. Reported by Moritz Schulte <moritz@duesseldorf.ccc.de>. Also, bcopy -> memcpy; avoid strcat.
* 2001-10-30 Marcus Brinkmann <marcus@gnu.org>Marcus Brinkmann2001-10-291-8/+3
| | | | | | | * dir-lookup.c (diskfs_S_dir_lookup): When looking up the next pathname component, remove assertion for DS and allocate DS if 0. Allow creation of files through symlink with non-existant target. From Roland McGrath <roland@frob.com>.
* 2001-06-19 Roland McGrath <roland@frob.com>Roland McGrath2001-08-021-17/+34
| | | | * dir-lookup.c (diskfs_S_dir_lookup): Handle symlinks to "".
* 2001-04-01 Neal H Walfield <neal@cs.uml.edu>Roland McGrath2001-06-161-5/+9
| | | | | | | | | | | | | | | | * dir-lookup.c (diskfs_S_dir_lookup): Use iohelp_create_empty_iouser. * fsys-getfile.c (diskfs_S_fsys_getfile): Use iohelp_create_complex_iouser. * io-reauthenticate.c (diskfs_S_io_reauthenticate): Use new iohelp_reauth semantics. * io-restrict-auth.c (diskfs_S_io_restrict_auth): Use new iohelp_create_iouser semantics. * protid-make.c (diskfs_finish_protid): Use iohelp_create_simple_iouser and new iohelp_dup_iouse semantics. * trans-callback.c (_diskfs_translator_callback2_fn): Use iohelp_create_simple_iouser.
* 2001-03-28 Marcus Brinkmann <marcus@gnu.org>Marcus Brinkmann2001-03-281-3/+5
| | | | | | | | | * dir-lookup.c (diskfs_S_dir_lookup): New variable USER. Store new iouser in that variable and free it after creating the protid for DIRPORT. * trans-callback.c (_diskfs_translator_callback2_fn): Likewise. * io-restrict-auth.c (diskfs_S_io_restrict_auth): Likewise. * io-reauthenticate.c (diskfs_S_io_reauthenticate): Likewise.
* 2000-03-17 Roland McGrath <roland@baalperazim.frob.com>Roland McGrath2000-03-171-3/+1
| | | | * dir-lookup.c (diskfs_S_dir_lookup): Use ports_get_send_right.
* 2000-01-25 Roland McGrath <roland@baalperazim.frob.com>Roland McGrath2000-01-251-2/+4
| | | | | * dir-lookup.c (diskfs_S_dir_lookup): Follow symlink despite flags if MUSTBEDIR is set (i.e. there was a trailing slash).
* 1999-01-22 Roland McGrath <roland@baalperazim.frob.com>Roland McGrath1999-01-241-5/+1
| | | | | * file-set-trans.c: Remove makedev, major, minor macro definitions. * dir-lookup.c: Likewise.
* 1998-04-04 Roland McGrath <roland@baalperazim.frob.com>Roland McGrath1998-10-241-36/+53
| | | | | * dir-lookup.c (diskfs_S_dir_lookup): Treat a shadow_root with null shadow_root_parent as a "virtual root".
* 1998-07-20 Roland McGrath <roland@baalperazim.frob.com>Roland McGrath1998-07-201-24/+24
| | | | | * dir-lookup.c (diskfs_S_dir_lookup: short_circuited_callback1): Fix type of arg `argz_len' to use size_t *.
* Tue Jul 14 16:27:00 1998 Thomas Bushnell, n/BSG <tb@mit.edu>Thomas Bushnell1998-07-141-3/+1
| | | | | | * dir-lookup.c (diskfs_S_dir_lookup): Don't require the node to be a directory in the null pathname case. (Thus reverting one of the changes of June 15, 1994.)
* (diskfs_S_dir_lookup):Miles Bader1997-02-211-3/+4
| | | | Allow symlinks to be opened for O_READ.
* (diskfs_S_dir_lookup):Miles Bader1997-02-141-34/+37
| | | | | | | | | | | | | Pass a prototype peropen instead of the dotdotport and depth to diskfs_make_peropen. Use DIRCRED->po as the cookie for fshelp_fetch_root instead of a local structure. Get rid of DEPTH variable. Get rid of depth parameters to diskfs_lookup. Deal properly with EAGAIN return from diskfs_lookup. Replace references to dotdotport with root_parent. Remove O_EXLOCK & O_SHLOCK from FLAGS mask, now that they're included in O_HURD.
* (diskfs_S_dir_lookup):Miles Bader1997-02-061-7/+16
| | | | | | | | Add DEPTH variable. Supply DEPTH & NEW_DEPTH arguments to diskfs_lookup. Supply DEPTH argument diskfs_make_peropen. Pass new type of cookie2 to fshelp_fetch_root, as expected by _diskfs_translator_callback2.
* (diskfs_S_dir_lookup):Miles Bader1996-11-191-2/+2
| | | | Use S_IPTRANS bit in dn_stat st_mode field rather than istranslated field.
* Fri Nov 15 14:06:16 1996 Thomas Bushnell, n/BSG <thomas@gnu.ai.mit.edu>Thomas Bushnell1996-11-181-1/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | * protid-make.c (diskfs_finish_protid): Fix typo. * file-chown.c (diskfs_S_file_chown): Look for UID, not CRED in the uid set. * dir-lookup.c (diskfs_S_dir_lookup): Make the unauthenticated port correctly. Thu Nov 14 13:07:37 1996 Thomas Bushnell, n/BSG <thomas@gnu.ai.mit.edu> * dir-init.c (diskfs_init_dir): New vars VEC and USER; fabricate LOOKUPCRED to correspond to new structure definitions. * io-restrict-auth.c (diskfs_S_io_restrict_auth): Declare I and add a missing semicolon. * fsys-getroot.c (diskfs_S_fsys_getroot): Eliminate PSEUDOCRED entirely. Fix unrelated typo. * file-chauthor.c (dithkfth_TH_file_chauthor): Fix first arg in call to fthhelp_ithowner. Tue Nov 12 22:45:07 1996 Thomas Bushnell, n/BSG <thomas@gnu.ai.mit.edu> * diskfs.h: Correctly close comment.
* Thu Nov 7 01:03:11 1996 Thomas Bushnell, n/BSG <thomas@gnu.ai.mit.edu>Thomas Bushnell1996-11-131-10/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * protid-rele.c (diskfs_protid_rele): Free CRED->user. Wed Nov 6 17:55:17 1996 Thomas Bushnell, n/BSG <thomas@gnu.ai.mit.edu> * diskfs.h (diskfs_isuid, diskfs_groupmember, diskfs_isowner, diskfs_access, diskfs_checkdirmod): Delete functions. * fsys-getroot.c (diskfs_S_fsys_getroot): Replace PSEUDOCRED with a real iouser and specify that in the relevant calls. * io-restrict-auth.c (diskfs_S_io_restrict_auth): Reworked to use idvecs. * file-chmod.c (diskfs_S_file_chmod): diskfs_isuid -> idvec_contains. * file-chown.c (diskfs_S_file_chown): Likewise. * file-getcontrol.c (diskfs_S_file_getcontrol): Likewise. * file-chmod.c (diskfs_S_file_chmod): diskfs_groupmember -> idvec_contains. * file-chown.c (diskfs_S_file_chown): Likewise. * node-create.c (diskfs_create_node): Likewise. * dir-lookup.c (diskfs_S_dir_lookup): diskfs_isowner -> fshelp_isowner. * file-chflags.c (diskfs_S_file_chflags): Likewise. * file-chmod.c (diskfs_S_file_chmod): Likewise. * file-chown.c (diskfs_S_file_chown): Likewise. * file-get-transcntl.c (diskfs_S_file_get_translator_cntl): Likewise. * file-set-trans.c (diskfs_S_file_set_translator): Likewise. * file-utimes.c (diskfs_S_file_utimes): Likewise. * fsys-getroot.c (diskfs_S_fsys_getroot): Likewise. * lithp.h (dithkfth_ithowner): Deleted macro. (fthhelp_ithowner, uther): New macros. * file-chauthor.c (dithkfth_TH_file_chauthor): dthkfth_ithowner -> fthhelp_ithowner. * dir-lookup.c (diskfs_S_dir_lookup): diskfs_access -> fshelp_access. * dir-mkfile.c (diskfs_S_dir_mkfile): Likewise. * file-access.c (diskfs_S_file_check_access): Likewise. * file-exec.c (diskfs_S_file_exec): Likewise (in dead code). * fsys-getroot.c (diskfs_S_fsys_getroot): Likewise. * ifsock.c (diskfs_S_ifsock_getsockaddr): Likewise. * lookup.c (diskfs_lookup): Likewise. (diskfs_lookup): diskfs_checkdirmod -> fshelp_checkdirmod. * dir-lookup.c (diskfs_S_dir_lookup): New arg format for fshelp_fetch_root. * fsys-getroot.c (diskfs_S_fsys_getroot): Likewise. * diskfs.h, protid-make.c (diskfs_create_protid): Delete args `uids', `gids', `nuids', and `ngids'. Replace with new arg `user'. All callers changed. (diskfs_finish_protid): Likewise. * file-inv-trans.c (diskfs_S_file_invoke_translator): Use CRED->user instead of old fields. * io-restrict-auth.c (diskfs_S_io_restrict_auth): Likewise. * node-create.c (diskfs_create_node): Likewise. * file-exec.c (diskfs_S_file_exec): Likewise. Use idvec_merge instead of idvec_merge_ids, now that it's convenient. * io-reauthenticate.c (diskfs_S_io_reauthenticate): Use new iohelp_reauthenticate. Tue Nov 5 21:10:18 1996 Thomas Bushnell, n/BSG <thomas@gnu.ai.mit.edu> * diskfs.h: Include <idvec.h>. (struct protid): Delete members `uids', `gids', `nuids' and `ngids'. New member `user'.
* (diskfs_S_dir_lookup):Miles Bader1996-10-121-9/+10
| | | | | | | Temporarily add O_EXLOCK and O_SHLOCK to the set of retained flags, until they get added to O_HURD. Turn off OPENONLY_STATE_MODES bits in the flags we pass to diskfs_make_peropen, not everything *but* them!
* (diskfs_S_dir_lookup):Miles Bader1996-10-111-7/+8
| | | | Free NEWPI if we get an error trying to lock it.
* (diskfs_S_dir_lookup):Miles Bader1996-10-101-2/+3
| | | | | | Frob lock in NEWPI->po, not PO. <sys/file.h>: New include.
* *** empty log message ***Thomas Bushnell1996-10-101-3/+14
|
* <stdio.h>:Miles Bader1996-09-231-2/+4
| | | | New include.
* (diskfs_S_dir_lookup): Use diskfs_check_readonly instead of diskfs_readonly.Michael I. Bushnell1996-06-241-1/+1
|
* (diskfs_S_dir_lookup): Don't check cache here.Michael I. Bushnell1996-03-201-18/+1
|
* (diskfs_S_dir_lookup): Check cache before normal diskfs_lookup call.Michael I. Bushnell1996-03-191-1/+18
|
* (diskfs_S_dir_lookup): Don't leak a send right to the anonymous handle on DNPMiles Bader1996-03-161-0/+4
| | | | when calling fetch_root.
* (diskfs_S_dir_lookup): Revert last change.Michael I. Bushnell1996-02-071-2/+1
|
* (diskfs_S_dir_lookup): Make the new peropen we'll pass as dotdot to theMiles Bader1996-02-061-1/+3
| | | | fetch_root with the same flags as DIRCRED->po.
* (diskfs_S_dir_lookup): Use diskfs_create_protid instead ofMiles Bader1996-01-271-12/+18
| | | | diskfs_make_protid, and deal with an error return.
* (diskfs_S_dir_lookup): Fix various typos.Miles Bader1995-11-061-7/+8
| | | | | (short_circuited_callback1): Dereference ARGZ & ARGZ_LEN. Include <hurd/paths.h>
* (diskfs_S_dir_lookup): Add new callback arg to fshelp_fetch_root call.Miles Bader1995-11-021-28/+8
| | | | | Change short_circuited_callback1 to reflect the split into two callbacks (we use the global diskfs callback for the other).
* (diskfs_S_dir_lookup): Deal correctly with short-circuited translators thatMiles Bader1995-10-311-5/+72
| | | | | diskfs doesn't implement itself. (major, minor): New macros -- temporarily here until libc exports them.
* (diskfs_S_dir_lookup): Free initial references created byMichael I. Bushnell1995-07-211-11/+13
| | | | diskfs_make_protid.
* (diskfs_S_dir_lookup): Examine the active translator on NP, not onMichael I. Bushnell1995-07-211-2/+1
| | | | diskfs_root_node, to see if translator usage is necessary.
* (diskfs_S_dir_lookup): Correctly parethenize O_NOTRANS flags test.Michael I. Bushnell1995-06-221-1/+1
|
* (diskfs_S_dir_lookup): Fix typos.Michael I. Bushnell1995-06-191-1/+2
|
* (diskfs_S_dir_lookup): Use new translator startup interface.Michael I. Bushnell1995-06-191-129/+38
|
* (diskfs_S_dir_lookup): Initialize GIDS, NUIDS, and NGIDS to avoidMichael I. Bushnell1995-06-091-2/+2
| | | | warning.
* (diskfs_S_dir_lookup): Typo.Michael I. Bushnell1995-03-171-2/+2
|
* (diskfs_S_dir_lookup): Implement diskfs_synchronous.Michael I. Bushnell1995-03-171-1/+6
|
* entered into RCSMichael I. Bushnell1994-09-231-1/+1
|
* Formerly dir-lookup.c.~8~Michael I. Bushnell1994-09-161-4/+1
|
* Formerly dir-lookup.c.~7~Roland McGrath1994-09-121-6/+7
|
* Formerly dir-lookup.c.~6~Michael I. Bushnell1994-09-091-1/+2
|
* Formerly dir-lookup.c.~5~Michael I. Bushnell1994-09-071-11/+20
|
* Formerly dir-lookup.c.~4~Michael I. Bushnell1994-09-061-84/+115
|
* Formerly dir-lookup.c.~3~Michael I. Bushnell1994-09-011-3/+6
|
* Formerly dir-lookup.c.~2~Michael I. Bushnell1994-08-301-3/+2
|