The following issues were found
src/third_party/boost/libs/log/src/windows/object_name.cpp
1 issues
Line: 182
Column: 17
CWE codes:
119
120
Suggestion:
Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length
else
#endif // BOOST_USE_WINAPI_VERSION >= BOOST_WINAPI_VERSION_WIN6
{
wchar_t buf[UNLEN + 1u];
ULONG len = sizeof(buf) / sizeof(*buf);
if (BOOST_UNLIKELY(!GetUserNameExW(NameSamCompatible, buf, &len)))
{
const boost::winapi::DWORD_ err = boost::winapi::GetLastError();
BOOST_LOG_THROW_DESCR_PARAMS(boost::log::system_error, "Failed to obtain the current user name", (err));
Reported by FlawFinder.
src/third_party/boost/boost/range/adaptor/indexed.hpp
1 issues
Line: 228
Column: 10
CWE codes:
126
Suggestion:
This function is often discouraged by most C++ coding standards in favor of its safer alternatives provided since C++14. Consider using a form of this function that checks the second iterator before potentially overflowing it
return reference(m_index, *m_it);
}
bool equal(const indexed_iterator& other) const
{
return m_it == other.m_it;
}
void increment()
Reported by FlawFinder.
src/third_party/boost/libs/regex/src/c_regex_traits.cpp
1 issues
Line: 193
Column: 4
CWE codes:
119
120
Suggestion:
Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length
int BOOST_REGEX_CALL c_regex_traits<char>::value(char c, int radix)
{
char b[2] = { c, '\0', };
char* ep;
int result = std::strtol(b, &ep, radix);
if(ep == b)
return -1;
return result;
Reported by FlawFinder.
src/third_party/boost/libs/regex/src/cpp_regex_traits.cpp
1 issues
Line: 47
Column: 32
CWE codes:
362
std::string cat_name(cpp_regex_traits<char>::get_catalog_name());
if(cat_name.size() && (m_pmessages != 0))
{
cat = this->m_pmessages->open(
cat_name,
this->m_locale);
if((int)cat < 0)
{
std::string m("Unable to open message catalog: ");
Reported by FlawFinder.
src/third_party/boost/boost/random/xor_combine.hpp
1 issues
Line: 30
Column: 11
CWE codes:
327
Suggestion:
Use a more secure technique for acquiring random values
#include <boost/random/detail/operators.hpp>
namespace boost {
namespace random {
/**
* Instantiations of @c xor_combine_engine model a
* \pseudo_random_number_generator. To produce its output it
* invokes each of the base generators, shifts their results
Reported by FlawFinder.
src/third_party/boost/boost/random/weibull_distribution.hpp
1 issues
Line: 25
Column: 11
CWE codes:
327
Suggestion:
Use a more secure technique for acquiring random values
#include <boost/random/uniform_01.hpp>
namespace boost {
namespace random {
/**
* The Weibull distribution is a real valued distribution with two
* parameters a and b, producing values >= 0.
*
Reported by FlawFinder.
src/third_party/boost/libs/regex/src/wc_regex_traits.cpp
1 issues
Line: 265
Column: 4
CWE codes:
119
120
Suggestion:
Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length
if((std::iswxdigit)(c) == 0)
return -1;
#endif
wchar_t b[2] = { c, '\0', };
wchar_t* ep;
int result = std::wcstol(b, &ep, radix);
if(ep == b)
return -1;
return result;
Reported by FlawFinder.
src/third_party/boost/libs/serialization/src/archive_exception.cpp
1 issues
Line: 137
Column: 7
CWE codes:
120
Suggestion:
Make sure destination can always hold the source data
std::exception(oth),
code(oth.code)
{
std::memcpy(m_buffer,oth.m_buffer,sizeof m_buffer);
}
BOOST_ARCHIVE_DECL
archive_exception::~archive_exception() BOOST_NOEXCEPT_OR_NOTHROW {}
Reported by FlawFinder.
src/third_party/boost/libs/serialization/src/basic_iarchive.cpp
1 issues
Line: 442
Column: 13
CWE codes:
119
120
Suggestion:
Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length
// or polymorphic
|| bpis_ptr->get_basic_serializer().is_polymorphic()){
// is must have been exported
char key[BOOST_SERIALIZATION_MAX_KEY_SIZE];
class_name_type class_name(key);
load(ar, class_name);
// if it has a class name
const serialization::extended_type_info *eti = NULL;
if(0 != key[0])
Reported by FlawFinder.
src/third_party/boost/libs/system/src/error_code.cpp
1 issues
Line: 22
Column: 11
CWE codes:
78
Suggestion:
try using a library call that implements the same functionality if available
namespace boost
{
namespace system
{
BOOST_SYSTEM_DECL void dummy_exported_function()
{
}
Reported by FlawFinder.