CVSROOT: /sources/hurd
Module name: hurd
Branch: hammy-libchannel-branch
Changes by: Carl Fredrik Hammar <hammy> 07/08/20 14:17:34
Modified files:
libchannel : ChangeLog Makefile channel.c channel.h hub.c
libchannel/tests: test-1.c
Added files:
libchannel : argp.c broadcast.c control.c fetch.c file.c
kids.c module.c query.c tee.c typed.c
Log message:
2007-08-20 Carl Fredrik Hammar <[EMAIL PROTECTED]>
* Makefile: Rework libstores Makefile.
* tee.c: New file.
* broadcast.c: New file.
* module.c: New file.
* typed.c: New file.
* kids.c: New file.
* control.c: New file.
* fetch.c: New file with dummy implementation.
* file.c: New file.
* argp.c: New file.
* query.c: New file.
* channel.h: Include `cthreads.h'.
(CHANNEL_NO_FILEIO): New flag.
(CHANNEL_ENFORCED): New flag.
(CHANNEL_GENERIC_FLAGS): Add `CHANNEL_NO_FILEIO' and
`CHANNEL_ENFORCED'.
(struct channel): New field `class_hook'.
(struct channel): Add comments for hooks.
(struct channel_hub): New field `lock'.
(struct channel_hub): Fixed comment for `hook'.
(struct channel_hub): New fields `children' and `num_children'.
(struct channel_hub): New field `name'.
(struct channel_class): New method `flush'.
(struct channel_class): New method `control_demuxer'.
(struct channel_class): Move `clear_hub'.
(struct channel_class): New method `validate_name'.
(struct channel_class): New method `create'.
(channel_write): Drop const qualifier from `buf' parameter of
`write'.
(struct channel_class): Drop const qualifier from `buf'
parameter
of `write'.
(channel_alloc_hub): Add `name' parameter.
(channel_tee_class): New class.
(channel_broadcast_class): New class.
(channel_typed_class): New class.
(channel_module_class): New class.
(channel_query_class): New class.
(channel_find_class): New function.
(channel_create_tee_hub): New function.
(channel_create_broadcast_hub): New function.
(channel_create_module_hub): New function.
(channel_create_typed_hub): New function.
(channel_create_file_hub): New function.
(channel_create_query_hub): New function.
(channel_fetch_hub): New function.
(channel_file_class): New class.
(channel_module_find_class): New function.
(channel_set_children): New function.
(channel_children_name): New function.
(channel_set_child_flags): New function.
(channel_clear_child_flags): New function.
(channel_create_hub_children): New function.
(channel_control_demuxer): New function.
(channel_begin_using_channel): New function.
(channel_end_using_channel): New function.
(channel_set_hub_name): New function.
(CHANNEL_STD_CLASS): New macro.
(__start_channel_std_classes): New variable.
(__stop_channel_std_classes): New variable.
(channel_argp): New variable.
(struct channel_argp_params): New struct.
(struct channel_parsed): New opaque struct.
(channel_parsed_free): New function.
(channel_create_parsed_hub): New function.
(channel_parsed_append_args): New function.
(channel_parsed_name): New function.
(channel_flush): New function.
* channel.c (channel_alloc): Zero `user_hook'.
(channel_flush): New function `channel_flush'.
(channel_open): Set CHANNEL_READONLY and/or
CHANNEL_WRITEONLY if respective is set in hub.
(channel_write): Drop const qualifier from
`buf' parameter of `write'.
* hub.c (channel_alloc_hub): Set CHANNEL_READONLY if
CHANNEL_HARD_READONLY is set. Include `string.h'.
(channel_alloc_hub): Add `name' parameter and set `name' field.
(channel_alloc_hub): Initialize `lock'.
(channel_alloc_hub): Initialize `children' and num_children'.
(channel_alloc_hub): Set CHANNEL_WRITEONLY if
CHANNEL_HARD_WRITEONLY is set.
(channel_free_hub): Clear `lock'.
(channel_free_hub): Free `children'.
(channel_free_hub): Free `name'.
(channel_set_hub_name): New function.
* tests/test-1.c (triv_fifo_read): Use `size_t' instead of
`mach_type_number_t'.
(triv_fifo_write): Likewise.
(triv_fifo_write): Drop const qualifier.
CVSWeb URLs:
http://cvs.savannah.gnu.org/viewcvs/hurd/libchannel/ChangeLog?cvsroot=hurd&only_with_tag=hammy-libchannel-branch&r1=1.1.2.4&r2=1.1.2.5
http://cvs.savannah.gnu.org/viewcvs/hurd/libchannel/Makefile?cvsroot=hurd&only_with_tag=hammy-libchannel-branch&r1=1.1.2.3&r2=1.1.2.4
http://cvs.savannah.gnu.org/viewcvs/hurd/libchannel/channel.c?cvsroot=hurd&only_with_tag=hammy-libchannel-branch&r1=1.1.2.5&r2=1.1.2.6
http://cvs.savannah.gnu.org/viewcvs/hurd/libchannel/channel.h?cvsroot=hurd&only_with_tag=hammy-libchannel-branch&r1=1.1.2.5&r2=1.1.2.6
http://cvs.savannah.gnu.org/viewcvs/hurd/libchannel/hub.c?cvsroot=hurd&only_with_tag=hammy-libchannel-branch&r1=1.1.2.2&r2=1.1.2.3
http://cvs.savannah.gnu.org/viewcvs/hurd/libchannel/argp.c?cvsroot=hurd&only_with_tag=hammy-libchannel-branch&rev=1.1.2.1
http://cvs.savannah.gnu.org/viewcvs/hurd/libchannel/broadcast.c?cvsroot=hurd&only_with_tag=hammy-libchannel-branch&rev=1.1.2.1
http://cvs.savannah.gnu.org/viewcvs/hurd/libchannel/control.c?cvsroot=hurd&only_with_tag=hammy-libchannel-branch&rev=1.1.2.1
http://cvs.savannah.gnu.org/viewcvs/hurd/libchannel/fetch.c?cvsroot=hurd&only_with_tag=hammy-libchannel-branch&rev=1.1.2.1
http://cvs.savannah.gnu.org/viewcvs/hurd/libchannel/file.c?cvsroot=hurd&only_with_tag=hammy-libchannel-branch&rev=1.1.2.1
http://cvs.savannah.gnu.org/viewcvs/hurd/libchannel/kids.c?cvsroot=hurd&only_with_tag=hammy-libchannel-branch&rev=1.1.2.1
http://cvs.savannah.gnu.org/viewcvs/hurd/libchannel/module.c?cvsroot=hurd&only_with_tag=hammy-libchannel-branch&rev=1.1.2.1
http://cvs.savannah.gnu.org/viewcvs/hurd/libchannel/query.c?cvsroot=hurd&only_with_tag=hammy-libchannel-branch&rev=1.1.2.1
http://cvs.savannah.gnu.org/viewcvs/hurd/libchannel/tee.c?cvsroot=hurd&only_with_tag=hammy-libchannel-branch&rev=1.1.2.1
http://cvs.savannah.gnu.org/viewcvs/hurd/libchannel/typed.c?cvsroot=hurd&only_with_tag=hammy-libchannel-branch&rev=1.1.2.1
http://cvs.savannah.gnu.org/viewcvs/hurd/libchannel/tests/test-1.c?cvsroot=hurd&only_with_tag=hammy-libchannel-branch&r1=1.1.2.2&r2=1.1.2.3
_______________________________________________
Commit-hurd mailing list
[email protected]
http://lists.gnu.org/mailman/listinfo/commit-hurd