我们正在一个过程中启动qtApplication。 现在进程被判入狱(使用chroot)。 在监禁之后dlopen(platform.so)发生了内存损坏。
示例:
process main()
{
mount "proc, sys, dev in /var/tt(chroot directory)"
chroot("/var/tt");
qtthread_create();
}
qtthread_create()
{
create_thread_for_qt_app using pthread apis(qtMainThread);
stack size is 256K;
}
qtMainThread()
{
Printing stack size for qtMainThread(current thread) its displayed currently(256K).
QApplication class creation(QApplication app).
Printing stack size for qtMainThread(current thread) its displayed wrongly(junk value).
app.exec();
}
QApplication调用尝试加载platform.so在qt库中使用dlopen。在这种情况下,堆栈大小显示错误。
任何机构在监禁情况下都试过qt申请。