ozanarmagan / restcpp Goto Github PK
View Code? Open in Web Editor NEWCross Platform Multi threaded REST API / HTTP Server framework using thread-pooling implementation with modern C++
License: MIT License
Cross Platform Multi threaded REST API / HTTP Server framework using thread-pooling implementation with modern C++
License: MIT License
Hi, I came across this repo and looks promising, congrats.
I have an issue with the last commit. I have a segment violation running the example.
See if this backtrace can help...
#0 0x00007ffff7e2031c in OPENSSL_sk_dup () from /lib/x86_64-linux-gnu/libcrypto.so.1.1
#1 0x00007ffff7f58cac in SSL_new () from /lib/x86_64-linux-gnu/libssl.so.1.1
#2 0x00005555555828c8 in restcpp::Server::onRequest(unsigned long) ()
#3 0x0000555555592de7 in void std::__invoke_impl<void, void (restcpp::Server::*&)(unsigned long), restcpp::Server*&, unsigned long&>(std::__invoke_memfun_deref, void (restcpp::Server::*&)(unsigned long), restcpp::Server*&, unsigned long&) ()
#4 0x0000555555592c5f in std::__invoke_result<void (restcpp::Server::*&)(unsigned long), restcpp::Server*&, unsigned long&>::type std::__invoke<void (restcpp::Server::*&)(unsigned long), restcpp::Server*&, unsigned long&>(void (restcpp::Server::*&)(unsigned long), restcpp::Server*&, unsigned long&) ()
#5 0x0000555555592b03 in void std::_Bind<void (restcpp::Server::*(restcpp::Server*, unsigned long))(unsigned long)>::__call<void, , 0ul, 1ul>(std::tuple<>&&, std::_Index_tuple<0ul, 1ul>) ()
#6 0x00005555555928ba in void std::_Bind<void (restcpp::Server::*(restcpp::Server*, unsigned long))(unsigned long)>::operator()<, void>() ()
#7 0x0000555555592491 in void std::__invoke_impl<void, std::_Bind<void (restcpp::Server::*(restcpp::Server*, unsigned long))(unsigned long)>&>(std::__invoke_other, std::_Bind<void (restcpp::Server::*(restcpp::Server*, unsigned long))(unsigned long)>&) ()
#8 0x0000555555591eae in std::enable_if<is_invocable_r_v<void, std::_Bind<void (restcpp::Server::*(restcpp::Server*, unsigned long))(unsigned long)>&>, void>::type std::__invoke_r<void, std::_Bind<void (restcpp::Server::*(restcpp::Server*, unsigned long))(unsigned long)>&>(std::_Bind<void (restcpp::Server::*(restcpp::Server*, unsigned long))(unsigned long)>&) ()
#9 0x000055555559145e in void std::_Bind_result<void, std::_Bind<void (restcpp::Server::*(restcpp::Server*, unsigned long))(unsigned long)> ()>::__call<void>(std::tuple<>&&, std::_Index_tuple<>) ()
#10 0x0000555555590b30 in void std::_Bind_result<void, std::_Bind<void (restcpp::Server::*(restcpp::Server*, unsigned long))(unsigned long)> ()>::operator()<>() ()
#11 0x00005555555900ce in void std::__invoke_impl<void, std::_Bind_result<void, std::_Bind<void (restcpp::Server::*(restcpp::Server*, unsigned long))(unsigned long)> ()>&>(std::__invoke_other, std::_Bind_result<void, std::_Bind<void (restcpp::Server::*(restcpp::Server*, unsigned long))(unsigned long)> ()>&) ()
#12 0x000055555558f4d4 in std::enable_if<is_invocable_r_v<void, std::_Bind_result<void, std::_Bind<void (restcpp::Server::*(restcpp::Server*, unsigned long))(unsigned long)> ()>&>, void>::type std::__invoke_r<void, std::_Bind_result<void, std::_Bind<void (restcpp::Server::*(restcpp::Server*, unsigned long))(unsigned long)> ()>&>(std::_Bind_result<void, std::_Bind<void (restcpp::Server::*(restcpp::Server*, unsigned long))(unsigned long)> ()>&) ()
#13 0x000055555558e1ff in std::_Function_handler<void (), std::_Bind_result<void, std::_Bind<void (restcpp::Server::*(restcpp::Server*, unsigned long))(unsigned long)> ()> >::_M_invoke(std::_Any_data const&) ()
#14 0x000055555558c6e6 in std::function<void ()>::operator()() const ()
#15 0x00005555555945cd in void std::__invoke_impl<void, std::function<void ()>&>(std::__invoke_other, std::function<void ()>&) ()
#16 0x0000555555594266 in std::enable_if<is_invocable_r_v<void, std::function<void ()>&>, void>::type std::__invoke_r<void, std::function<void ()>&>(std::function<void ()>&) ()
#17 0x0000555555593bb1 in std::__future_base::_Task_state<std::function<void ()>, std::allocator<int>, void ()>::_M_run()::{lambda()#1}::operator()() const ()
#18 0x00005555555950a7 in std::__future_base::_Task_setter<std::unique_ptr<std::__future_base::_Result<void>, std::__future_base::_Result_base::_Deleter>, std::__future_base::_Task_state<std::function<void ()>, std::allocator<int>, void ()>::_M_run()::{lambda()#1}, void>::operator()() const ()
#19 0x0000555555594e52 in std::unique_ptr<std::__future_base::_Result<void>, std::__future_base::_Result_base::_Deleter> std::__invoke_impl<std::unique_ptr<std::__future_base::_Result<void>, std::__future_base::_Result_base::_Deleter>, std::__future_base::_Task_setter<std::unique_ptr<std::__future_base::_Result<void>, std::__future_base::_Result_base::_Deleter>, std::__future_base::_Task_state<std::function<void ()>, std::allocator<int>, void ()>::_M_run()::{lambda()#1}, void>&>(std::__invoke_other, std::__future_base::_Task_setter<std::unique_ptr<std::__future_base::_Result<void>, std::__future_base::_Result_base::_Deleter>, std::__future_base::_Task_state<std::function<void ()>, std::allocator<int>, void ()>::_M_run()::{lambda()#1}, void>&) ()
#20 0x0000555555594a3a in std::enable_if<is_invocable_r_v<std::unique_ptr<std::__future_base::_Result_base, std::__future_base::_Result_base::_Deleter>, std::__future_base::_Task_setter<std::unique_ptr<std::__future_base::_Result<void>, std::__future_base::_Result_base::_Deleter>, std::__future_base::_Task_state<std::function<void ()>, std::allocator<int>, void ()>::_M_run()::{lambda()#1}, void>&>, std::unique_ptr<std::__future_base::_Result_base, std::__future_base::_Result_base::_Deleter> >::type std::__invoke_r<std::unique_ptr<std::__future_base::_Result_base, std::__future_base::_Result_base::_Deleter>, std::__future_base::_Task_setter<std::unique_ptr<std::__future_base::_Result<void>, std::__future_base::_Result_base::_Deleter>, std::__future_base::_Task_state<std::function<void ()>, std::allocator<int>, void ()>::_M_run()::{lambda()#1}, void>&>(std::__future_base::_Task_setter<std::unique_ptr<std::__future_base::_Result<void>, std::__future_base::_Result_base::_Deleter>, std::__future_base::_Task_state<std::function<void ()>, std::allocator<int>, void ()>::_M_run()::{lambda()#1}, void>&) ()
#21 0x000055555559464c in std::_Function_handler<std::unique_ptr<std::__future_base::_Result_base, std::__future_base::_Result_base::_Deleter> (), std::__future_base::_Task_setter<std::unique_ptr<std::__future_base::_Result<void>, std::__future_base::_Result_base::_Deleter>, std::__future_base::_Task_state<std::function<void ()>, std::allocator<int>, void ()>::_M_run()::{lambda()#1}, void> >::_M_invoke(std::_Any_data const&) ()
#22 0x000055555558bfcd in std::function<std::unique_ptr<std::__future_base::_Result_base, std::__future_base::_Result_base::_Deleter> ()>::operator()() const ()
#23 0x000055555558af99 in std::__future_base::_State_baseV2::_M_do_set(std::function<std::unique_ptr<std::__future_base::_Result_base, std::__future_base::_Result_base::_Deleter> ()>*, bool*)
()
#24 0x000055555558e821 in void std::__invoke_impl<void, void (std::__future_base::_State_baseV2::*)(std::function<std::unique_ptr<std::__future_base::_Result_base, std::__future_base::_Result_ba
6e16e47 seems to work, so it must be related to the SSL code added lately. If I find something else I'll let you know.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.