2.0.32 2008-07-07 * Allow require then declare in the source policy from Joshua Brindle. 2.0.31 2008-06-13 * Fix mls_semantic_level_expand() to handle a user require w/o MLS information from Stephen Smalley. 2.0.30 2008-06-06 * Fix endianness bug in the handling of network node addresses from Stephen Smalley. Only affects big endian platforms. Bug reported by John Weeks of Sun upon policy mismatch between x86 and sparc. 2.0.29 2008-05-27 * Merge user and role mapping support from Joshua Brindle. 2.0.28 2008-05-05 * Fix mls_level_convert() to gracefully handle an empty user declaration/require from Stephen Smalley. 2.0.27 2008-04-18 * Belatedly merge test for policy downgrade from Todd Miller. 2.0.26 2008-03-24 * Add permissive domain support from Eric Paris. 2.0.25 2008-03-04 * Drop unused ->buffer field from struct policy_file. 2.0.24 2008-03-04 * Add policy_file_init() initalizer for struct policy_file and use it, from Todd C. Miller. 2.0.23 2008-02-28 * Accept "Flask" as an alternate identifier string in kernel policies from Stephen Smalley. 2.0.22 2008-02-28 * Add support for open_perms policy capability from Eric Paris. 2.0.21 2008-02-20 * Fix invalid memory allocation in policydb_index_others() from Jason Tang. 2.0.20 2008-02-04 * Port of Yuichi Nakamura's tune avtab to reduce memory usage patch from the kernel avtab to libsepol from Stephen Smalley. 2.0.19 2008-02-02 * Add support for consuming avrule_blocks during expansion to reduce peak memory usage from Joshua Brindle. 2.0.18 2008-01-02 * Added support for policy capabilities from Todd Miller. 2.0.17 2007-12-21 * Prevent generation of policy.18 with MLS enabled from Todd Miller. 2.0.16 2007-12-07 * print module magic number in hex on mismatch, from Todd Miller. 2.0.15 2007-11-29 * clarify and reduce neverallow error reporting from Stephen Smalley. 2.0.14 2007-11-05 * Reject self aliasing at link time from Stephen Smalley. 2.0.13 2007-11-05 * Allow handle_unknown in base to be overridden by semanage.conf from Stephen Smalley. 2.0.12 2007-10-11 * Fixed bug in require checking from Stephen Smalley. * Added user hierarchy checking from Todd Miller. 2.0.11 2007-09-24 * Pass CFLAGS to CC even on link command, per Dennis Gilmore. 2.0.10 2007-09-18 * Merged support for the handle_unknown policydb flag from Eric Paris. 2.0.9 2007-08-29 * Moved next_entry and put_entry out-of-line to reduce code size from Ulrich Drepper. 2.0.8 2007-08-28 * Fixed module_package_read_offsets bug introduced by the prior patch. 2.0.7 2007-08-23 * Eliminate unaligned accesses from policy reading code from Stephen Smalley. 2.0.6 2007-08-16 * Allow dontaudits to be turned off during policy expansion from Joshua Brindle. 2.0.5 2007-08-01 * Fix sepol_context_clone to handle a NULL context correctly. This happens for e.g. semanage_fcontext_set_con(sh, fcontext, NULL) to set the file context entry to "<>". 2.0.4 2007-06-20 * Merged error handling patch from Eamon Walsh. 2.0.3 2007-04-13 * Merged add boolmap argument to expand_module_avrules() from Chris PeBenito. 2.0.2 2007-03-30 * Merged fix from Karl to remap booleans at expand time to avoid holes in the symbol table. 2.0.1 2007-02-06 * Merged libsepol segfault fix from Stephen Smalley for when sensitivities are required but not present in the base. 2.0.0 2007-02-01 * Merged patch to add errcodes.h to libsepol by Karl MacMillan. 1.16.0 2007-01-18 * Updated version for stable branch. 1.15.3 2006-11-27 * Merged patch to compile wit -fPIC instead of -fpic from Manoj Srivastava to prevent hitting the global offest table limit. Patch changed to include libselinux and libsemanage in addition to libselinux. 1.15.2 2006-10-31 * Merged fix from Karl MacMillan for a segfault when linking non-MLS modules with users in them. 1.15.1 2006-10-24 * Merged fix for version comparison that was preventing range transition rules from being written for a version 5 base policy from Darrel Goeddel. 1.14 2006-10-17 * Updated version for release. 1.12.28 2006-09-28 * Build libsepol's static object files with -fpic 1.12.27 2006-09-28 * Merged mls user and range_transition support in modules from Darrel Goeddel 1.12.26 2006-09-05 * Merged range transition enhancements and user format changes Darrel Goeddel 1.12.25 2006-08-24 * Merged conditionally expand neverallows patch from Jeremy Mowery. * Merged refactor expander patch from Jeremy Mowery. 1.12.24 2006-08-03 * Merged libsepol unit tests from Joshua Brindle. 1.12.23 2006-08-03 * Merged symtab datum patch from Karl MacMillan. 1.12.22 2006-08-03 * Merged netfilter contexts support from Chris PeBenito. 1.12.21 2006-07-28 * Merged helpful hierarchy check errors patch from Joshua Brindle. 1.12.20 2006-07-25 * Merged semodule_deps patch from Karl MacMillan. This adds source module names to the avrule decls. 1.12.19 2006-06-29 * Lindent. 1.12.18 2006-06-26 * Merged optionals in base take 2 patch set from Joshua Brindle. 1.12.17 2006-05-30 * Revert 1.12.16. 1.12.16 2006-05-30 * Merged cleaner fix for bool_ids overflow from Karl MacMillan, replacing the prior patch. 1.12.15 2006-05-30 * Merged fixes for several memory leaks in the error paths during policy read from Serge Hallyn. 1.12.14 2006-05-25 * Fixed bool_ids overflow bug in cond_node_find and cond_copy_list, based on bug report and suggested fix by Cedric Roux. 1.12.13 2006-05-24 * Merged sens_copy_callback, check_role_hierarchy_callback, and node_from_record fixes from Serge Hallyn. 1.12.12 2006-05-22 * Added sepol_policydb_compat_net() interface for testing whether a policy requires the compatibility support for network checks to be enabled in the kernel. 1.12.11 2006-05-17 * Merged patch to initialize sym_val_to_name arrays from Kevin Carr. Reworked to use calloc in the first place, and converted some other malloc/memset pairs to calloc calls. 1.12.10 2006-05-08 * Merged patch to revert role/user decl upgrade from Karl MacMillan. 1.12.9 2006-05-08 * Dropped tests from all Makefile target. 1.12.8 2006-05-05 * Merged fix warnings patch from Karl MacMillan. 1.12.7 2006-05-05 * Merged libsepol test framework patch from Karl MacMillan. 1.12.6 2006-04-28 * Fixed cond_normalize to traverse the entire cond list at link time. 1.12.5 2006-04-03 * Merged fix for leak of optional package sections from Ivan Gyurdiev. 1.12.4 2006-03-29 * Generalize test for bitmap overflow in ebitmap_set_bit. 1.12.3 2006-03-27 * Fixed attr_convert_callback and expand_convert_type_set typemap bug. 1.12.2 2006-03-24 * Fixed avrule_block_write num_decls endian bug. 1.12.1 2006-03-20 * Fixed sepol_module_package_write buffer overflow bug. 1.12 2006-03-14 * Updated version for release. 1.11.20 2006-03-08 * Merged cond_evaluate_expr fix from Serge Hallyn (IBM). * Fixed bug in copy_avrule_list reported by Ivan Gyurdiev. 1.11.19 2006-02-21 * Merged sepol_policydb_mls_enabled interface and error handling changes from Ivan Gyurdiev. 1.11.18 2006-02-16 * Merged node_expand_addr bugfix and node_compare* change from Ivan Gyurdiev. 1.11.17 2006-02-15 * Merged nodes, ports: always prepend patch from Ivan Gyurdiev. * Merged bug fix patch from Ivan Gyurdiev. 1.11.16 2006-02-14 * Added a defined flag to level_datum_t for use by checkpolicy. 1.11.15 2006-02-14 * Merged nodecon support patch from Ivan Gyurdiev. * Merged cleanups patch from Ivan Gyurdiev. 1.11.14 2006-02-13 * Merged optionals in base patch from Joshua Brindle. 1.11.13 2006-02-07 * Merged seuser/user_extra support patch from Joshua Brindle. * Merged fix patch from Ivan Gyurdiev. 1.11.12 2006-02-02 * Merged clone record on set_con patch from Ivan Gyurdiev. 1.11.11 2006-02-01 * Merged assertion copying bugfix from Joshua Brindle. * Merged sepol_av_to_string patch from Joshua Brindle. 1.11.10 2006-01-30 * Merged cond_expr mapping and package section count bug fixes from Joshua Brindle. * Merged improve port/fcontext API patch from Ivan Gyurdiev. * Merged fixes for overflow bugs on 64-bit from Ivan Gyurdiev. 1.11.9 2006-01-12 * Merged size_t -> unsigned int patch from Ivan Gyurdiev. 1.11.8 2006-01-09 * Merged 2nd const in APIs patch from Ivan Gyurdiev. 1.11.7 2006-01-06 * Merged const in APIs patch from Ivan Gyurdiev. * Merged compare2 function patch from Ivan Gyurdiev. 1.11.6 2006-01-06 * Fixed hierarchy checker to only check allow rules. 1.11.5 2006-01-05 * Merged further fixes from Russell Coker, specifically: - av_to_string overflow checking - sepol_context_to_string error handling - hierarchy checking memory leak fixes and optimizations - avrule_block_read variable initialization * Marked deprecated code in genbools and genusers. 1.11.4 2006-01-05 * Merged bugfix for sepol_port_modify from Russell Coker. 1.11.3 2006-01-05 * Fixed bug in sepol_iface_modify error path noted by Ivan Gyurdiev. * Merged port ordering patch from Ivan Gyurdiev. 1.11.2 2006-01-04 * Merged patch series from Ivan Gyurdiev. This includes patches to: - support ordering of records in compare function - enable port interfaces - add interfaces for context validity and range checks - add include guards 1.11.1 2005-12-16 * Fixed mls_range_cpy bug. 1.10 2005-12-07 * Updated version for release. 1.9.42 2005-12-05 * Dropped handle from user_del_role interface. 1.9.41 2005-11-28 * Merged remove defrole from sepol patch from Ivan Gyurdiev. 1.9.40 2005-11-15 * Merged module function and map file cleanup from Ivan Gyurdiev. * Merged MLS and genusers cleanups from Ivan Gyurdiev. 1.9.39 2005-11-09 Prepare for removal of booleans* and *.users files. * Cleaned up sepol_genbools to not regenerate the image if there were no changes in the boolean values, including the degenerate case where there are no booleans or booleans.local files. * Cleaned up sepol_genusers to not warn on missing local.users. 1.9.38 2005-11-08 * Removed sepol_port_* from libsepol.map, as the port interfaces are not yet stable. 1.9.37 2005-11-04 * Merged context destroy cleanup patch from Ivan Gyurdiev. 1.9.36 2005-11-03 * Merged context_to_string interface change patch from Ivan Gyurdiev. 1.9.35 2005-11-01 * Added src/dso.h and src/*_internal.h. Added hidden_def for exported symbols used within libsepol. Added hidden for symbols that should not be exported by the wildcards in libsepol.map. 1.9.34 2005-10-31 * Merged record interface, record bugfix, and set_roles patches from Ivan Gyurdiev. 1.9.33 2005-10-27 * Merged count specification change from Ivan Gyurdiev. 1.9.32 2005-10-26 * Added further checking and error reporting to sepol_module_package_read and _info. 1.9.31 2005-10-26 * Merged sepol handle passing, DEBUG conversion, and memory leak fix patches from Ivan Gyurdiev. 1.9.30 2005-10-25 * Removed processing of system.users from sepol_genusers and dropped delusers logic. 1.9.29 2005-10-25 * Removed policydb_destroy from error path of policydb_read, since create/init/destroy/free of policydb is handled by the caller now. * Fixed sepol_module_package_read to handle a failed policydb_read properly. 1.9.28 2005-10-25 * Merged query/exists and count patches from Ivan Gyurdiev. 1.9.27 2005-10-25 * Merged fix for pruned types in expand code from Joshua Brindle. * Merged new module package format code from Joshua Brindle. 1.9.26 2005-10-24 * Merged context interface cleanup, record conversion code, key passing, and bug fix patches from Ivan Gyurdiev. 1.9.25 2005-10-21 * Merged users cleanup patch from Ivan Gyurdiev. 1.9.24 2005-10-21 * Merged user record memory leak fix from Ivan Gyurdiev. * Merged reorganize users patch from Ivan Gyurdiev. 1.9.23 2005-10-19 * Added check flag to expand_module() to control assertion and hierarchy checking on expansion. 1.9.22 2005-10-19 * Reworked check_assertions() and hierarchy_check_constraints() to take handles and use callback-based error reporting. * Changed expand_module() to call check_assertions() and hierarchy_check_constraints() prior to returning the expanded policy. 1.9.21 2005-10-18 * Changed sepol_module_package_set_file_contexts to copy the file contexts data since it is internally managed. 1.9.20 2005-10-18 * Added sepol_policy_file_set_handle interface to associate a handle with a policy file. * Added handle argument to policydb_from_image/to_image. * Added sepol_module_package_set_file_contexts interface. * Dropped sepol_module_package_create_file interface. * Reworked policydb_read/write, policydb_from_image/to_image, and sepol_module_package_read/write to use callback-based error reporting system rather than DEBUG. 1.9.19 2005-10-17 * Reworked link_packages, link_modules, and expand_module to use callback-based error reporting system rather than error buffering. 1.9.18 2005-10-14 * Merged conditional expression mapping fix in the module linking code from Joshua Brindle. 1.9.17 2005-10-13 * Hid sepol_module_package type definition, and added get interfaces. 1.9.16 2005-10-13 * Merged new callback-based error reporting system from Ivan Gyurdiev. 1.9.15 2005-10-13 * Merged support for require blocks inside conditionals from Joshua Brindle (Tresys). 1.9.14 2005-10-07 * Fixed use of policydb_from_image/to_image to ensure proper init of policydb. 1.9.13 2005-10-07 * Isolated policydb internal headers under . These headers should only be used by users of the static libsepol. Created new with new public types and interfaces for shared libsepol. Created new with public types and interfaces moved or wrapped from old module.h, link.h, and expand.h, adjusted for new public types for policydb and policy_file. Added public interfaces to libsepol.map. Some implementation changes visible to users of the static libsepol: 1) policydb_read no longer calls policydb_init. Caller must do so first. 2) policydb_init no longer takes policy_type argument. Caller must set policy_type separately. 3) expand_module automatically enables the global branch. Caller no longer needs to do so. 4) policydb_write uses the policy_type and policyvers from the policydb itself, and sepol_set_policyvers() has been removed. 1.9.12 2005-10-06 * Merged function renaming and static cleanup from Ivan Gyurdiev. 1.9.11 2005-10-05 * Merged bug fix for check_assertions handling of no assertions from Joshua Brindle (Tresys). 1.9.10 2005-10-04 * Merged iterate patch from Ivan Gyurdiev. 1.9.9 2005-10-03 * Merged MLS in modules patch from Joshua Brindle (Tresys). 1.9.8 2005-09-30 * Merged pointer typedef elimination patch from Ivan Gyurdiev. * Merged user list function, new mls functions, and bugfix patch from Ivan Gyurdiev. 1.9.7 2005-09-28 * Merged sepol_get_num_roles fix from Karl MacMillan (Tresys). 1.9.6 2005-09-23 * Merged bug fix patches from Joshua Brindle (Tresys). 1.9.5 2005-09-21 * Merged boolean record and memory leak fix patches from Ivan Gyurdiev. 1.9.4 2005-09-19 * Merged interface record patch from Ivan Gyurdiev. 1.9.3 2005-09-14 * Merged fix for sepol_enable/disable_debug from Ivan Gyurdiev. 1.9.2 2005-09-14 * Merged stddef.h patch and debug conversion patch from Ivan Gyurdiev. 1.9.1 2005-09-09 * Fixed expand_avtab and expand_cond_av_list to keep separate entries with identical keys but different enabled flags. 1.8 2005-09-06 * Updated version for release. 1.7.24 2005-08-31 * Fixed symtab_insert return value for duplicate declarations. 1.7.23 2005-08-31 * Merged fix for memory error in policy_module_destroy from Jason Tang (Tresys). 1.7.22 2005-08-26 * Merged fix for memory leak in sepol_context_to_sid from Jason Tang (Tresys). 1.7.21 2005-08-25 * Merged fixes for resource leaks on error paths and change to scope_destroy from Joshua Brindle (Tresys). 1.7.20 2005-08-23 * Merged more fixes for resource leaks on error paths from Serge Hallyn (IBM). Bugs found by Coverity. 1.7.19 2005-08-19 * Changed to treat all type conflicts as fatal errors. 1.7.18 2005-08-18 * Merged several error handling fixes from Serge Hallyn (IBM). Bugs found by Coverity. 1.7.17 2005-08-15 * Fixed further memory leaks found by valgrind. 1.7.16 2005-08-15 * Fixed several memory leaks found by valgrind. 1.7.15 2005-08-12 * Fixed empty list test in cond_write_av_list. Bug found by Coverity, reported by Serge Hallyn (IBM). * Merged patch to policydb_write to check errors when writing the type->attribute reverse map from Serge Hallyn (IBM). Bug found by Coverity. * Fixed policydb_destroy to properly handle NULL type_attr_map or attr_type_map. 1.7.14 2005-08-12 * Fixed use of uninitialized data by expand_avtab_node by clearing type_val_to_struct in policydb_index_others. 1.7.13 2005-08-11 * Improved memory use by SELinux by both reducing the avtab node size and reducing the number of avtab nodes (by not expanding attributes in TE rules when possible). Added expand_avtab and expand_cond_av_list functions for use by assertion checker, hierarchy checker, compatibility code, and dispol. Added new inline ebitmap operators and converted existing users of ebitmaps to the new operators for greater efficiency. Note: The binary policy format version has been incremented to version 20 as a result of these changes. 1.7.12 2005-08-10 * Fixed bug in constraint_node_clone handling of name sets. 1.7.11 2005-08-08 * Fix range_trans_clone to map the type values properly. 1.7.10 2005-08-02 * Merged patch to move module read/write code from libsemanage to libsepol from Jason Tang (Tresys). 1.7.9 2005-08-02 * Enabled further compiler warning flags and fixed them. 1.7.8 2005-08-02 * Merged user, context, port records patch from Ivan Gyurdiev. * Merged key extract function patch from Ivan Gyurdiev. 1.7.7 2005-07-27 * Merged mls_context_to_sid bugfix from Ivan Gyurdiev. 1.7.6 2005-07-26 * Merged context reorganization, memory leak fixes, port and interface loading, replacements for genusers and genbools, debug traceback, and bugfix patches from Ivan Gyurdiev. * Merged uninitialized variable bugfix from Dan Walsh. 1.7.5 2005-07-18 * Merged debug support, policydb conversion functions from Ivan Gyurdiev (Red Hat). * Removed genpolbools and genpolusers utilities. 1.7.4 2005-07-18 * Merged hierarchy check fix from Joshua Brindle (Tresys). 1.7.3 2005-07-13 * Merged header file cleanup and memory leak fix from Ivan Gyurdiev (Red Hat). 1.7.2 2005-07-11 * Merged genbools debugging message cleanup from Red Hat. 1.7.1 2005-07-06 * Merged loadable module support from Tresys Technology. 1.6 2005-06-20 * Updated version for release. 1.5.10 2005-05-19 * License changed to LGPL v2.1, see COPYING. 1.5.9 2005-05-16 * Added sepol_genbools_policydb and sepol_genusers_policydb for audit2why. 1.5.8 2005-05-13 * Added sepol_ prefix to Flask types to avoid namespace collision with libselinux. 1.5.7 2005-05-13 * Added sepol_compute_av_reason() for audit2why. 1.5.6 2005-04-25 * Fixed bug in role hierarchy checker. 1.5.5 2005-04-13 * Merged hierarchical type/role patch from Tresys Technology. * Merged MLS fixes from Darrel Goeddel of TCS. 1.5.4 2005-04-13 * Changed sepol_genusers to not delete users by default, and added a sepol_set_delusers function to enable deletion. Also, removed special case handling of system_u and user_u. 1.5.3 2005-03-29 * Merged booleans.local patch from Dan Walsh. 1.5.2 2005-03-16 * Added man page for sepol_check_context. 1.5.1 2005-03-15 * Added man page for sepol_genusers function. * Merged man pages for genpolusers and chkcon from Manoj Srivastava. 1.4 2005-03-09 * Updated version for release. 1.3.8 2005-03-08 * Cleaned up error handling in sepol_genusers and sepol_genbools. 1.3.7 2005-02-28 * Merged sepol_debug and fclose patch from Dan Walsh. 1.3.6 2005-02-22 * Changed sepol_genusers to also use getline and correctly handle EOL. 1.3.5 2005-02-17 * Merged range_transition support from Darrel Goeddel (TCS). 1.3.4 2005-02-16 * Added sepol_genusers function. 1.3.3 2005-02-14 * Merged endianness and compute_av patches from Darrel Goeddel (TCS). 1.3.2 2005-02-09 * Changed relabel Makefile target to use restorecon. 1.3.1 2005-01-26 * Merged enhanced MLS support from Darrel Goeddel (TCS). 1.2.1 2005-01-19 * Merged build fix patch from Manoj Srivastava. 1.2 2004-10-07 * MLS build fixes. * Added sepol_set_policydb_from_file and sepol_check_context for setfiles. 1.0 2004-08-19 * Initial public release. 0.4 2004-08-13 * Merged patch from Dan Walsh to ignore case on booleans. * Changed sepol_genbools* to preserve the original policy version. * Replaced exported global variables with set functions. * Moved genpolbools utility from checkpolicy to libsepol. * Added man pages for sepol_genbools* and genpolbools. 0.3 2004-08-10 * Added ChangeLog, COPYING, spec file. * Added sepol_genbools_array() for load_policy. * Created libsepol.map to limit exported symbols in shared library. 0.2 2004-08-09 * Exported other functions for checkpolicy and friends. * Renamed service and sidtab functions to avoid libselinux conflict. * Removed original code from checkpolicy, which now uses libsepol. * Code cleanup: kill legacy references to kernel types/functions. 0.1 2004-08-06 * Moved checkpolicy core logic into a library. * Exported sepol_genbools() for load_policy.