NCC-2016-002 - Direct memory leak #1222
Labels
C-audit
Category: Issues and tasks related to audit findings
I-dos
Problems and improvements with respect to Denial-of-Service.
I-SECURITY
Problems and improvements related to security.
M-suggested-to-close
We should consider closing this issue or PR.
memory management
Direct leak of 13494176 byte(s) in 1 object(s) allocated from:
#0 0x55d5292fadb0 in operator new(unsigned long) (/home/rcs/Test/zcash/zcash/src/test/test_bitcoin+0x14fdb0)
#1 0x55d529a12895 in _gnu_cxx::new_allocator::allocate(unsigned long, void const) /usr/include/c++/6/ext/new_allocator.h:104
#2 0x55d529a12895 in std::allocator_traits<std::allocator >::allocate(std::allocator&, unsigned long) /usr/include/c++/6/bits/alloc_traits.h:416
#3 0x55d529a12895 in std::_Vector_base<unsigned long, std::allocator >::_M_allocate(unsigned long) /usr/include/c++/6/bits/stl_vector.h:170
#4 0x55d529a12895 in std::_Vector_base<unsigned long, std::allocator >::M_create_storage(unsigned long) /usr/include/c++/6/bits/stl_vector.h:185
#5 0x55d529a12895 in std::Vector_base<unsigned long, std::allocator >::Vector_base(unsigned long, std::allocator const&) /usr/include/c++/6/bits/stl_vector.h:136
#6 0x55d529a12895 in std::vector<unsigned long, std::allocator >::vector(std::vector<unsigned long, std::allocator > const&) /usr/include/c++/6/bits/stl_vector.h:322
#7 0x55d529a12895 in libsnark::sparse_vector<libsnark::knowledge_commitment<libsnark::alt_bn128_G1, libsnark::alt_bn128_G1> >::sparse_vector(libsnark::sparse_vector<libsnark::knowledge_commitment<libsnark::alt_bn128_G1, libsnark::alt_bn128_G1> > const&) /home/rcs/Test/zcash/zcash/depends/x86_64-unknown-linux-gnu/include/libsnark/common/data_structures/sparse_vector.hpp:40
#8 0x55d529a12895 in libsnark::r1cs_ppzksnark_proving_keylibsnark::alt_bn128_pp::r1cs_ppzksnark_proving_key(libsnark::r1cs_ppzksnark_proving_keylibsnark::alt_bn128_pp const&) /home/rcs/Test/zcash/zcash/depends/x86_64-unknown-linux-gnu/include/libsnark/zk_proof_systems/ppzksnark/r1cs_ppzksnark/r1cs_ppzksnark.hpp:84
#9 0x55d529a12895 in void boost::optional_detail::optional_baselibsnark::r1cs_ppzksnark_proving_key<libsnark::alt_bn128_pp >::constructlibsnark::r1cs_ppzksnark_proving_keylibsnark::alt_bn128_pp&(libsnark::r1cs_ppzksnark_proving_keylibsnark::alt_bn128_pp&, void const) /home/rcs/Test/zcash/zcash/depends/x86_64-unknown-linux-gnu/include/boost/optional/optional.hpp:595
#10 0x55d529a12895 in void boost::optional_detail::optional_baselibsnark::r1cs_ppzksnark_proving_key<libsnark::alt_bn128_pp >::assign_exprlibsnark::r1cs_ppzksnark_proving_key<libsnark::alt_bn128_pp&, libsnark::r1cs_ppzksnark_proving_keylibsnark::alt_bn128_pp >(libsnark::r1cs_ppzksnark_proving_keylibsnark::alt_bn128_pp&, libsnark::r1cs_ppzksnark_proving_keylibsnark::alt_bn128_pp const) /home/rcs/Test/zcash/zcash/depends/x86_64-unknown-linux-gnu/include/boost/optional/optional.hpp:430
#11 0x55d529a12895 in boost::disable_if_c<boost::is_base_of<boost::optional_detail::optional_tag, boost::decay<libsnark::r1cs_ppzksnark_proving_keylibsnark::alt_bn128_pp&>::type>::value||boost::is_sameboost::decay<libsnark::r1cs_ppzksnark_proving_keylibsnark::alt_bn128_pp&::type, int boost::detail::none_helper::>::value, boost::optionallibsnark::r1cs_ppzksnark_proving_key<libsnark::alt_bn128_pp >&>::type boost::optionallibsnark::r1cs_ppzksnark_proving_key<libsnark::alt_bn128_pp >::operator=libsnark::r1cs_ppzksnark_proving_keylibsnark::alt_bn128_pp&(libsnark::r1cs_ppzksnark_proving_keylibsnark::alt_bn128_pp&) /home/rcs/Test/zcash/zcash/depends/x86_64-unknown-linux-gnu/include/boost/optional/optional.hpp:870
#12 0x55d529a12895 in libzcash::JoinSplitCircuit<2ul, 2ul>::generate() zcash/JoinSplit.cpp:121
The text was updated successfully, but these errors were encountered: