From 1240cf29dff43b6ac4b806df1a30bcb66d3a190177b7ae09aef2dce30024b98d Mon Sep 17 00:00:00 2001 From: Sascha Peilicke Date: Mon, 11 Nov 2013 09:06:00 +0000 Subject: [PATCH 1/2] Accepting request 206398 from home:jengelh:branches:devel:libraries:c_c++ - Split libboost_graph so that the MPI components are not forced OBS-URL: https://build.opensuse.org/request/show/206398 OBS-URL: https://build.opensuse.org/package/show/devel:libraries:c_c++/boost?expand=0&rev=113 --- baselibs.conf | 1 + boost.changes | 5 +++++ boost.spec | 17 +++++++++++++---- 3 files changed, 19 insertions(+), 4 deletions(-) diff --git a/baselibs.conf b/baselibs.conf index 71d05d0..7aaa5ba 100644 --- a/baselibs.conf +++ b/baselibs.conf @@ -5,6 +5,7 @@ libboost_context1_54_0 libboost_date_time1_54_0 libboost_filesystem1_54_0 libboost_graph1_54_0 +libboost_graph_parallel1_54_0 libboost_iostreams1_54_0 libboost_math1_54_0 libboost_mpi1_54_0 diff --git a/boost.changes b/boost.changes index b481012..de37ec8 100644 --- a/boost.changes +++ b/boost.changes @@ -1,3 +1,8 @@ +------------------------------------------------------------------- +Sun Oct 20 12:51:53 UTC 2013 - jengelh@inai.de + +- Split libboost_graph so that the MPI components are not forced + ------------------------------------------------------------------- Wed Sep 18 16:40:37 UTC 2013 - dap.darkness@gmail.com diff --git a/boost.spec b/boost.spec index 2d267b0..ec8a96e 100644 --- a/boost.spec +++ b/boost.spec @@ -60,13 +60,11 @@ %define most_libs %boost_libs1 %boost_libs2 %boost_libs3 %boost_libs4 %boost_libs5 %boost_libs6 %boost_libs7 %if %build_mpi -%define all_libs %{most_libs} libboost_mpi%{lib_appendix} +%define all_libs %{most_libs} libboost_graph_parallel%lib_appendix libboost_mpi%{lib_appendix} %else %define all_libs %{most_libs} %endif -%define debug_package_requires %{all_libs} - Name: boost BuildRequires: boost-jam >= 3.1.19 BuildRequires: chrpath @@ -250,6 +248,13 @@ Requires: boost-license%{lib_appendix} %description -n libboost_graph%{lib_appendix} This package contains the Boost::Graph Runtime libraries. +%package -n libboost_graph_parallel%lib_appendix +Summary: Boost graph::distributed runtime libraries +Group: System/Libraries +Requires: boost-license%lib_appendix + +%description -n libboost_graph_parallel%lib_appendix +This package contains the boost::graph::distributed runtime libraries. %package -n libboost_iostreams%{lib_appendix} Summary: Boost::IOStreams Runtime Libraries @@ -649,7 +654,11 @@ rm -f %{buildroot}%{_libdir}/*.a %files -n libboost_graph%{lib_appendix} %defattr(-, root, root, -) -%{_libdir}/libboost_graph*.so.* +%{_libdir}/libboost_graph.so.* + +%files -n libboost_graph_parallel%lib_appendix +%defattr(-,root,root) +%_libdir/libboost_graph_parallel.so.* %files -n libboost_iostreams%{lib_appendix} %defattr(-, root, root, -) From 534ea3a38c109e793ea44f5f925ca2ec06af78baee532554810e048ed8748549 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ismail=20D=C3=B6nmez?= Date: Tue, 26 Nov 2013 16:13:25 +0000 Subject: [PATCH 2/2] Accepting request 208551 from home:netsroth:branches:devel:libraries:c_c++ Add patch against malloc int overflow OBS-URL: https://build.opensuse.org/request/show/208551 OBS-URL: https://build.opensuse.org/package/show/devel:libraries:c_c++/boost?expand=0&rev=114 --- boost-pool_check_overflow.patch | 36 +++++++++++++++++++++++++++++++++ boost.changes | 7 +++++++ boost.spec | 2 ++ 3 files changed, 45 insertions(+) create mode 100644 boost-pool_check_overflow.patch diff --git a/boost-pool_check_overflow.patch b/boost-pool_check_overflow.patch new file mode 100644 index 0000000..59a0dac --- /dev/null +++ b/boost-pool_check_overflow.patch @@ -0,0 +1,36 @@ +Upstream URL: https://svn.boost.org/trac/boost/ticket/6701 + +Check that request size doesn't overflow. + +Index: boost/pool/pool.hpp +=================================================================== +--- boost/pool/pool.hpp.orig 2007-11-25 19:07:19.000000000 +0100 ++++ boost/pool/pool.hpp 2012-06-22 13:03:49.422438613 +0200 +@@ -10,6 +10,8 @@ + #define BOOST_POOL_HPP + + #include // for workarounds ++// std::numeric_limits ++#include + + // std::less, std::less_equal, std::greater + #include +@@ -793,6 +793,9 @@ void * pool::ordered_mall + //! \returns Address of chunk n if allocated ok. + //! \returns 0 if not enough memory for n chunks. + ++ if (requested_size && (n > (std::numeric_limits::max)() / requested_size)) ++ return 0; ++ + const size_type partition_size = alloc_size(); + const size_type total_req_size = n * requested_size; + const size_type num_chunks = total_req_size / partition_size + +@@ -975,6 +979,8 @@ + { + if(max_alloc_size && (n > max_alloc_size)) + return 0; ++ if(chunk_size && (n > (std::numeric_limits::max)() / chunk_size)) ++ return 0; + void* ret = (user_allocator::malloc)(chunk_size * n); + used_list.insert(ret); + return ret; diff --git a/boost.changes b/boost.changes index de37ec8..2f76e53 100644 --- a/boost.changes +++ b/boost.changes @@ -1,3 +1,10 @@ +------------------------------------------------------------------- +Tue Nov 26 16:13:00 CET 2013 - tbehrens@suse.com + +- Add boost-pool_check_overflow.patch: Prevent possible overflow when + calculating the amount to malloc (bnc#765443). + Fix from https://svn.boost.org/trac/boost/ticket/6701 + ------------------------------------------------------------------- Sun Oct 20 12:51:53 UTC 2013 - jengelh@inai.de diff --git a/boost.spec b/boost.spec index ec8a96e..463ac66 100644 --- a/boost.spec +++ b/boost.spec @@ -105,6 +105,7 @@ Source4: existing_extra_docs Patch1: boost-thread.patch Patch2: boost-no_type_punning.patch Patch8: boost-no_segfault_in_Regex_filter.patch +Patch9: boost-pool_check_overflow.patch Patch20: boost-strict_aliasing.patch Patch50: boost-use_std_xml_catalog.patch Patch60: boost-glibc-2.18.patch @@ -421,6 +422,7 @@ find -type f ! \( -name \*.sh -o -name \*.py -o -name \*.pl \) -exec chmod -x {} %patch1 %patch2 %patch8 +%patch9 %patch20 %patch50 %patch60 -p1