diff options
Diffstat (limited to 'libstore/ChangeLog')
-rw-r--r-- | libstore/ChangeLog | 716 |
1 files changed, 716 insertions, 0 deletions
diff --git a/libstore/ChangeLog b/libstore/ChangeLog new file mode 100644 index 00000000..74f6bcb4 --- /dev/null +++ b/libstore/ChangeLog @@ -0,0 +1,716 @@ +1999-11-20 Roland McGrath <roland@baalperazim.frob.com> + + * store.h (struct store_class): Add const to type of `name' member. + +1999-11-14 Roland McGrath <roland@baalperazim.frob.com> + + * device.c (dev_error): New static function. + Translate all expected D_* codes into POSIX codes. + (dev_read, dev_write, dev_open): Use it. + +1999-10-07 Roland McGrath <roland@baalperazim.frob.com> + + * rdwr.c (store_read, store_write): Fix asserts in last change. + +1999-10-03 Roland McGrath <roland@baalperazim.frob.com> + + * rdwr.c (store_read, store_write): Fix calculations broken in last + change, so they again properly account for starting intrarun offset. + +1999-09-09 Roland McGrath <roland@baalperazim.frob.com> + + * rdwr.c (store_write, store_read): Carefully avoid scaling run + lengths from blocks to bytes except when we're already sure the + run's size in bytes won't overflow size_t. + +1999-07-11 Thomas Bushnell, BSG <tb@mit.edu> + + * argp.c (store_parsed_open): Add more braces to clarify if-else + structure. + + * encode.c: Include <sys/mman.h> + * zero.c: Likewise. + + * encode.c (store_encode): Repair syntax. + * copy.c (copy_read): Likewise. + + * enc.c (store_enc_dealloc): Cast first arg of munmap correctly. + +1999-07-10 Roland McGrath <roland@baalperazim.frob.com> + + * rdwr.c: Add #include <sys/mman.h> for munmap decl. + * enc.c: Likewise. + * copy.c: Likewise. + * gunzip.c: Likewise. + * bunzip2.c: Likewise. + +1999-07-09 Thomas Bushnell, BSG <tb@mit.edu> + + * bunzip2.c (bunzip2): Use mmap instead of vm_allocate. + * copy.c (copy_read): Likewise. + (copy_clone): Likewise. + * encode.c (store_encode): Likewise. + * gunzip.c (gunzip): Likewise. + * rdwr.c (store_read): Likewise. + * zero.c (zero_read): Likewise. + +1999-07-08 Roland McGrath <roland@baalperazim.frob.com> + + * remap.c (remap_open): Recognize "N+" syntax in block list as from + block N through the end of the store. + +1999-07-03 Thomas Bushnell, BSG <tb@mit.edu> + + * bunzip2.c (bunzip2): Use munmap instead of vm_deallocate. + (store_bunzip2_create): Likewise. + * rdwr.c (store_read): Likewise. + * gunzip.c (gunzip): Likewise. + (store_gunzip_create): Likewise. + * enc.c (store_enc_dealloc): Likewise. + * copy.c (copy_cleanup): Likewise. + +1999-05-23 Roland McGrath <roland@baalperazim.frob.com> + + * remap.c (remap_open): Don't multiply by 512. Offsets and sizes are + in blocks, not bytes. + + * stripe.c (concat_decode): Add __attribute__((unused)) to suppress + warning. + (ileave_decode): Likewise. + + * bunzip2.c: Add extern decl for do_bunzip2. + +1999-05-16 Roland McGrath <roland@baalperazim.frob.com> + + * remap.c (remap_decode): Add attribute((unused)) to suppress warning. + +1999-05-14 Roland McGrath <roland@baalperazim.frob.com> + + * remap.c (remap_open, remap_validate_name): New functions, to support + parsing block lists a la GRUB. + (store_remap_class): Initialize those slots. + +1999-05-01 Mark Kettenis <kettenis@gnu.org> + + * device.c (store_device_create): Deal with devices that return + sucessfully from device_get_status, but do not return any sensible + information. + +1998-09-06 OKUJI Yoshinori <okuji@kuicr.kyoto-u.ac.jp> + + * bunzip2.c: New file. + * store.h (store_bunzip2_create): New declarations. + (store_bunzip2_open): Likewise. + (store_bunzip2_class): Likewise. + * std.c (store_std_classes): Add store_bunzip2_class. + * Makefile (SRCS): Add bunzip2.c. + (UNZIP_OBJS): Add do-bunzip2.o. + +1998-12-27 Roland McGrath <roland@baalperazim.frob.com> + + * store.h: Remove defns of STORAGE_*, now in <hurd/hurd_types.h>. + +1998-12-21 Roland McGrath <roland@baalperazim.frob.com> + + * open.c (store_open): Like file.c:fiopen, catch EACCES or EROFS + and try to open read-only. + + * file.c (fiopen): Treat EROFS same as EACCES. + +1998-10-20 Roland McGrath <roland@baalperazim.frob.com> + + * flags.c (store_clear_flags): Add braces to silence gcc warning. + +1998-10-19 Roland McGrath <roland@baalperazim.frob.com> + + * rdwr.c (store_read): Add braces to silence gcc warning. + * flags.c (store_set_flags): Likewise. + * typed.c (store_typed_open): Likewise. + * decode.c (store_decode): Likewise. + * argp.c (store_parsed_append_args): Likewise. + (store_parsed_name): Likewise. + (store_parsed_open): Likewise. + +1998-09-05 Roland McGrath <roland@baalperazim.frob.com> + + * argp.c (store_parsed_append_args): Use %d for layer, which is int. + Cast to int for %* field width arg. + +1997-09-22 Miles Bader <miles@gnu.ai.mit.edu> + + * encode.c (store_encode): Allocate the correct amount of memory + for the encoding vectors. + + * make.c (_store_create): Initialize NEW->misc_len. + + * mvol.c (store_mvol_class): Set correct members. + (store_mvol_create): Declare PHYS correctly. + <stdio.h>: New include. + * store.h (store_mvol_create): Declare PHYS correctly. + * Makefile (SRCS): Add mvol.c. + +1997-08-11 Miles Bader <miles@gnu.ai.mit.edu> + + * store.h (store_mvol_create): New declaration. + (store_mvol_class): New declaration. + * mvol.c: New file. + +1997-07-24 Miles Bader <miles@gnu.ai.mit.edu> + + * device.c (store_device_create): Treat devices that can't do + device_get_status as zero-length. + (dev_map): Pass 0 for OFFSET and SIZE arguments to device_map -- + mach ignores them, and we often can't supply meaningful values. + * make.c (_store_create): If BLOCK_SIZE is zero, make sure there + are no runs. + * derive.c (_store_derive): Let BSIZE be zero. + +1997-07-21 Miles Bader <miles@gnu.ai.mit.edu> + + * argp.c (store_parsed_append_args): Correctly unparse complex + type names. + +1997-07-18 Miles Bader <miles@gnu.ai.mit.edu> + + * map.c (store_map): If we can't map STORE directly, and it has a + source file, try to map that instead. + * remap.c (store_remap): If we are mutating SOURCE, close any + source port it has. + * store.h (store_map_source): Declaration removed. + +1997-07-17 Miles Bader <miles@gnu.ai.mit.edu> + + * store.h (store_map): New declaration. + (struct store_class): Add map field. + * device.c (dev_map): New function. + (store_device_class): Use dev_map. + * zero.c (zero_map): New function. + (store_zero_class): Use zero_map. + * file.c (file_map): New function. + (store_file_class): Use file_map. + * map.c: New file. + * Makefile (SRCS): Add map.c. + + * device.c (dev_read, dev_write): Remove debugging grot. + +1997-07-07 Miles Bader <miles@gnu.ai.mit.edu> + + * kids.c (store_open_children): Support factored type notation. + +1997-07-05 Miles Bader <miles@gnu.ai.mit.edu> + + * file.c (file_read, file_write, file_byte_read, file_byte_write): + Remove debugging noise. + +1997-06-30 Miles Bader <miles@gnu.ai.mit.edu> + + * store.h: Doc fix. + +1997-06-27 Miles Bader <miles@gnu.ai.mit.edu> + + * file.c (store_file_open): Use fiopen to open the file. + Set name of newly created store. + (fiopen, ficlose, enforced, file_set_flags, file_clear_flags): New + functions. + (store_file_class): Use new functions. + (store_file_byte_class): Fill in rest of functions. + * device.c (enforced): Move some checking here from dev_set_flags, + and correct the check for the number of stores. + (dev_set_flags): Move enforcement checking code to enforce. + +1997-06-26 Miles Bader <miles@gnu.ai.mit.edu> + + * argp.c (parse_type): Fill in name_prefix field. + (store_parsed_open): Apply it to any names we open. + +1997-06-22 Miles Bader <miles@gnu.ai.mit.edu> + + * argp.c (parse_type): New function. + (parse_opt): Use parse_type to parse the -T option. + (struct store_parsed): Add NAME_PREFIX field. + (store_parsed_free): Free it. + (store_parsed_append_args): Emit it. + (store_parsed_open): Use it in opens. + + * typed.c (store_typed_open): If NAME doesn't contain a `:' + separator, try to use it as either a class name or a file name. + Interpret a trailing or leading `:' as unambiguously referring to + a class-name or a filename, respectively. + +1997-06-19 Miles Bader <miles@gnu.ai.mit.edu> + + * rdwr.c (store_read): Limit reads to the amount available. + + * store.h (store_typed_open_class): Renamed from store_typed_class. + * std.c (store_std_classes): Use store_typed_open_class instead of + store_typed_class. + + * Makefile (SRCS): Remove storeread.c & storecat.c. + (storeread, storecat): Rules removed. + * storeread.c, storecat.c: Moved to ../utils. + +1997-06-18 Miles Bader <miles@gnu.ai.mit.edu> + + * store.h (struct store): BLOCKS & SIZE are off_t, not size_t. + (store_zero_create): SIZE is off_t, not size_t. + * zero.c (store_zero_create, zero_open): Likewise. + + * storecat.c (main): Update use of argp. + * storeread.c (main): DATA is void *. + + * Makefile (UTILS_OBJS): Variable removed. + (UNZIP_OBJS): New variable. + (OBJS): Don't use $(UTILS_OBJS). Do use $(UNZIP_OBJS). + (VPATH, CPPFLAGS): Search for stuff in ../exec for unzip junk. + + * derive.c: Include <assert.h> + (_store_derive): Assert that block_size & blocks_per_page are + powers of two (which should be enforced elsewhere). + + * make.c (_store_create): Renamed from _make_store. + Return an error_t code, and add an additional argument STORE to + return the new store; all uses changed. + * store.h (_make_store): Likewise. + + * Makefile (SRCS): Add typed.c, copy.c, and gunzip.c. + + * typed.c: New file + * store.h (store_gunzip_class, store_typed_class): New declarations. + * std.c (store_std_classes): Add store_copy_class, + store_gunzip_class, and store_typed_class. + + * kids.c (store_open_children, store_children_name): New functions. + * stripe.c (store_concat_open): New function. + (store_concat_create): Set the store name if possible. + * store.h (store_concat_open, store_children_name, + store_open_children): New declaration. + * rdwr.c (store_read): Deallocate memory returned when reading + part of a multiple-segment read. + +1997-06-17 Miles Bader <miles@gnu.ai.mit.edu> + + * copy.c, gunzip.c: New files. + * store.h (store_copy_class): New declaration. + (store_copy_create, store_copy_open, store_buffer_create, + store_gunzip_create, store_gunzip_open): New declarations. + + * decode.c (store_decode): Pass the original value of CLASSES to + any decode method, not our search tail. + + * device.c (dopen): If *MOD_FLAGS already contains + STORE_HARD_READONLY, don't ever try to open for reading. + +Fri Feb 21 23:31:34 1997 Miles Bader <miles@gnu.ai.mit.edu> + + * device.c (dopen): Add MOD_FLAGS param, and detect read-only devices. + (dev_clear_flags, store_device_open): Use MOD_FLAGS arg to dopen. + +Wed Feb 19 15:40:18 1997 Miles Bader <miles@gnu.ai.mit.edu> + + * storeread.c (doc): Make doc string come after options. + + * device.c (dev_set_flags): Correctly check for unenforcable runs. + + * task.c: New file. + * Makefile (SRCS): Add task.c. + * store.h (store_task_class): New declaration. + (store_task_create, _store_task_create, store_open): New declarations. + * std.c (store_std_classes): Add &STORE_TASK_CLASS. + + * xinl.c: Renamed from store.c. + * Makefile (SRCS): Change store.c to xinl.c. + +Mon Oct 21 22:03:19 1996 Thomas Bushnell, n/BSG <thomas@gnu.ai.mit.edu> + + * store.h: Add extern inline protection. + * store.c: New file. + * Makefile (SRCS): Add store.c. + +Tue Oct 8 14:31:51 1996 Miles Bader <miles@gnu.ai.mit.edu> + + * kids.c (store_set_child_flags, store_clear_child_flags): New funcs. + * store.h (store_set_child_flags, store_clear_child_flags): New decls. + * stripe.c (stripe_set_flags, stripe_clear_flags): Remove functions. + * remap.c (store_remap_class): Init set_flags & clear_flags fields. + * stripe.c (store_ileave_class, store_concat_class): Likewise. + + * clone.c (store_clone): Copy name field. + +Mon Oct 7 14:56:27 1996 Miles Bader <miles@gnu.ai.mit.edu> + + * device.c (dev_set_flags, dev_clear_flags): New functions. + (store_device_class): Add dev_set_flags & dev_clear_flags. + (dopen, dclose, enforced): New functions. + (store_device_open): Use dopen. + * store.h <fcntl.h>: New include. + * stripe.c (stripe_set_flags, stripe_clear_flags): New functions. + (store_ileave_create, store_concat_create): Add common backend + flags from children to parent's flags. + +Sat Oct 5 00:23:45 1996 Miles Bader <miles@gnu.ai.mit.edu> + + * create.c (store_create): Add special handling of STORE_INACTIVE + in FLAGS. + +Fri Oct 4 23:44:51 1996 Miles Bader <miles@gnu.ai.mit.edu> + + * create.c (store_create): Free *STORE when store_set_flags fails. + + * store.h (STORE_INNOCUOUS, STORE_INACTIVE): New macros. + (store_is_securely_returnable): New function. + * zero.c (store_zero_create): Set STORE_INNOCUOUS flags. + +Fri Sep 27 17:01:07 1996 Miles Bader <miles@gnu.ai.mit.edu> + + * remap.c (store_remap): Zero SOURCE->end before calling _store_derive. + Turn off STORE_ENFORCED flag in source if munging it. + + * device.c (store_device_open): Set *STORE's name appropriately. + +Tue Sep 24 15:15:27 1996 Miles Bader <miles@gnu.ai.mit.edu> + + * zero.c <limits.h>: New include. + (zero_open): When no size is specified, use the maximum off_t + value, not the maximum size_t value. + +Mon Sep 23 12:55:43 1996 Miles Bader <miles@gnu.ai.mit.edu> + + * storecat.c (main): Use new PARAMS var for passing args to STORE_ARGP. + +Thu Sep 19 11:12:44 1996 Miles Bader <miles@gnu.ai.mit.edu> + + * argp.c (parse_opt): Correctly check for non-default type. + + * kids.c (store_decode_children): Change CLASSES to **. + * encode.c (store_encode): Make CLASS var const. + * file.c (_store_file_create): Make CLASS arg const. + * store.h (struct store): Make CLASS field const. + (_make_store): Make CLASS arg const. + * make.c (_make_store): Make CLASS arg const. + * stripe.c (ileave_decode, concat_decode): Make CLASSES arg const. + * remap.c (remap_decode): Likewise. + * create.c (store_create): Likewise. + +Wed Sep 18 15:14:51 1996 Miles Bader <miles@gnu.ai.mit.edu> + + * argp.c (struct store_parsed): Change CLASSES field to be a pointer to + a vector of class pointers. + (find_class): Change CLASSES to be a vector of class pointers. + * decode.c (store_decode): Change CLASSES to be a vector of class + pointers. + * store.h (struct store_class, struct store_argp_params, store_create, + store_open, store_decode, store_decode_children): Change CLASSES args + to be a pointer to a vector of class pointers. + (_store_add_std_class): Declaration removed. + (STORE_STD_CLASS): Macro removed. + * std.c (store_std_classes): Make an initialized array. + (_store_add_std_class): Function removed. + * device.c (store_device_class): Renamed from dev_class; export. + * file.c (store_file_class): Renamed from file_class; export. + (store_file_byte_class): Renamed from file_byte_class; export. + * zero.c (store_zero_class): Renamed from zero_class; export. + * remap.c (store_remap_class): Renamed from remap_class; export. + * open.c (store_query_class): Renamed from query_class; export. + * stripe.c (store_ileave_class): Renamed from ileave_class; export. + (store_concat_class): Renamed from concat_class; export. + + * zero.c (zero_open, zero_validate_name): New functions. + (zero_class): Use them. + + * argp.c (store_parsed_open): Remove CLASSES argument. + (struct store_parsed): Make some fields const. + * store.h (store_parsed_open): Remove CLASSES argument. + +Tue Sep 17 14:48:48 1996 Miles Bader <miles@gnu.ai.mit.edu> + + * store.h (struct store_class): Add OPEN and PARSE fields. + (store_open): Make NAME const. + (struct store_argp_params): New type. + * device.c (dev_open): New function. + (dev_class): Point to it. + * file.c (fhile_open): New function. + (file_class): Point to it. + * argp.c (options, parse_opt): Add --store-type/-T & (hidden) + --machdev/-m options, remove --device/-d option. + (struct store_parsed): Rmove DEVICE field, add TYPE, DEFAULT_TYPE + and CLASSES fields. + (store_parsed_free): Free PARSED->type if it exists. + (store_parsed_append_args): Use --store-type=... instead of --device. + (store_parsed_open): When --store-type is specified, search + CLASSES for that type, and call it's open function. + * open.c (store_open): Make NAME const. + (query_class): New variable. + +Fri Sep 13 14:33:24 1996 Miles Bader <miles@gnu.ai.mit.edu> + + * argp.c (store_parsed_append_args, store_parsed_open, struct + store_parsed): Use `device' instead of `machdev'. + + * encode.c (store_return): Only call store_enc_dealloc upon failure. + (store_std_leaf_allocate_encoding): NUM_OFFSETS is NUM_RUNS * 2. + + * enc.c (store_enc_return): Don't call store_enc_dealloc. + +Thu Sep 12 17:23:35 1996 Miles Bader <miles@gnu.ai.mit.edu> + + * storecat.c (main): Limit reads to 1M, and iterate until done. + Use store_parsed_name to get store name for errors. + Add program description. + + * store.h (STORAGE_REMAP, STORAGE_ZERO): New macros (temporary, to + avoid touching hurd/hurd_types.h). + +1996-09-12 Miles Bader <miles@gnu.ai.mit.edu> + + * remap.c (store_remap): Call _store_derive after changing runs. + + * argp.c (store_parsed_name): New function. + +Wed Sep 11 12:38:44 1996 Miles Bader <miles@gnu.ai.mit.edu> + + * decode.c (store_with_decoded_runs): New function. + (store_std_leaf_decode): Call it. + * store.h (store_with_decoded_runs): New declaration. + + * stripe.c (ileave_class, concat_class): Initialize the REMAP field. + (stripe_remap): New function. + * store.h (store_remap_create): New declaration. + * zero.c (zero_remap): New function. + (zero_class): Initialize remap field with zero_remap. + * Makefile (SRCS): Add remap.c. + + * zero.c: New file, from null.c. + * null.c: File removed. + * store.h (store_zero_create): Renamed from store_null_create. + * Makefile (SRCS): Replace null.c by zero.c. + +Tue Sep 10 17:05:03 1996 Miles Bader <miles@gnu.ai.mit.edu> + + * remap.c: New file. + * store.h (struct store_class): Add remap field. + (store_remap): New declaration. + + * encode.c (store_return): New function. + * enc.c (store_enc_return, store_return): New functions. + * store.h (store_enc_return, store_return): New declarations. + +Mon Sep 9 12:32:11 1996 Miles Bader <miles@gnu.ai.mit.edu> + + * rdwr.c (store_write, store_read): Use void * for buffers, not char *. + * device.c (dev_write, dev_read): Likewise. + * file.c (file_read, file_write, file_byte_read, file_byte_write): + Likewise. + * stripe.c (stripe_read, stripe_write): Likewise. + * null.c (null_read, null_write): Likewise. + * store.h (store_write_meth_t, store_read_meth_t, store_read, + store_write): Make type of buffer void *, not char *. + +Sun Sep 8 14:14:05 1996 Miles Bader <miles@gnu.ai.mit.edu> + + * device.c (dev_read, dev_write): Don't print debugging messages. + * argp.c (options, parse_opt): Change short option names around. + +Wed Sep 4 13:01:19 1996 Miles Bader <miles@gnu.ai.mit.edu> + + * argp.c (parse_opt): --layer isn't implemented, so say so. + + * storeread.c (main): Add new args to store_*_create calls. + * storecat.c (main): Use new interface to store_argp. + +Wed Sep 3 11:00:00 1996 Miles Bader <miles@gnu.ai.mit.edu> + + * argp.c (struct store_parsed): New type. + (store_parsed_free, store_parsed_append_args, store_parsed_open): + New functions. + (parse_opt): Use new store_parsed structure instead of the old + store_pars_hook, and just fill in the names rather than doing the + open here. Don't take a struct store_argp_params as input any + more; instead just take the address of a location in which to + return a store_parsed structure. + (struct store_parse_hook): Type removed. + (free_hook, open_file): Functions removed. + <assert.h>: New include. + <stdlib.h>, <fcntl.h>: Includes removed. + (options): --machdev/-m renamed to --device/-D. + * store.h (struct store): Make log2_* fields unsigned. + (STORE_NO_FILEIO): New macro. + (STORE_HARD_READONLY, STORE_ENFORCED): Values changed. + (STORE_GENERIC_FLAGS): Add STORE_NO_FILEIO. + (struct store_argp_params): Type removed. + (store_parsed_Free, store_parsed_open, store_parsed_append_args): + New declarations. + (struct store_parsed): New incomplete type. + +Mon Sep 2 18:56:26 1996 Miles Bader <miles@gnu.ai.mit.edu> + + * store.h (store_open): New declaration. + * open.c: New file. + * Makefile (SRCS): Add open.c. + +Wed Aug 21 14:40:15 1996 Miles Bader <miles@gnu.ai.mit.edu> + + * device.c (store_device_open): Don't call store_device_create if + device_open fails. + +Tue Aug 20 14:37:33 1996 Miles Bader <miles@gnu.ai.mit.edu> + + * argp.c (free_hook): Free H->params->args if necessary. + (parse_opt): Initialize and fill in H->params->args when appropriate. + <argz.h>: New include. + +Mon Aug 19 14:31:33 1996 Miles Bader <miles@gnu.ai.mit.edu> + + * store.h (struct store_argp_params): Add return_args, args, & + args_len fields. + +Fri Jul 19 16:16:46 1996 Miles Bader <miles@gnu.ai.mit.edu> + + * decode.c (store_std_leaf_decode): Decode name too. + Deal with NAME_LENGTH being 0. + +Sun Jun 16 22:49:55 1996 Miles Bader <miles@gnu.ai.mit.edu> + + * argp.c (parse_opt): Use argp_failure. + +Thu May 23 10:54:06 1996 Miles Bader <miles@gnu.ai.mit.edu> + + * argp.c (parse_opt): Honor ARGP_NO_ERRS. + <error.h>: New include. + +Wed May 22 00:14:18 1996 Miles Bader <miles@gnu.ai.mit.edu> + + * argp.c (parse_opt): Use error instead of ERR for non-parsing errors. + Rename ERR to PERR. + +Tue May 21 00:01:02 1996 Miles Bader <miles@gnu.ai.mit.edu> + + * storecat.c (main): Delete most everything and use store arg parsing. + (options, doc, args_doc): Variables removed. + + * create.c (store_create): Add FLAGS & CLASSES params. + * rdwr.c (store_write): Return an error if STORE is readonly. + * decode.c (store_decode): Add CLASSES param, use it instead of big + hardwired switch statement. + (store_default_leaf_decode): Use typedef for CREATE param. Pass in + FLAGS arg when calling it. + * encode.c (store_std_leaf_allocate_encoding): Renamed from + store_default_leaf_allocate_encoding. Make STORE const. + (store_std_leaf_encode): Renamed from store_default_leaf_encode. + Make STORE const. Get class id from store->class->id. + (store_encode): Use CLASS field instead of METHS field. + * clone.c (store_clone): Copy the flags by passing them to _make_store. + Use CLASS field instead of METHS field. + * file.c (store_file_open, file_decode): New functions. + (store_file_create): Always set STORE_ENFORCED. + (file_class): Renamed from file_meths. Add more fields. Make std + with _STORE_STD_CLASS. + (file_byte_class): Renamed from file_byte_meths. + <fcntl.h>, <hurd.h>: New includes. + * device.c (store_device_open, dev_decode): New functions. + (store_device_create): Always set STORE_ENFORCED. + (device_class): Renamed from device_meths. Add more fields. Make std + with _STORE_STD_CLASS. + <hurd.h>: New include. + * stripe.c (ileave_allocate_encoding, ileave_encode, ileave_decode, + concat_allocate_encoding, concat_encode, concat_decode): New functions. + (concat_class): New variable. + (ileave_class): Renamed from stripe_class. More fields added. + * store.h (struct store): Remove CLASS field. METHS field renamed + CLASS. + (STORE_IMMUTABLE_FLAGS, STORE_GENERIC_FLAGS, STORE_BACKEND_SPEC_BASE, + STORE_BACKEND_FLAGS, STORE_READONLY, STORE_HARD_READONLY, + STORE_ENFORCED): New macros. + (struct store_class): Renamed from store_meths; all uses changed. + Add ID, NAME, DECODE, SET_FLAGS, CLEAR_FLAGS, and NEXT fields. + (store_std_leaf_decode): Renamed from store_default_leaf_decode. + (store_std_leaf_create_t): New type. + (_STORE_STD_CLASS): New macro. + (struct store_argp_params): READONLY field deleted, FLAGS field added. + (store_allocate_child_encodings, store_encode_children, + store_decode_children, store_set_flags, store_clear_flags, + store_file_open, store_device_open, store_null_create, + store_std_classes, _store_add_std_class, + store_allocate_child_encodings, store_encode_children, + store_decode_children): New declarations + (store_decode, store_create, store_device_create, _store_device_create, + store_file_create, _store_file_create, store_ileave_create, + store_concat_create, _make_store): Declarations updated. + * make.c (_make_store): CLASS param removed, METHS param renamed + CLASS; all callers changed. FLAGS param added. + * stripe.c (store_ileave_create, store_concat_create): Likewise. + * file.c (store_file_create, _store_file_create): Likewise. + * device.c (store_device_create, _store_device_create): Likewise. + * argp.c (open_machdev): Function removed. + (parse_opt): Use store_device_open instead of open_machdev. + (open_file, parse_opt): Add FLAGS arg to various function calls. + * set.c (store_set_children): Function moved to kids.c. + * null.c, flags.c, std.c, kids.c: New files. + * Makefile (SRCS): Add null.c, flags.c, std.c, & kids.c. + +Sun May 12 10:12:24 1996 Miles Bader <miles@gnu.ai.mit.edu> + + * argp.c (store_parse_opt): Put result in the passed-in params struct. + Pass hook to open_{file,machdev}. + (open_machdev): Use params to determine readonly-ness. + (open_file): New function. + * store.h (store_argp): New declaration. + (struct store_argp_params): New type. + * Makefile (SRCS): Add argp.c. + + * create.c (store_create): Steal SOURCE instead of cloning it. + +Sat May 11 01:17:39 1996 Miles Bader <miles@gnu.ai.mit.edu> + + * argp.c: New file. + + * storeread.c (parse_opt): Use ARGP_ERR_UNKNOWN instead of EINVAL. + * storecat.c (parse_opt): Likewise. + +Fri May 10 13:23:36 1996 Miles Bader <miles@gnu.ai.mit.edu> + + * store.h (struct store_run): New type. + (struct store): RUNS is a vector of runs, not offsets. + (_store_device_create, _store_file_create, _make_store, + store_set_runs, store_default_leaf_decode): Update declaration. + * rdwr.c (store_find_first_run, store_next_run, store_write, + store_read): Use store_run, not off_t, vectors; tweak accordingly. + Rename variables called `RUNS' to `RUN', because although they're + always vectors, they're used more often for their first element. + * derive.c (_store_derive): Use store_run, not off_t, vectors; tweak + accordingly. + * device.c (store_device_create, _store_device_create): Likewise. + * set.c (store_set_runs): Likewise. + * storecat.c (main): Likewise. + * storeread.c (main): Likewise. + * make.c (_make_store): Likewise. + * stripe.c (store_ileave_create, store_concat_create): Likewise. + * file.c (store_file_create, _store_file_create): Likewise. + * decode.c (store_default_leaf_decode): Convert the slice of the + offset vector we're using into a vector of store_runs to pass to + CREATE. Change type of CREATE accordingly. + * encode.c (store_default_leaf_encode): Convert from the store_run + vector to a off_t vector for encoding. + + * create.c (store_create): Use the real file_get_storage_info. + (fgsi): Function removed. + + * store.h (struct store): Add CHILDREN & NUM_CHILDREN fields. + Rename RUNS_LEN to NUM_RUNS (all uses changed). + (store_set_children): New declaration. + * make.c (_make_store): Initialize CHILDREN & NUM_CHILDREN. + (store_free): Free all children too. + * clone.c (store_clone): Clone children too. + * set.c (store_set_children): New function. + * stripe.c (store_ileave_create, store_concat_create): Use + store_set_children. + (stripe_clone): Function removed. + (stripe_read, stripe_write): Get stripes from CHILDREN, not HOOK. + + * Makefile (storeread, storecat): Remove explicit dependency on + program object file. + Put include of ../Makeconf before dependencies. + +Mon May 6 15:20:53 1996 Miles Bader <miles@gnu.ai.mit.edu> + + * store.h: Move big comment describing file_get_storage_info + encoding to <hurd/hurd_types.h>. |