My Linux application sis using bool::asio::read_until() to read data from a socket. The application also uses commercial, 3rd party hardware. Occasionally my program crashes due to a SIGSEGV violation.
The core dump stack trace is shown below. It indicates that the 3rd party signal handler is invoked while my thread is waiting for socket I/O, and that the crash is occurring during signal handler execution.
While I recognize that this is an issue with the 3rd party vendor (and I am currently engaged in discussions with them), I’m wondering if my usage of boost is incorrect, or if there is something that I should be doing differently in performing socket I/O?
I am using boost v1.43.
E. Thomas Craig
Principal Software Engineer