diff --git a/ChangeLog b/ChangeLog index 5eed2146d10b119aab7df8529790dd6fa9070865..c2bb8b82121284825bff4667170d035722a74b5e 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,126 @@ +2003-08-20 Per Cederqvist + + Keep track of the connection that is creating an aux-item, so that + ENA_C() and text_read_access() can be used. Get rid of broken + concept "owner", and introduced "subordinate" instead. (Bug 334). + Some other aux-item-related code cleanup. + * src/server/aux-items.h (Aux_item_validation_data): Removed + item_creator, object_creator and owner_check. Added + creating_conn and subordinate. Placed add_to_list, + start_looking_at and object_type inside #if 0..#endif, since they + are not currently used. + (aux_inherit_items):Removed arguments target_creator, creating + and object_type. Added argument subordinate. Changed type of + arguments object_no and object, since we know that they are a + Text_no and Text_stat, respectively. + (check_delete_aux_item_list): Renamed the "owner" argument + "subordinate". + (text_stat_check_add_aux_item): Removed the item_creator and + creating arguments. Added the creating_conn argument. + (conf_stat_check_add_aux_item_list): Ditto. + (system_check_add_aux_item_list): Ditto. + (conf_stat_check_add_aux_item): Declaration for undefined and + unused function removed. + (conf_stat_add_aux_item): Ditto. + * src/server/aux-items.c (aux_item_validate): Return Success, not + Bool. All callers updated. + (aux_item_add_perm): Removed the arguments item_creator, + object_creator and owner_check. Added the arguments creating_conn + and subordinate. All callers updated. Simplified the code. Use + is_supervisor() instead of is_strictly_supervisor() where + appropriate. Use the supplied connection instead of checking that + ACTPERS is the item_creator. Adjusted for the new contents of + Aux_item_validation_data. + (aux_inherit_items): Removed arguments target_creator, creating + and object_type. Added argument subordinate. Changed type of + arguments object_no and object, since we know that they are a + Text_no and Text_stat, respectively. + (filter_aux_item_list): Assert that the viewer_conn argument is + non-NULL. + (check_delete_aux_item_list): Renamed the "owner" argument + "subordinate". + (text_stat_check_add_aux_item_list): Removed the item_creator and + creating arguments. Added the creating_conn argument, and assert + it is non-NULL. + (conf_stat_check_add_aux_item_list): Replaced the "creator" + argument with "creating_conn". Argument assertions added. + (system_check_add_aux_item_list): Ditto. + (aux_item_validate_existing_text): Changed return type from Bool + to Success. Use person_text_read_access() only when necessary, + and add a comment explaining why it might happen. + * src/server/text.c (create_text_add_aux): Adjusted to new API of + aux_inherit_items(). + (do_create_text): Adjusted to new API of + text_stat_check_add_aux_item_list(). + (modify_text_info): Ditto. + * src/server/person.c (create_person_generic): Adjusted to new API + of conf_stat_check_add_aux_item_list(). + * src/server/manipulate.h (text_read_access): Docstring updated. + (person_text_read_access): Docstring added. + * src/server/conference.c (do_create_conf): New argument: + creating_connection. All callers updated. + (modify_conf_info): Adjusted to new API of + check_delete_aux_item_list() and + conf_stat_check_add_aux_item_list(). + * src/server/admin.c (modify_system_info): Adjusted to new API of + system_check_add_aux_item_list(). + * src/server/testsuite/lyskomd.0/24.exp: Use good_bad_expect + instead of a "if {0}" construct. Don't expect it to fail. Fixed + a broken test outcome. + + Added code to diagnose Success vs. Bool mixups. + * HACKING (Release generation): Use TYPE_CHECK_COMPILATION for + increased quality assurance. + * src/include/misc-types.h (TYPE_CHECK_COMPILATION): New + compilation switch. + (SUCCESS_AS_PTR): Ditto. + (Bool): Provide a pointer-based non-working implementation, that + can be used for compile-time checks, but not for running code. + (Success): Provide a pointer-based implementation. Switch to + using it, at least for now; this might give us good warnings from + the compilers. + * src/server/misc-types.c: New file. Implementation of the types + in misc-type.h. + * src/server/Makefile.am (libcheck_a_SOURCES): Added + misc-types.c. + (lyskomd_SOURCES): Ditto. + (komrunning_SOURCES): Ditto. + (updateLysKOM_SOURCES): Ditto. + (dbck_SOURCES): Ditto. + (splitkomdb_SOURCES): Ditto. + * src/server/testsuite/Makefile.am (test_l2g_LDADD): libcheck.a + must be linked twice. + (get_time_often_LDADD): Ditto. + + Make etags find our documentation. + * Makefile.am (AM_ETAGSFLAGS): Use --declarations, so that the + tags command finds the documentation. + + Include an Emacs indentation style for our code. + * doc/kom-style.el ("KOM"): New C style for c-add-style. This + sets up proper indentation for Emacs. + * doc/Makefile.am (EXTRA_DIST): Added kom-style.el. + + Added more hacking documentation. + * doc/lyskomd.texi (The Database): Mention that untranslated + Swedish text exists. + (local-to-global): Ditto. + (Modifying Stored Types): Mention that dbck needs to be updated. + (Coding conventions): New section. + + Document that send async-deleted-text, async-new-text, + async-new-text-old, async-new-recipient and async-sub-recipient + are sent to recipients of text linked to the relevant text. + The functionality was added 2003-01-13. (Bug 59). + * doc/Protocol-A.texi (Aux-Item Inheritance): Added a missing + parenthesis. + (async-new-text-old): Document that recipients of linked texts + also gets this message. + (async-deleted-text): Ditto. + (async-new-text): Ditto. + (async-new-recipient): Ditto. + (async-sub-recipient): Ditto. + 2003-08-19 Per Cederqvist Test permissons for setting the canonical-name aux-item.