summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2001-01-142001-01-14 Roland McGrath <roland@frob.com>Roland McGrath
* encode.c (too_big): New static function. (store_std_leaf_encode): Use it to return EOVERFLOW if a run does not fit in an int.
2001-01-14trans/Marcus Brinkmann
2001-01-13 Marcus Brinkmann <marcus@gnu.org> * Makefile (SRCS): Add streamio.c (streamio): Add dependency on device_replyServer.o. Other dependencies identical to those for crash and password. (OBJS): Add missing object files to list (crashServer.o crash_replyUser.o msgServer.o device_replyServer.o). * storeio.c: New file by OKUJI Yoshinori. sutils/ 2001-01-14 Marcus Brinkmann <marcus@gnu.org> * MAKEDEV.sh (mkdev: klog): New device, using /hurd/streamio kmsg. (mkdev: std): Add klog to the standard list.
2001-01-11The below change is preperation for a new mach-defpager interface by Roland.Marcus Brinkmann
2001-01-11 Marcus Brinkmann <marcus@gnu.org> * def_pager_setup.c: Include <mach/mig_errors.h> and <mach/default_pager_types.h>. (default_pager_paging_storage): New stub.
2001-01-11hurd/Marcus Brinkmann
2001-01-07 Marcus Brinkmann <marcus@gnu.org> * ioctl_types.h: Include <net/if.h>, define types sockaddr_t and ifname_t for iioctl.defs. * iioctl.defs: New file for network interface ioctls. * pfinet.defs: Remove old RPCs, fix subsystem number, add RPC for SIOCGIFCONF. pfinet/ 2001-01-07 Marcus Brinkmann <marcus@gnu.org> * pfinet-ops.c: New file to implement hurd/pfinet.defs. * iioctl-ops.c: New file to implement iioctl.defs. * linux-src/net/core/dev.c: If _HURD_, don't define netdev_chain as static. * glue-include/linux/if.h: New file, to avoid conflict between <net/if.h> (imported by iioctl.defs) and linux version of it. * main.c (pfinet_demuxer): Prototype pfinet_server and iioctl_server, use them. * pfinet.h: New global variables pfinetctl, pfinet_owner and pfinet_group. * main.c (main): New variable ST. Request pfinetctl from trivfs_startup. Use it to determine the owner and group of the underlying node. * io-ops.c (S_io_reauthenticate): New index variable j. Set newuser->isroot also for owners of the underlying file and group owners. (S_io_restrict_auth): Likewise. * socket-ops.c: Include <sys/stat.h> and <hurd/fshelp.h>. (S_socket_create): New variable isroot. If master->isroot is not set, use fshelp_isowner to check ownership and if to set it. Pass isroot to make_sock_user instead master->isroot. * linux-src/net/ipv4/devinet.c (configure_device): Accept new parameter BROADCAST, set ifa_broadcast if this is not INADDR_NONE. (inquire_device): Accept new parameter broadcast, set it. * main.c: Add new paramter to prototype of configure_device. (main): Add new parameter to call to configure_device. * options.c: Add new parameters to prototypes of configure_device and inquire_device. (trivfs_append_args): Define new variable BROAD, use its address as the new parameter for inquire_device. * linux-src/net/core/dev.c (dev_ifconf): Don't declare static if _HURD_. * linux-src/net/ipv4/devinet.c (inet_gifconf): If _HURD_, set sin_len member. * Makefile (MIGSRCS): Add pfinetServer.c and iioctlServer.c. (SRCS): Add pfinet-ops.c, iioctl-ops.c.
2001-01-112001-01-09 Marcus Brinkmann <marcus@gnu.org>Marcus Brinkmann
* changelog: Update to reflect Debian upgrade. * rules: Use --disable-profile wih configure instead no_prof=t with make.
2001-01-092001-01-09 Marcus Brinkmann <marcus@gnu.org>Marcus Brinkmann
* device.c (store_device_create): Protect code of last change with #ifdef DEV_GET_RECORDS, and set sizes_len again before second try. (enforce): Likewise. Move definition of variable err up to top level.
2001-01-092001-01-09 Marcus Brinkmann <marcus@gnu.org>Marcus Brinkmann
* device.c (enforce): First try DEV_GET_RECORDS, and only fall back to DEV_GET_STORE if this fails with D_INVALID_OPERATION. (store_device_create): Likewise, but fall back for any failure.
2001-01-08doc/Marcus Brinkmann
2001-01-08 Marcus Brinkmann <marcus@gnu.org> * hurd.texi (Store Management): Replace off_t with store_offset_t. (Store I/O): Likewise. (Store Classes): Likewise. ext2fs/ 2001-01-08 Marcus Brinkmann <marcus@gnu.org> * ext2fs.c (main): Use %Ld instead %ld to print store->size. * hyper.c (get_hypermetadata): Likewise. libstore/ 2001-01-08 Marcus Brinkmann <marcus@gnu.org> * zero.c (zero_remap): Change type of variables length, old_length to store_offset_t. (zero_decode): Change type of variable size to store_offset_t. (zero_open): Likewise. Use strtoull instead strtoul to parse size argument from name. Use store_offset_t for max_offs and its calculation. (store_zero_create): Use store_offset_t type for size argument. * derive.c (_store_derive): Use store_offset_t as type for variable last_part_base. * stripe.c (addr_adj): Change types of addr argument and return value to store_offset_t. (store_ileave_create): Change type of interleave argument and variables min_end and end to store_offset_t, but type of variable block_size to size_t. (store_concat_create): Change type of variable block_size to size_t. * make.c (_store_create): Change end argument type to store_offset_t. * store.h: New type store_offset_t, define to off64_t. (struct store_run): Change type of start and length to store_offset_t. (struct store): Change type of end, wrap_src, wrap_dst, blocks, size to store_offset_t. Change type of addr arg in store_read_meth_t and store_write_meth_t to store_offset_t, as well as in declarations for store_read and store_write. Change type of argument end in _store_create declaration to store_offset_t. Change type of argument size in store_zero_create to store_offset_t. Change type of argument interleace in store_ileace_create to store_offset_t. * rdwr.c (store_find_first_run): Change type of return value, addr and *base arguments, and variables wrap_src and run_blocks to store_offset_t. (store_next_run): Change type of *base argument to store_offset_t. (store_write): Change type of addr argument and variable base to store_offset_t. (store_read): Likewise, also for addr argument of local function seg_read. Change type of len argument to size_t. * copy.c (copy_read): Change type of addr argument to store_offset_t. (copy_write): Likewise. * device.c (dev_read): Likewise. (dev_write): Likewise. * file.c (file_read): Likewise. (file_write): Likewise. (file_byte_read): Likewise. (file_byte_write): Likewise. * mvol.c (mvol_read): Likewise. (mvol_write): Likewise. * remap.c (remap_read): Likewise. (remap_write): Likewise. * stripe.c (stripe_read): Likewise. (stripe_write): Likewise. * task.c (task_read): Likewise. (task_write): Likewise. * zero.c (zero_read): Likewise. (zero_write): Likewise. * remap.c (store_remap_runs): Change type of addr and len arguments of local function add_run and of local variables addr, length, baddr, blen and len to store_offset_t. (remap_open): Cast -1 to store_offset_t, not off_t. * argp.c (struct store_parsed): Change type of interleave from off_t to store_offset_t. (store_parsed_append_args): Use %Ld instead %ld to print interleave value. (store_parsed_name): Likewise. ufs/ 2001-01-08 Marcus Brinkmann <marcus@gnu.org> * main.c (main): Use %Ld instead %ld to print store->size. * hyper.c (get_hypermetadata): Likewise. * inode.c (diskfs_S_file_get_storage_info): Change type of variables start and length from off_t to store_offset_t. utils/ 2001-01-08 Marcus Brinkmann <marcus@gnu.org> * storeread.c (main): Change type of addr to store_offset_t, also for first argument of local function dump. Add comment about store->size as len parameter for store_read. Use atoll instead atoi for addr argument. * storeinfo.c (print_store): Remove local function pint, add two similar functions psiz and poff, accepting and printing a size_t or store_offset_t respectively. Use psiz to print block_size, poff to print blocks and size of store. Use %Ld instead %ld to print runs. * storecat.c (main): Change type of addr and left to store_offset_t.
2001-01-07doc/Marcus Brinkmann
2001-01-07 Marcus Brinkmann <marcus@gnu.org> * hurd.texi (Diskfs Callbacks): Make diskfs_dirstat_size const. ext2fs/ 2001-01-07 Marcus Brinkmann <marcus@gnu.org> * dir.c: Make diskfs_dirstat_size const. isofs/ 2001-01-07 Marcus Brinkmann <marcus@gnu.org> * lookup.c: Make diskfs_dirstat_size const. ufs/ 2001-01-07 Marcus Brinkmann <marcus@gnu.org> * dir.c: Make diskfs_dirstat_size const. libdiskfs/ 2001-01-07 Marcus Brinkmann <marcus@gnu.org> * diskfs.h: Make diskfs_dirstat_size const. libdiskfs/ 2001-01-07 Marcus Brinkmann <marcus@gnu.org> * file-statfs.c: Include <string.h>. ftpfs/ 2001-01-07 Marcus Brinkmann <marcus@gnu.org> * dir.c (ftpfs_dir_create): Fix last change (calloc invocation). 2001-01-07 Marcus Brinkmann <marcus@gnu.org> * copy.c: Include <mach.h>. New macro page_aligned. (copy_write): Cast buf to vm_address_t in call to vm_write. Dereference amount for memcpy. (copy_read): Add len parameter to vm_read, remove redundant following len assignment.
2001-01-072000-12-21 Marcus Brinkmann <marcus@gnu.org>Marcus Brinkmann
* rr.c (rrip_work): Use strdup instead malloc and strcpy. Assert that strdup and malloc (for rr->trans) succeeds. * pager.c: Include <errno.h>. (create_disk_pager): If malloc fails, exit with error. * main.c (read_sblock): Fail if malloc does. * inode.c (diskfs_cached_lookup): When allocating memory for dn or np fails, release spinlock, rrip (and allocated memory) and return ENOMEM. (load_inode): Likewise (but no rrip). Also, if *npp is non-zero, release diskfs_node_refcnt_lock before returning. Reported by Igor Khavkine <i_khavki@alcor.concordia.ca>.
2001-01-072000-12-21 Marcus Brinkmann <marcus@gnu.org>Marcus Brinkmann
* init.c (process_rc_script): If malloc fails, return ENOMEM. Reported by Igor Khavkine <i_khavki@alcor.concordia.ca>.
2001-01-072000-12-21 Marcus Brinkmann <marcus@gnu.org>Marcus Brinkmann
* dir.c (ftpfs_dir_create): New macro INIT_HTABLE_LEN to specify initialize htable_len. New variable htable, allocate memory to it with calloc before acquiring a node reference. If this fails, return any allocated memory and return with ENOMEM. Set new->htable_len to INIT_HTABLE_LEN and new->htable to htable. Don't bzero htable anymore, as we use calloc.
2001-01-072000-12-21 Marcus Brinkmann <marcus@gnu.org>Marcus Brinkmann
* pager.c: Include <errno.h>. (create_disk_pager): Panic if malloc fails. Reported by Igor Khavkine <i_khavki@alcor.concordia.ca>. * inode.c (diskfs_get_translator): If malloc fails, set err to ENOMEM. Initialize err with 0, and return it at the end of the function. Reported by Igor Khavkine <i_khavki@alcor.concordia.ca>.
2001-01-072000-12-21 Marcus Brinkmann <marcus@gnu.org>Marcus Brinkmann
* boot.c (main): If malloc or realloc fails, print diagnostic message and exit. (queue_read): Change return type from void to kern_return_t. If malloc fails, return D_NO_MEMORY, otherwise D_SUCCESS (to simplify code flow, malloc before acquiring the queuelock). (ds_device_read): New variable err (local to the block in which it is used). If queue_read fails, pass through error. (ds_device_read_inband): Likewise. (S_io_read): Likewise. Reported by Igor Khavkine <i_khavki@alcor.concordia.ca>.
2001-01-03fix typo in changelogMarcus Brinkmann
2001-01-032001-01-03 Marcus Brinkmann <marcus@gnu.org>Marcus Brinkmann
* options.c (parse_opt): Set err to 0 if it was ESRCH. (or zero after anyway).
2000-12-30Bah.Marcus Brinkmann
2000-12-30 Marcus Brinkmann <marcus@gnu.org> * netfs.h: Revert doc "fix" of netfs_attempt_chmod.
2000-12-302000-12-30 Marcus Brinkmann <marcus@gnu.org>Marcus Brinkmann
* netfs.h: Merge Neals words into documentation of netfs_nput, netfs_nrele, netfs_nref.
2000-12-302000-12-30 Marcus Brinkmann <marcus@gnu.org>Marcus Brinkmann
* dir.c: Include <stddef.h>, <unistd.h>, <sys/mman.h> (diskfs_get_directs): Cast *data to struct dirent *. * node.c: Include <stddef.h>. (diskfs_alloc_node): Remove unused variables err, st, np. (diskfs_free_node): Use *np->dn, not *dn to calculate used space. (recompute_blocks): Replace DT_DEV with DT_BLK. (diskfs_node_norefs): Likewise. (recompute_blocks): Take address of np->dn_stat for pointer st. (diskfs_cached_lookup): New variable st. (diskfs_cached_lookup): Set st to &np->dn_stat, not &dn->dn_stat. (create_symlink_hook): Fix malloc call and return code check. (read_symlink_hook): Return 0. * tmpfs.c: Include <argp.h>, <string.h>, <inttypes.h>, <argz.h>, <error.h>. (parse_opt): Reverse second and third argument of strtoimax call. * tmpfs.h (struct disknode): Remove blind passenger (unnamed copy of anonymous struct {} reg). Some of the above were also reported by Alexey Dejneka <adejneka@comail.ru>.
2000-12-30Adjust "localizer".Marcus Brinkmann
2000-12-302000-12-30 Marcus Brinkmann <marcus@gnu.org>Marcus Brinkmann
* netfs.h (struct node): Adjust comment fixes by last change to be more in line with similar comments elsewhere. * make-node.c (netfs_make_node): Return 0 if malloc does. Reported by Neal H Walfield <neal@cs.uml.edu>. 2000-12-29 Neal H Walfield <neal@cs.uml.edu> * dir-lookup.c (netfs_S_dir_lookup): Do not bother zeroing np, it happens later anyway. Replace bcopy with memcpy. * file-get-translator.c (netfs_S_file_get_translator): Replace bcopy with memcpy. * io-seek.c (netfs_S_io_seek): Only get the lock if we need it. * io-stat.c (netfs_S_io_stat): Replace bcopy with memcpy. * io-write.c (netfs_S_io_write): Wait until the lock is needed. * netfs.h: Complete documentation revision. The locking protocol is now very explicit. * nput.c (netfs_nput): Added comment. * nrele.c (netfs_nrele): Likewise. * set-get-trans.c: Likewise.
2000-12-29.Roland McGrath
2000-12-292000-12-28 Roland McGrath <roland@frob.com>Roland McGrath
* node.c (recompute_blocks): New function, broken out of ... (diskfs_cached_lookup): here. Now use call that. (diskfs_set_translator): Likewise. (create_symlink_hook): Likewise. Do nothing for zero-length target.
2000-12-27New directory tmpfs, in-core filesystem based on libdiskfsRoland McGrath
2000-12-27.Roland McGrath
2000-12-272000-12-26 Roland McGrath <roland@frob.com>Roland McGrath
* file-statfs.c (diskfs_S_file_statfs): Zero out the struct statfs before calling diskfs_set_statfs. Set f_namelen to diskfs_name_max after the call. * diskfs.h: Update comment.
2000-12-21.Roland McGrath
2000-12-212000-12-20 Roland McGrath <roland@frob.com>Roland McGrath
* zero.c (zero_open): Check for END being null after strtoul call. If character following number (*END) is b, multiply size by 512; k or K, by 1024; m or M by 1024*1024; g or G by 1024*1024*1024.
2000-12-21.Roland McGrath
2000-12-212000-12-20 Roland McGrath <roland@frob.com>Roland McGrath
* store.h (struct store_class): Fix typo in comment.
2000-12-21.Roland McGrath
2000-12-212000-12-20 Roland McGrath <roland@frob.com>Roland McGrath
* copy.c (copy_read): When reading whole aligned pages, use vm_read. Use MAP_FAILED in place of (void *) -1. Use memcpy in place of bcopy. (copy_write): When reading whole aligned pages, use vm_write. Use memcpy in place of bcopy.
2000-12-03.Roland McGrath
2000-12-032000-12-02 Roland McGrath <roland@frob.com>Roland McGrath
* inode.c (write_node): Remove assert that dn_set_mtime et al are clear. It is ok if they are set in parallel, because the latter setting will be carried out eventually.
2000-12-032000-12-03 Marcus Brinkmann <marcus@gnu.org>Marcus Brinkmann
* main.c (pfinet_demuxer): New variable PI. Store port info in PI, and dereference it if found.
2000-12-03.Roland McGrath
2000-12-032000-10-01 Roland McGrath <roland@frob.com>Roland McGrath
* truncate.c (diskfs_truncate): Use & instead of %.
2000-12-032000-12-02 Roland McGrath <roland@frob.com>Roland McGrath
* inode.c (write_all_disknodes): Call diskfs_set_node_times after pokel_sync, since it might delay a little. (write_node): Remove assert that dn_set_mtime et al are clear. It is ok if they are set in parallel, because the latter setting will be carried out eventually.
2000-12-032000-12-02 Roland McGrath <roland@frob.com>Roland McGrath
* node-times.c (diskfs_set_node_times): Make individual flag checks race-proof so we don't lose any flag settings.
2000-12-022000-12-02 Marcus Brinkmann <marcus@gnu.org>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-012000-12-01 Marcus Brinkmann <marcus@gnu.org>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-11-30ext2fs, ufs:Marcus Brinkmann
2000-11-30 Marcus Brinkmann <marcus@gnu.org> * dir.c (diskfs_lookup_hard): If name is too long, clear DS before returning ENAMETOOLONG. pfinet: 2000-11-02 Marcus Brinkmann <marcus@gnu.org> * tunnel.c (trivfs_S_io_get_owner): Add return type to silence compiler warning.
2000-11-28Added version.texi to keep web docs up-to-date.Gordon Matzigkeit
2000-11-272000-11-27 Marcus Brinkmann <marcus@gnu.org>Marcus Brinkmann
* changelog: Update to reflect Debian upgrade. * rc: New file. * rules: Install rc. * control: Add Build-Depends.
2000-11-272000-11-27 Marcus Brinkmann <marcus@gnu.org>Marcus Brinkmann
The last two changes introduced two new inode overlaps (file_start was not shifted by store block size, and directories' shifted file_start offset can be the same as the struct dirrect offset of their first directory entry). * inode.c (use_file_start_as_id): New function to determine if to use file_start or struct dirrect * as node id. The directory recognition code comes from read_disknode. (cache_inode): Use use_file_start_as_id instead doing the work ourselve. Shift file_start by store->log2_block_size. (load_inode): Likewise. * lookup.c (diskfs_get_directs): Likewise. Declare use_file_start_id.
2000-11-262000-11-26 Marcus Brinkmann <marcus@gnu.org>Marcus Brinkmann
* ops.c (netfs_attempt_mkdir): Add casts -1 -> (struct iouser *) -1 to silence gcc warning. (netfs_attempt_create_file): Likewise.
2000-11-262000-11-26 Marcus Brinkmann <marcus@gnu.org>Marcus Brinkmann
Fix hard link handling for non-zero length files. * inode.c: Fix comment about inode numbers. (node_cache): New member ID to store unique identifier. (inode_cache_find): Change RECORD arg into ID and compare it with id member of node_cache. (cache_inode): Swap order of args and add new arg RR (change dr into record along the way). Use RR to find out cache ID. Use id member of node_cache to look for ID. Cache ID. (load_inode): Call inode_cache_find with correct ID, depending on RR and file size. Frob arguments to cache_inode to comply with the new definition. (read_disknode): Set st_ino according depending on RR and file size. * lookup.c: Doc spelling fix. (diskfs_get_directs): Include code again that was removed by last change, but use it only if not symlink or zero length file.
2000-11-262000-11-26 Marcus Brinkmann <marcus@gnu.org>Marcus Brinkmann
Closes Debian Bug #68417: * rr.c (rrip_work): In helper function add_comp set targused to zero after malloc, and loop over realloc in case doubling is not enough. After finalizing the link, set VALID_SL valid flag. * inode.c (read_disknode): For links use rl->target instead rl->name. Closes Debian Bug #69281: Don't use file_start as inode numbers, but the offset of the directory record in disk_image. This is what Linux 2.4 does. * isofs.h (struct disknode): New member struct dirrect *dr. * inode.c: Fix comment about inode numbers. (struct node_cache): Fix comment about file_start (it's not unique). In fact, file_start is invalid for symlinks, and only stored here for convenience. Maybe caching file_start can be avoided by rearranging the code. (inode_cache_find): Change first argument from off_t file_start to struct dirrect *dr and fix the doc. Compare cached value of DR with this argument, instead FILE_START. (diskfs_cached_lookup): Set DR member of DN. (load_inode): Call inode_cache_find with RECORD instead FILE_START. Set DR member of DN. (read_disknode): Set inode number to DR - DISK_IMAGE instead FILE_START. * lookup.c (diskfs_get_directs): Remove variable file_start. Don't calculate file_start. Set D_FILENO to EP - DISK_IMAGE instead FILE_START.
2000-11-152000-11-15 Marcus Brinkmann <marcus@gnu.org>Marcus Brinkmann
* hurd_types.h: Doc fix reported by Neal H Walfield (neal@cs.uml.edu), STORAGE_NULL is actually STORAGE_ZERO.
2000-10-302000-10-30 Marcus Brinkmann <marcus@gnu.org>Marcus Brinkmann
* wire.c: Include <error.h>.