Я использую библиотеку boost для связывания с моим двоичным файлом. В некоторых ситуациях я получаю следующую трассировку сбоя. Может ли кто-нибудь указать мне, при каких обстоятельствах это могло произойти?
>>> Stack: #0 0x00007f1c6670f576 in boost::re_detail::perl_matcher<char const*, std::allocator<boost::sub_match<char const*> >, boost::regex_traits<char, boost::cpp_regex_traits<char> >
>::match_all_states() () from /lib/x86_64/libboost_regex.so.1.55.0
#1 0x00007f1c6670f79d in boost::re_detail::perl_matcher<char const*, std::allocator<boost::sub_match<char const*> >, boost::regex_traits<char, boost::cpp_regex_traits<char> >
>::match_prefix() () from /lib/x86_64/libboost_regex.so.1.55.0
#2 0x00007f1c6670fe72 in boost::re_detail::perl_matcher<char const*, std::allocator<boost::sub_match<char const*> >, boost::regex_traits<char, boost::cpp_regex_traits<char> >
>::find_restart_any() () from /lib/x86_64/libboost_regex.so.1.55.0
#3 0x00007f1c66706ae5 in boost::re_detail::perl_matcher<char const*, std::allocator<boost::sub_match<char const*> >, boost::regex_traits<char, boost::cpp_regex_traits<char> >
>::find_imp() () from /lib/x86_64/libboost_regex.so.1.55.0 <<<<
Спасибо за ответ. Не могли бы вы привести мне пример строки, которая может вызвать сбой этого API.
Нет, не могу, потому что ошибки нет. См. sscce.org и stackoverflow.com/help/mcve





Где твой код? В регулярном выражении может быть шаблон DoS, который используется определенным входом. Кроме того, существует множество способов возникновения UB (например, из-за коррупции или различий в ABI).