Age | Commit message (Collapse) | Author |
|
|
|
* store.h (STORE_STD_CLASS): Use __attribute_used__ macro
instead of `unused' attribute.
|
|
|
|
* store.h (__start_store_std_classes, __stop_store_std_classes):
Declare using __attribute__ ((weak)).
* typed.c (store_find_class): Removed `#pragma weak' for
`__stop_store_std_classes' and `__start_store_std_classes'.
|
|
* zero.c: Do not include <assert.h>.
|
|
* rdwr.c (store_write): Return EINVAL when LEN is not aligned to
STORE->block_size, instead of raising assertion failure.
(store_read): Likewise.
|
|
|
|
* typed.c (store_find_class): Use dlopen/dlclose on the names found by
looking through the list instead of passing list elements directly to
dlsym, which is not kosher.
|
|
* module.c (store_module_open): NAME that doesn't contain ':' is
not considered invalid argument, but a class name without
class-specific portion.
* typed.c (store_typed_open): When NAME is empty string, don't
invoke store_open (name + 1, ...).
|
|
2002-12-03 Marcus Brinkmann <marcus@gnu.org>
* hurd.texi (Store I/O): Add store_set_size.
libstore/
2002-10-01 Ludovic Courtès <ludovic.courtes@utbm.fr>
* store.h: New type store_set_size_meth_t: New type. New
prototype store_set_size.
(struct store_class): Added a set_size () method.
* rdwr.c (store_set_size): New function.
* file.c (file_store_set_size): New function.
(store_file_class): Add file_store_set_size.
* concat.c (concat_set_size): New function.
(store_concat_class): concat_set_size.
* copy.c (copy_set_size): New function.
(store_copy_class): copy_set_size.
* device.c (device_set_size): New function.
(store_device_class): device_set_size.
* memobj.c (memobj_set_size): New function.
(store_memobj_class): memobj_set_size.
* mvol.c (mvol_set_size): New function.
(store_mvol_class): mvol_set_size.
* nbd.c (nbd_set_size): New function.
(store_nbd_class): nbd_set_size.
* remap.c (remap_set_size): New function.
(store_remap_class): remap_set_size.
* stripe.c (stripe_set_size): New function.
(store_stripe_class): stripe_set_size.
* unknown.c (unknown_set_size): New function.
(store_unknown_class): unknown_set_size.
* zero.c (zero_set_size): New function.
(store_zero_class): zero_set_size.
|
|
* kids.c: Do not include <malloc.h>.
Include <stdlib.h>.
(store_set_children): Use memcpy, not bcopy.
Calculate SIZE correctly: STORE->children is a struct store **,
not a struct store_run *.
Reported by Moritz Schulte <moritz@duesseldorf.ccc.de>.
|
|
|
|
* store.h (struct store_enc): Use loff_t instead of off_t.
(store_enc_init, store_enc_return, store_return): Likewise.
|
|
|
|
* encode.c (store_std_leaf_encode): Do a sizeof comparison to get
`too_big' optimized out when store_enc starts using 64 bit offsets.
|
|
2002-05-20 Ognyan Kulev <ogi@fmi.uni-sofia.bg>
* Makefile: Move inclusion of ../Makeconf before using $(srcdir).
serverboot/
2002-05-20 Ognyan Kulev <ogi@fmi.uni-sofia.bg>
* Makefile: Move inclusion of ../Makeconf before using $(srcdir)
and constrain vpath directives to avoid using ../exec/exec.o.
|
|
|
|
* device.c (enforced): Use dev_status_data_t for SIZES.
(store_device_create): Likewise.
(dev_write): Do some silly magic since device.defs uses int.
|
|
|
|
* kids.c (store_open_children): Dereference pointer in isalnum call.
* set.c (store_set_runs): Fix argument type.
* kids.c (store_set_children): Likewise.
|
|
* set.c (store_set_runs): Fix argument type.
* kids.c (store_set_children): Likewise.
|
|
* module.c (open_class): Add cast to int for %* arg.
|
|
|
|
* Makefile (OBJS): Remove hack for part.o.
(parted.o parted_p.o parted_pic.o): Targets removed.
|
|
|
|
* Makefile (cleantarg): Append $(store-types:%=libstore_%.a) here.
(all): Depend on that list too.
(install): Depend on those files in $(libdir).
($(store-types:%=$(libdir)/libstore_%.a): $(libdir)/%: %): New static
pattern rule to install them.
|
|
|
|
* url.c (url_decode): Renamed to store_url_decode, made public.
(store_url_open_class): Changed use.
* store.h: Declare store_url_decode.
* decode.c (store_decode): Call store_url_decode for STORAGE_NETWORK
as a special case.
2001-12-28 Roland McGrath <roland@frob.com>
* module.c: New file.
* store.h (store_module_open, store_module_find_class,
store_module_decode): Declare them.
* argp.c (parse_opt): Leave PARSED->classes null here instead
of defaulting to store_std_classes.
(find_class): Default null class-list parameter to store_std_classes
here instead. If no matches when defaulted, try calling
store_module_open_class too.
* typed.c (store_typed_open): If no match when search list is
store_std_classes, try calling store_module_open_class too.
* url.c (find_url_class): Likewise.
* decode.c (store_decode): If no match when search list is
store_std_classes, try calling store_module_decode too.
* store.h (store_concat_class_vectors): Remove decl of nonexistent fn.
|
|
* Makefile (store-types): New variable.
(all): Depend on $(store-types:%=libstore_%.a).
(libstore_%.so.$(hurd-version)): New pattern rule.
($(store-types:%=libstore_%.a): libstore_%.a): New static pattern rule
to create `-lstore_TYPE' pseudo-objects (linker scripts) for each type.
(libstore.so-LDLIBS): New variable, adds -ldl.
(GUNZIP_OBJS, BUNZIP2_OBJS): New variables.
(UNZIP_OBJS): Variable removed, replaced by those two.
(OBJS): Update use.
(libstore_gunzip.so.$(hurd-version)): Depend on PIC $(GUNZIP_OBJS).
(libstore_bunzip2.so.$(hurd-version)): Depend on PIC $(BUNZIP2_OBJS).
* unknown.c: Add STORE_STD_CLASS decl.
* bunzip2.c: Likewise.
* copy.c: Likewise.
* device.c: Likewise.
* file.c: Likewise.
* gunzip.c: Likewise.
* memobj.c: Likewise.
* module.c: Likewise.
* mvol.c: Likewise.
* nbd.c: Likewise.
* open.c: Likewise.
* part.c: Likewise.
* remap.c: Likewise.
* stripe.c: Likewise.
* stripe.c: Likewise.
* task.c: Likewise.
* typed.c: Likewise.
* typed.c: Likewise.
* unknown.c: Likewise.
* url.c: Likewise.
* zero.c: Likewise.
2002-01-19 Roland McGrath <roland@frob.com>
* typed.c (store_find_class): New function.
(store_typed_open): Use it.
2001-12-28 Roland McGrath <roland@frob.com>
* module.c: New file.
* store.h (store_module_open, store_module_find_class,
store_module_decode): Declare them.
* argp.c (parse_opt): Leave PARSED->classes null here instead
of defaulting to store_std_classes.
(find_class): Default null class-list parameter to store_std_classes
here instead. If no matches when defaulted, try calling
store_module_open_class too.
* typed.c (store_typed_open): If no match when search list is
store_std_classes, try calling store_module_open_class too.
* url.c (find_url_class): Likewise.
* decode.c (store_decode): If no match when search list is
store_std_classes, try calling store_module_decode too.
|
|
* url.c (url_decode): Renamed to store_url_decode, made public.
(store_url_open_class): Changed use.
* store.h: Declare store_url_decode.
* decode.c (store_decode): Call store_url_decode for STORAGE_NETWORK
as a special case.
2001-12-28 Roland McGrath <roland@frob.com>
* module.c: New file.
* store.h (store_module_open, store_module_find_class,
store_module_decode): Declare them.
* argp.c (parse_opt): Leave PARSED->classes null here instead
of defaulting to store_std_classes.
(find_class): Default null class-list parameter to store_std_classes
here instead. If no matches when defaulted, try calling
store_module_open_class too.
* typed.c (store_typed_open): If no match when search list is
store_std_classes, try calling store_module_open_class too.
* url.c (find_url_class): Likewise.
* decode.c (store_decode): If no match when search list is
store_std_classes, try calling store_module_decode too.
|
|
* Makefile (store-types): New variable.
(all): Depend on $(store-types:%=libstore_%.a).
(libstore_%.so.$(hurd-version)): New pattern rule.
($(store-types:%=libstore_%.a): libstore_%.a): New static pattern rule
to create `-lstore_TYPE' pseudo-objects (linker scripts) for each type.
(libstore.so-LDLIBS): New variable, adds -ldl.
(GUNZIP_OBJS, BUNZIP2_OBJS): New variables.
(UNZIP_OBJS): Variable removed, replaced by those two.
(OBJS): Update use.
(libstore_gunzip.so.$(hurd-version)): Depend on PIC $(GUNZIP_OBJS).
(libstore_bunzip2.so.$(hurd-version)): Depend on PIC $(BUNZIP2_OBJS).
* unknown.c: Add STORE_STD_CLASS decl.
* bunzip2.c: Likewise.
* copy.c: Likewise.
* device.c: Likewise.
* file.c: Likewise.
* gunzip.c: Likewise.
* memobj.c: Likewise.
* module.c: Likewise.
* mvol.c: Likewise.
* nbd.c: Likewise.
* open.c: Likewise.
* part.c: Likewise.
* remap.c: Likewise.
* stripe.c: Likewise.
* stripe.c: Likewise.
* task.c: Likewise.
* typed.c: Likewise.
* typed.c: Likewise.
* unknown.c: Likewise.
* url.c: Likewise.
* zero.c: Likewise.
|
|
* Makefile (module-CPPFLAGS): New variable.
* module.c (STORE_SONAME_SUFFIX): Macro removed.
2002-02-08 Roland McGrath <roland@frob.com>
* Makefile (store-types): New variable.
(all): Depend on $(store-types:%=libstore_%.a).
(libstore_%.so.$(hurd-version)): New pattern rule.
($(store-types:%=libstore_%.a): libstore_%.a): New static pattern rule
to create `-lstore_TYPE' pseudo-objects (linker scripts) for each type.
(libstore.so-LDLIBS): New variable, adds -ldl.
(GUNZIP_OBJS, BUNZIP2_OBJS): New variables.
(UNZIP_OBJS): Variable removed, replaced by those two.
(OBJS): Update use.
(libstore_gunzip.so.$(hurd-version)): Depend on PIC $(GUNZIP_OBJS).
(libstore_bunzip2.so.$(hurd-version)): Depend on PIC $(BUNZIP2_OBJS).
* unknown.c: Add STORE_STD_CLASS decl.
* bunzip2.c: Likewise.
* copy.c: Likewise.
* device.c: Likewise.
* file.c: Likewise.
* gunzip.c: Likewise.
* memobj.c: Likewise.
* module.c: Likewise.
* mvol.c: Likewise.
* nbd.c: Likewise.
* open.c: Likewise.
* part.c: Likewise.
* remap.c: Likewise.
* stripe.c: Likewise.
* stripe.c: Likewise.
* task.c: Likewise.
* typed.c: Likewise.
* typed.c: Likewise.
* unknown.c: Likewise.
* url.c: Likewise.
* zero.c: Likewise.
2001-12-28 Roland McGrath <roland@frob.com>
* module.c: New file.
* store.h (store_module_open, store_module_find_class,
store_module_decode): Declare them.
* argp.c (parse_opt): Leave PARSED->classes null here instead
of defaulting to store_std_classes.
(find_class): Default null class-list parameter to store_std_classes
here instead. If no matches when defaulted, try calling
store_module_open_class too.
* typed.c (store_typed_open): If no match when search list is
store_std_classes, try calling store_module_open_class too.
* url.c (find_url_class): Likewise.
* decode.c (store_decode): If no match when search list is
store_std_classes, try calling store_module_decode too.
|
|
* Makefile (SRCS): Remove std.c.
|
|
* unzipstore.c (unzip_store): New variable IN_BUF_SIZE to hold
allocated space for IN_BUF. Use that instead IN_BUF_LEN for that
purpose if appropriate. Always update IN_BUF_LEN after a read.
2002-03-11 Roland McGrath <roland@frob.com>
* unzipstore.c: New file, broken out of bunzip2.c.
* bunzip2.c: Most code moved to unzipstore.c, which we #include.
(DO_UNZIP, UNZIP): New function, macro.
* gunzip.c: Most code deleted, now in unzipstore.c, which we #include.
(DO_UNZIP, UNZIP): New function, macro.
* Makefile (DIST_FILES): New variable, list unzipstore.c here.
|
|
* Makefile (store-types): New variable.
(all): Depend on $(store-types:%=libstore_%.a).
(libstore_%.so.$(hurd-version)): New pattern rule.
($(store-types:%=libstore_%.a): libstore_%.a): New static pattern rule
to create `-lstore_TYPE' pseudo-objects (linker scripts) for each type.
(libstore.so-LDLIBS): New variable, adds -ldl.
(GUNZIP_OBJS, BUNZIP2_OBJS): New variables.
(UNZIP_OBJS): Variable removed, replaced by those two.
(OBJS): Update use.
(libstore_gunzip.so.$(hurd-version)): Depend on PIC $(GUNZIP_OBJS).
(libstore_bunzip2.so.$(hurd-version)): Depend on PIC $(BUNZIP2_OBJS).
* unknown.c: Add STORE_STD_CLASS decl.
* bunzip2.c: Likewise.
* copy.c: Likewise.
* device.c: Likewise.
* file.c: Likewise.
* gunzip.c: Likewise.
* memobj.c: Likewise.
* module.c: Likewise.
* mvol.c: Likewise.
* nbd.c: Likewise.
* open.c: Likewise.
* part.c: Likewise.
* remap.c: Likewise.
* stripe.c: Likewise.
* stripe.c: Likewise.
* task.c: Likewise.
* typed.c: Likewise.
* typed.c: Likewise.
* unknown.c: Likewise.
* url.c: Likewise.
* zero.c: Likewise.
2002-01-19 Roland McGrath <roland@frob.com>
* url.c (find_url_class): Function removed.
(store_url_open): Use store_typed_open after validating syntax.
(store_url_decode): Use store_find_class and store_module_find_class.
* url.c (url_decode): Renamed to store_url_decode, made public.
(store_url_open_class): Changed use.
* store.h: Declare store_url_decode.
* decode.c (store_decode): Call store_url_decode for STORAGE_NETWORK
as a special case.
2001-12-28 Roland McGrath <roland@frob.com>
* module.c: New file.
* store.h (store_module_open, store_module_find_class,
store_module_decode): Declare them.
* argp.c (parse_opt): Leave PARSED->classes null here instead
of defaulting to store_std_classes.
(find_class): Default null class-list parameter to store_std_classes
here instead. If no matches when defaulted, try calling
store_module_open_class too.
* typed.c (store_typed_open): If no match when search list is
store_std_classes, try calling store_module_open_class too.
* url.c (find_url_class): Likewise.
* decode.c (store_decode): If no match when search list is
store_std_classes, try calling store_module_decode too.
|
|
* unzipstore.c: New file, broken out of bunzip2.c.
* bunzip2.c: Most code moved to unzipstore.c, which we #include.
(DO_UNZIP, UNZIP): New function, macro.
* gunzip.c: Most code deleted, now in unzipstore.c, which we #include.
(DO_UNZIP, UNZIP): New function, macro.
* Makefile (DIST_FILES): New variable, list unzipstore.c here.
2002-02-08 Roland McGrath <roland@frob.com>
* Makefile (store-types): New variable.
(all): Depend on $(store-types:%=libstore_%.a).
(libstore_%.so.$(hurd-version)): New pattern rule.
($(store-types:%=libstore_%.a): libstore_%.a): New static pattern rule
to create `-lstore_TYPE' pseudo-objects (linker scripts) for each type.
(libstore.so-LDLIBS): New variable, adds -ldl.
(GUNZIP_OBJS, BUNZIP2_OBJS): New variables.
(UNZIP_OBJS): Variable removed, replaced by those two.
(OBJS): Update use.
(libstore_gunzip.so.$(hurd-version)): Depend on PIC $(GUNZIP_OBJS).
(libstore_bunzip2.so.$(hurd-version)): Depend on PIC $(BUNZIP2_OBJS).
* unknown.c: Add STORE_STD_CLASS decl.
* bunzip2.c: Likewise.
* copy.c: Likewise.
* device.c: Likewise.
* file.c: Likewise.
* gunzip.c: Likewise.
* memobj.c: Likewise.
* module.c: Likewise.
* mvol.c: Likewise.
* nbd.c: Likewise.
* open.c: Likewise.
* part.c: Likewise.
* remap.c: Likewise.
* stripe.c: Likewise.
* stripe.c: Likewise.
* task.c: Likewise.
* typed.c: Likewise.
* typed.c: Likewise.
* unknown.c: Likewise.
* url.c: Likewise.
* zero.c: Likewise.
|
|
* argp.c (DEFAULT_STORE_TYPE): Macro removed.
(DEFAULT_STORE_CLASS): New macro replaces it.
(parse_opt): Update the use.
2001-12-28 Roland McGrath <roland@frob.com>
* module.c: New file.
* store.h (store_module_open, store_module_find_class,
store_module_decode): Declare them.
* argp.c (parse_opt): Leave PARSED->classes null here instead
of defaulting to store_std_classes.
(find_class): Default null class-list parameter to store_std_classes
here instead. If no matches when defaulted, try calling
store_module_open_class too.
* typed.c (store_typed_open): If no match when search list is
store_std_classes, try calling store_module_open_class too.
* url.c (find_url_class): Likewise.
* decode.c (store_decode): If no match when search list is
store_std_classes, try calling store_module_decode too.
|
|
* Makefile ($(store-types:%=libstore_%.a)): Create object files with
the undefined symbol rather than linker scripts.
2002-03-11 Roland McGrath <roland@frob.com>
* unzipstore.c: New file, broken out of bunzip2.c.
* bunzip2.c: Most code moved to unzipstore.c, which we #include.
(DO_UNZIP, UNZIP): New function, macro.
* gunzip.c: Most code deleted, now in unzipstore.c, which we #include.
(DO_UNZIP, UNZIP): New function, macro.
* Makefile (DIST_FILES): New variable, list unzipstore.c here.
* Makefile (module-CPPFLAGS): New variable.
* module.c (STORE_SONAME_SUFFIX): Macro removed.
* Makefile (store-types): Add missing types here.
(SRCS): Remove all those from here and use $(store-types:=.c) instead.
2002-02-08 Roland McGrath <roland@frob.com>
* Makefile (store-types): New variable.
(all): Depend on $(store-types:%=libstore_%.a).
(libstore_%.so.$(hurd-version)): New pattern rule.
($(store-types:%=libstore_%.a): libstore_%.a): New static pattern rule
to create `-lstore_TYPE' pseudo-objects (linker scripts) for each type.
(libstore.so-LDLIBS): New variable, adds -ldl.
(GUNZIP_OBJS, BUNZIP2_OBJS): New variables.
(UNZIP_OBJS): Variable removed, replaced by those two.
(OBJS): Update use.
(libstore_gunzip.so.$(hurd-version)): Depend on PIC $(GUNZIP_OBJS).
(libstore_bunzip2.so.$(hurd-version)): Depend on PIC $(BUNZIP2_OBJS).
* unknown.c: Add STORE_STD_CLASS decl.
* bunzip2.c: Likewise.
* copy.c: Likewise.
* device.c: Likewise.
* file.c: Likewise.
* gunzip.c: Likewise.
* memobj.c: Likewise.
* module.c: Likewise.
* mvol.c: Likewise.
* nbd.c: Likewise.
* open.c: Likewise.
* part.c: Likewise.
* remap.c: Likewise.
* stripe.c: Likewise.
* stripe.c: Likewise.
* task.c: Likewise.
* typed.c: Likewise.
* typed.c: Likewise.
* unknown.c: Likewise.
* url.c: Likewise.
* zero.c: Likewise.
2001-12-28 Roland McGrath <roland@frob.com>
* Makefile (SRCS): Remove std.c.
|
|
* rdwr.c (store_read): Truncate amount to be read to size of
store. Use memcpy rather than bcopy.
(store_write): Return EIO if caller tries to write over the end of
the store.
* copy.c (copy_read): Do not multiply LEN returned from vm_read
with vm_page_size.
|
|
* stripe.c (store_concat_class): Add store_concat_open.
(store_concat_create): Do not multiply NUM_STORES with 2 to get
the number of runs.
* kids.c (store_allocate_child_encodings): Call allocate_encoding
on child store K, not on STORE.
(store_encode_children): Likewise.
* decode.c (store_std_leaf_decode): Increment ENC->cur_data by
NAME_LEN and MISC_LEN as appropriate.
|
|
|
|
* device.c (dev_map): Pass proper OFFSET and SIZE params to device_map.
|
|
|
|
Support explicit open of unknown store (with no name), i.e. -Tunknown.
* unknown.c (unknown_allocate_encoding): Return EOPNOTSUPP
if STORE->hook is null.
(unknown_encode): Likewise.
(unknown_cleanup): Do nothing if STORE->hook if is null.
(unknown_clone): Likewise.
(unknown_validate_name, unknown_open): New functions.
(store_unknown_class): Use them.
|
|
|
|
* nbd.c (htonll): Make this a macro using bswap_64 from <byteswap.h>.
|
|
|
|
* url.c (url_decode): Don't clobber *ENC in the dummy run.
|
|
|
|
* nbd.c (store_nbd_open): Make sure the store's name always
starts with the "nbd://" prefix.
|