我需要编写一组C ++函数,这些函数将保存在一个单独的库文件中,该文件将用于其他人制作的不同Linux应用程序的崩溃日志记录。这些功能必须安装信号处理程序才能运行。
如果他们将使用的应用程序将安装他们自己的信号处理程序,如何确保信号将达到我的记录器功能?
答案 0 :(得分:0)
您可以在库中实现signal
,sigaction
,sigprocmask
等函数,以便使用它们而不是glibc中定义的函数来防止覆盖你的信号处理程序和阻止你的信号。
应用程序仍然可以通过直接调用相应的系统调用来绕过它。