aboutsummaryrefslogtreecommitdiff
path: root/nfs/ops.c
Commit message (Collapse)AuthorAgeFilesLines
* 2000-12-26 Neal H Walfield <neal@cs.uml.edu>Marcus Brinkmann2001-01-301-36/+150
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * cache.c: Change cache/hash table size to 509, a prime. Use memcpy/memcmp not bcopy/bcmp. Verify return value from malloc and check the result of rpc transaction _and_ do not act if failed. * main.c: Correct the wording of the help messages. Do not bother initializing global variable to 0. Use memcpy/memcmp not bcopy/bcmp. Verify return value from malloc and check the result of rpc transaction _and_ do not act if failed. * mount.c: Check return values of initialize_rpc. Use memcpy/memcmp not bcopy/bcmp. Verify return value from malloc and strdup. Correct comments. (mount_root): Check result of connect. Handle errors consistently. Reverse loops that are if (! c) {} else when appropriate. * mount.h: Protect header with #ifdef. * name-cache.c: Correct dangerous NPARTIALS macro. Use memcpy/memcmp not bcopy/bcmp. (find_cache): Use PARTIAL_THRESH, not the constant. * nfs-spec.h: Protect header with #ifdef. * nfs.c: Use memcpy/memcmp not bcopy/bcmp. * nfs.h: Likewise. * ops.c (netfs_attempt_mkdir): Check return values of initialize_rpc. Use memcpy/memcmp not bcopy/bcmp. Verify return value from malloc and check the result of rpc transaction _and_ do not act if failed. (netfs_attempt_link): Unlock the directory before the rpc transaction. Check the result of rpc transaction _and_ do not act if failed. * pager.c: Remove, we do not use it. * rpc.c: Use memcpy/memcmp not bcopy/bcmp. Verify return value from malloc and check the result of rpc transaction _and_ do not act if failed. (initialize_rpc): Use AUTH_NONE, not the depreciated AUTH_NULL. Return sane values on failure. (generate_xid): Make inline. (link_rpc): New function. Complements unlink_rpc. (conduct_rpc): Use link_rpc. (rpc_receive_thread): Reroll to a single loop.
* 2000-11-26 Marcus Brinkmann <marcus@gnu.org>Marcus Brinkmann2000-11-261-4/+6
| | | | | | * ops.c (netfs_attempt_mkdir): Add casts -1 -> (struct iouser *) -1 to silence gcc warning. (netfs_attempt_create_file): Likewise.
* 1999-07-09 Thomas Bushnell, BSG <tb@mit.edu>Thomas Bushnell1999-07-111-1/+1
| | | | | * ops.c (netfs_get_dirents): Use mmap instead of vm_allocate. * pager.c (pager_read_page): Likewise.
* 1999-07-03 Thomas Bushnell, BSG <tb@mit.edu>Thomas Bushnell1999-07-031-2/+2
| | | | | * ops.c (netfs_get_dirents): Use munmap instead of vm_deallocate. * pager.c (pager_read_page): Likewise.
* 1999-02-01 Mark Kettenis <kettenis@phys.uva.nl>Thomas Bushnell1999-02-031-3/+4
| | | | | * ops.c: Include <maptime.h>. (netfs_attempt_utimes): Fix various typo's.
* Sun Jan 31 18:39:09 1999 Thomas Bushnell, BSG <tb@mit.edu>Thomas Bushnell1999-01-311-1/+14
| | | | | | | | * nfs.c (xdr_encode_sattr_times): Convert nanoseconds to microseconds correctly. * ops.c (netfs_attempt_utimes): Handle new possibility that ATIME or MTIME might be null.
* 1999-01-22 Roland McGrath <roland@baalperazim.frob.com>Roland McGrath1999-01-241-133/+129
| | | | | * ops.c (netfs_attempt_link): Remove major, minor macro definitions. * nfs.c (xdr_decode_fattr): Remove makedev macro definition.
* Wed Aug 20 14:31:03 1997 Thomas Bushnell, n/BSG <thomas@gnu.ai.mit.edu>Thomas Bushnell1997-08-201-2/+39
| | | | | * ops.c (netfs_attempt_link): Implement EXCL == 0 case. (netfs_attempt_rename): Implement EXCL != 0 case.
* Wed Aug 6 15:23:03 1997 Thomas Bushnell, n/BSG <thomas@gnu.ai.mit.edu>Thomas Bushnell1997-08-071-6/+16
| | | | | | | | | | | | * ops.c (netfs_attempt_unlink): Purge cache-held references *before* counting live references. Use new function. * name-cache.c (purge_lookup_cache_node): New function. * nfs.h (purge_lookup_cache_node): New decl. * cache.c (netfs_node_norefs): Don't do delete RPC here, fork off a separate thread to do it. (struct fnd): New type. (forked_node_delete): New function.
* Tue Jul 29 15:38:15 1997 Thomas Bushnell, n/BSG <thomas@gnu.ai.mit.edu>Thomas Bushnell1997-07-291-3/+46
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * name-cache.c (check_lookup_cache): Use name_cache_neg_timeout in preference to name_cache_timeout for negative hits. * nfs.h (name_cache_neg_timeout): New variable. * main.c (DEFAULT_NAME_CACHE_NEG_TIMEOUT): New macro. (name_cache_neg_timeout): Initialize new variable. (OPT_NCACHE_NEG_TO): New option key. (common_options): Add --name-cache-neg-timeout switch. (parse_common_opt): Process OPT_NCACHE_NEG_TO option key. * ops.c (netfs_attempt_lookup): Do cast of -1 correctly to match check_lookup_cache and ANSI C rules. * name-cache.c (check_lookup_cache): Unlock DIR correctly before returning a negative cache hit. * rpc.c (rpc_receive_thread): Don't print "dropping reply" messages any more. * ops.c (netfs_attempt_lookup): Cash all lookups, both positive and negative. (netfs_attempt_mkdir): Purge cache before creating directory entry. (netfs_attempt_link): Likewise. (netfs_attempt_create_file): Likewise. * ops.c (netfs_attempt_lookup): Pass correct node to enter_lookup_cache as the child. Thu Jul 24 13:15:56 1997 Thomas Bushnell, n/BSG <thomas@gnu.ai.mit.edu> * name-cache.c: New file. * ops.c (netfs_attempt_lookup): Check lookup cache before trying RPC. After successful lookup, make cache entry. (netfs_attempt_unlink): Purge cache before doing operation. (netfs_attempt_rmdir): Likewise. (netfs_attempt_rename): Purge cache for both names before operation. * nfs.h (enter_lookup_cache, purge_lookup_cache, check_lookup_cache): New prototypes. * Makefile (SRCS): Add name-cache.c. * nfs.h (name_cache_timeout): New variable. * main.c (DEFAULT_NAME_CACHE_TIMEOUT): New macro. (name_cache_timeout): Initialize new variable. (OPT_NCACHE_TO): New option key. (common_options): Add --name-cache-timeout switch. (parse_common_opt): Process OPT_NCACHE_TO option key. * cache.c (lookup_fhandle): Don't parse NFS XDR format, instead take a length arg. Return void. All callers changed to use new function xdr_decode_fhandle. * nfs.c (xdr_decode_fhandle): New function. * nfs.h (xdr_decode_fhandle): New prototype. (lookup_fhandle): Update prototype.
* (netfs_validate_stat):Miles Bader1997-06-201-2/+0
| | | | Don't clear NP->istranslated.
* Wed May 21 12:07:24 1997 Thomas Bushnell, n/BSG <thomas@gnu.ai.mit.edu>Thomas Bushnell1997-05-211-1/+1
| | | | | * ops.c (netfs_attempt_create_file): Only attempt chown if the create succeeded.
* *** empty log message ***Thomas Bushnell1997-05-201-1/+1
|
* *** empty log message ***Thomas Bushnell1997-05-201-4/+5
|
* *** empty log message ***Thomas Bushnell1997-05-201-4/+4
|
* Tue May 20 15:35:39 1997 Thomas Bushnell, n/BSG <thomas@gnu.ai.mit.edu>Thomas Bushnell1997-05-201-5/+36
| | | | | | | | | * nfs.c (xdr_encode_create_state): New arg OWNER. Set the owner of the new file to it. All callers changed. * nfs.h (xdr_encode_create_state): Update prototype. * ops.c (netfs_attempt_mkdir): If owner didn't get set correctly (some servers ignore it) then try a chown. (netfs_attempt_create_file): Likewise.
* Fix compilation error.Thomas Bushnell1997-04-161-1/+1
|
* Thu Apr 10 13:25:12 1997 Thomas Bushnell, n/BSG <thomas@gnu.ai.mit.edu>Thomas Bushnell1997-04-101-0/+17
| | | | | * ops.c (netfs_attempt_set_size): Short circuit EACCES to cover one important case.
* Wed Feb 12 13:53:42 1997 Thomas Bushnell, n/BSG <thomas@gnu.ai.mit.edu>Thomas Bushnell1997-02-121-2/+2
| | | | | | * ops.c (netfs_check_open_permissions): If this is a new node, don't report an error here. (Though, later I/O requests still might fail.)
* Mon Nov 18 17:01:38 1996 Thomas Bushnell, n/BSG <thomas@gnu.ai.mit.edu>Thomas Bushnell1996-11-181-86/+52
| | | | | | | | | | | | | | | | | | * ops.c (guess_mode_use): Delete function. (netfs_report_access): Use fshelp_access instead of guess_mode_use. Change return type. Sat Nov 16 18:24:55 1996 Thomas Bushnell, n/BSG <thomas@gnu.ai.mit.edu> * Makefile (SRCS): Remove `cred.c'. * cred.c: Delete file. * nfs.h (struct netcred): Delete type. (cred_has_uid, cred_has_gid): Delete functions. (nfs_initialize_rpc): netcred arg now iouser. * ops.c: Change struct netcred to struct iouser throughout. * pager.c: Likewise. * cache.c (netfs_node_norefs): Likewise. * nfs.c (nfs_initialize_rpc): Convert use of netcred to iouser.
* (netfs_attempt_statfs):Miles Bader1996-10-311-9/+6
| | | | | | | Convert incoming numbers from network to host byte order. Don't convert sizes from IOSIZE to BSIZE units. Return BSIZE in f_bsize field, not IOSIZE. Fill in f_fsid field.
* *** empty log message ***Thomas Bushnell1996-10-031-1/+11
|
* *** empty log message ***Thomas Bushnell1996-09-041-122/+409
|
* *** empty log message ***Thomas Bushnell1996-08-151-10/+5
|
* *** empty log message ***Thomas Bushnell1996-08-141-26/+45
|
* *** empty log message ***Thomas Bushnell1996-08-131-0/+33
|
* *** empty log message ***Thomas Bushnell1996-08-011-1/+1
|
* (netfs_attempt_link) [case SYMLINK]: Include directory handle as anMichael I. Bushnell1996-07-041-0/+1
| | | | RPC arg.
* (netfs_attempt_unlink): Add new arg in call to netfs_attempt_link.Michael I. Bushnell1996-05-141-1/+1
|
* (netfs_attempt_rename, netfs_attempt_link): New parm EXCL, but don'tMichael I. Bushnell1996-05-101-2/+9
| | | | implement the hard case yet.
* (netfs_attempt_statfs): Expect and fill in new statfs buffer.Michael I. Bushnell1996-05-101-10/+13
|
* (guess_mode_use): New function.Michael I. Bushnell1996-04-111-1/+76
| | | | | (netfs_check_open_permissions, netfs_report_access): Replace old clever versions with less obtrusive one.
* (netfs_report_access): Oops.Michael I. Bushnell1996-04-021-9/+9
|
* (netfs_report_access): Never mind on new calling conv.Michael I. Bushnell1996-04-021-23/+17
|
* (netfs_report_access): Support new calling convention wrt TYPES.Michael I. Bushnell1996-04-021-19/+23
|
* (netfs_report_access): Bother to initialize LEN.Michael I. Bushnell1996-04-021-1/+1
|
* (netfs_report_access): Make sure netfs_attempt_read return aMichael I. Bushnell1996-03-291-0/+2
| | | | reasonable LEN.
* (netfs_attempt_write): Truncate to THISAMT instead of AMT.Michael I. Bushnell1996-03-291-3/+3
|
* *** empty log message ***Michael I. Bushnell1996-03-191-42/+1183
|
* entered into RCSMichael I. Bushnell1994-08-181-1/+40
|
* Initial revisionMichael I. Bushnell1994-08-171-0/+37