2007-11-13 Thomas Schwinge * ops.c (complete_setattr): Adapt to ``struct stat'' changes. * xdr.c (encode_fattr): Likewise. 2006-03-15 Thomas Schwinge * loop.c (server_loop): Fix invalid lvalues. 2002-09-29 Marcus Brinkmann * loop.c (server_loop): Use memset instead bzero. (server_loop): Add parenthesis for post-decrement (even though it is only used as an lvalue here). Increment P after using it in the macro, not within. * ops.c (complete_setattr): Likewise. (op_setattr, op_read, op_write, op_create, op_symlink, op_mkdir, op_readdir, op_getport): Likewise. * xdr.c (encode_fattr): Likewise. (encode_data): Likewise. Also use memcpy instead bcopy. (encode_statfs): Likewise. (decode_name): Likewise. Also use memcpy instead bcopy. (encode_fhandle): Use memcpy instead bcopy. * cache.c (process_cred): Add parenthesis for post-decrement (even though it is only used as an lvalue here). Increment P after using it in the macro, not within. (idspec_lookup): Use memcpy, not bcopy. (lookup_cache_handle): Likewise. (create_cached_handle): Likewise. (check_cached_replies): Likewise. 2002-05-29 Roland McGrath * nfsd.h (struct proctable): [0] -> [], for newfangled GCC. 2002-05-08 Roland McGrath * main.c (main): Cast int to intptr_t before any_t. 2002-05-07 Roland McGrath * loop.c (server_loop): size_t -> socklen_t * cache.c (fh_hash): int -> intptr_t 2002-05-03 Roland McGrath * main.c: Include . * fsys.c: Likewise. 2002-03-23 James A. Morrison * fsys.c (init_filesystems): Use error, not fprintf. Use MACH_PORT_NULL explicitly. (write_filesystems): Use error, not fprintf. Use ERR, not errno. * main.c (main): Use error, not perror and exit. 2001-02-25 Roland McGrath * ops.c: Include for decls of built-ins. 2000-12-02 Marcus Brinkmann * ops.c (op_readlink): Before returning, check if the buffer pointed to by transp is ours. If not, munmap it. (op_read): Likewise for bp. (op_readdir): Don't alloca a buffer here. Instead initialize BUF and BUFSIZE to 0 and let the server (eh, MiG) do it. munmap BUF before returning. 2000-12-01 Marcus Brinkmann * cache.c (scan_creds): Move I inside for-statement. Replace inner for-loop with a while-loop. New variable NEXT_I set to I->NEXT, because we might free I. Set I to NEXT_I at end of while block. Move update of leastidlastuse inside if block, because otherwise we will constantly prevent ourself from scanning. (scan_fhs): Very much the same. (scan_replies): Likewise. Also free CR. (check_cached_reply): Make HASH value absolute (as XID can be negative, and thus the modulus). Initialize REFERENCES to 1. 2000-03-17 Thomas Bushnell, BSG * cache.c (create_cached_handle): Add comment. 1999-07-10 Roland McGrath * cache.c: Add #include for munmap decl. 1999-07-03 Thomas Bushnell, BSG * cache.c (create_cached_handle): Use munmap instead of vm_deallocate. 1998-12-20 Roland McGrath * loop.c (server_loop): Cosmetic. * nfsd.h: Include . (bool_t, enum_t): Remove typedefs. 1998-10-20 Roland McGrath * cache.c (scan_creds): Add braces to silence gcc warning. (scan_fhs): Likewise. (scan_replies): Likewise. Thu Sep 26 14:09:20 1996 Thomas Bushnell, n/BSG * nfsd.h (enum_t): New type. * cache.c: Don't inclide . Thu Sep 12 16:52:13 1996 Thomas Bushnell, n/BSG * Makefile (HURDLIBS): New variable. (nfsd): Delete special depedency. Tue Sep 3 14:15:50 1996 Thomas Bushnell, n/BSG * loop.c: Include "../nfs/mount.h" instead of "../nfs/rpcsvc/mount.h". * ops.c: Likewise. * nfsd.h: Include "../nfs/nfs-spec.h" instead of "../nfs/rpcsvc/nfs_prot.h". Wed Aug 14 13:46:45 1996 Thomas Bushnell, n/BSG * ops.c (nfstable): Renamed to nfs2table. * nfsd.h (nfstable): Likewise. * loop.c (server_loop): Reference nfs2table instead of nfstable. * nfsd.h, cache.c, ops.c, xdr.c: Use new names for things that have just been changed in ../nfs/rpcsvc/nfs_prot.h. * xdr.c (hurd_mode_to_nfs_type): New parm VERSION; all callers changed. (encode_fattr): New parm VERSION; all callers changed. * nfsd.h (encode_fattr): New parm VERSION. Tue Aug 13 14:38:36 1996 Thomas Bushnell, n/BSG * ops.c (op_create): Sun's NFS client implementation actually bombs if do do what RFC 1094 says to do in section 2.2.10. So don't pass O_EXCL, but do pass O_TRUNC. That's what NetBSD does. * ops.c (op_setattr): Fill in an fattr in reply. Mon Aug 12 11:15:15 1996 Thomas Bushnell, n/BSG * Makefile (installationdir): Include quotes in variable expansion here. * main.c: Build index_file better. * xdr.c (nfs_error_trans): New errors for IO and XDEV don't have prefixed E. * main.c (main): Cast second cthread_fork args. * nfsd.h (nfs_error_trans): Add new arg to prototype. Thu Aug 8 19:20:31 1996 Thomas Bushnell, n/BSG * xdr.c (nfs_error_trans): New parm `version'. All callers changed. If we are version 3, then return one of the new v3 error codes if appropriate. Wed Aug 7 11:39:31 1996 Thomas Bushnell, n/BSG * main.c (index_file): New var. (index_file_name): Initialize from index_file. (main): Don't initialize index_file_name here. * ops.c (op_null, op_getattr, op_setattr, op_lookup, op_readlink, count_read_buffersize, op_read, op_write, op_create, op_remove, op_rename, op_link, op_symlink, op_mkdir, op_rmdir, count_readdir_buffersize, op_statfs, op_mnt, op_getport): Add new parm `version'. * loop.c (server_loop): Supply VERSION to PROC->alloc_reply and PROC->func. * nfsd.h (struct procedure): Add new parm to `func' and `alloc_reply' members to specify protocol version. * ops.c (mounttable): Use op_null for MOUNTPROC_UMNT and MOUNTPROC_UMNTALL. * ops.c (op_create): Ignore most of setattr structure given. (op_mkdir): Likewise. (complete_setattr): Clean up and be less active when possible. * ops.c (op_readdir): Correctly end list of directory entries. * nfsd.h (authserver): New variable. n * main.c: Include . (main): Initialize AUTHSERVER. * cache.c: Include and . (create_cached_handle): Reauthenticate port before calling file_getfh. * fsys.c (init_filesystems): When setting NFSYS, it needs to be at least as big as INDEX + 1, and install the control port into the correct slot. (init_filesystems): When allocating or reallocating FSYSTABLE, make sure the new entries are zeroed. (enter_filesystem): Likewise. Tue Aug 6 13:18:40 1996 Thomas Bushnell, n/BSG * cache.c (create_cached_handle): Always call fsys_getfile when creating a new cached handle instead of relying upon the passed in port. * xdr.c (hurd_mode_to_nfs_mode): Specify octal number in octal notation. (encode_fattr): Bother filling in all the fields. * loop.c (server_loop): Don't attempt to call cache_handle_rele if C is null. * cache.c (fh_hash): Mod-ulize HASH before returning it. * cache.c (process_cred): Arrange to skip VERF field for non-AUTH_UNIX creds too. * loop.c (server_loop): Don't call skip_cred for the VERF here; process_cred does it for us. * xdr.c (skip_cred): Delete function. * nfsd.h (skip_cred): Delete decl. * cache.c (process_cred): After processing gid list, set P after it. Start gid processing loop at 0. * main.c (main): Detach one thread for pmap_udp_socket, and NTHREADS threads for main_udp_socket. * loop.c (server_loop): New parm `fd'; don't do select. Ignore errors that we get from recvfrom instead of processing the last message again. * nfsd.h (server_loop): New parm. * main.c (main): Stringify LOCALSTATEDIR; but for now just pound in /var. Call asprintf correctly.