我可以在一個進程中的庫中獲得通知嗎,每當在同一進程中使用linux上的dlopen()函數從任何其他庫加載新庫時? 謝謝。linux dlopen當我在進程中調用dlopen()時,是否可以在我的庫中獲取通知?
1
A
回答
1
建立一個library interposer介入dlopen()
。
通過動態鏈接,您可以攔截應用程序對任何共享庫的任何函數調用。一旦你截獲了它,你就可以在該函數中做任何你想做的事情,並且調用應用程序最初打算調用的真實函數。
1
查看動態鏈接器的rtld-audit - audit API。
http://man7.org/linux/man-pages/man7/rtld-audit.7.html
你應該建立具有特定功能的共享庫,你應該用不同的事件通知。一旦你有了你的庫,你將需要將LD_AUDIT設置爲你的共享庫。
相關問題
- 1. linux dlopen:它可以在加載時「通知」庫嗎?
- 2. SIGSEGV當P /調用dlopen
- 3. 在Linux中使用GLES 2 PowerVR庫時出現Dlopen錯誤?
- 4. 當使用動態庫(dlopen)時,是否可以通過更改庫文件導致分段錯誤?
- 5. 如果從dlopen'd庫調用dlopen(),是否存在加載泄漏?
- 6. 是否可以在我的應用程序iOS中從Skype獲取通知?
- 7. 使用dlopen時,我應該鏈接到我打開的庫嗎?
- 8. 在OSX上通過dlopen打開庫時調試崩潰
- 9. dlopen是否創建多個庫實例?
- 10. 在linux下使用dlopen()api時,我可以在_init()函數中添加參數嗎?
- 11. 調用@plt函數時在dlopen/static init上共享庫SIGSEGV
- 12. 未知參考dlopen的
- 13. Mac OS X應用程序可否阻止dlopen加載庫?
- 14. 如何知道沒有.so當dlopen()
- 15. 我應該在dlopen之前鎖定嗎?
- 16. 如何自我dlopen的可執行的二進制
- 17. 當數據庫更新時,我可以在Yii視圖中獲得通知嗎?
- 18. dlopen/dlclose與夫婦如此,封鎖在dlopen上
- 19. 在可執行文件上使用dlopen()
- 20. 使用dlopen的IOKit
- 21. 當任務完成運行時,eclipse是否可以通知我?
- 22. 用dlopen加載的共享庫是否自動關閉?
- 23. 在dlopen()API中拒絕的權限API
- 24. Linux上dlopen()的有效相對路徑?
- 25. 當藍牙連接到我的設備時,是否可以在應用程序中收到通知?
- 26. 錯誤使用dlopen
- 27. [macosx]是否打開dlopen調用並閱讀函數?
- 28. dlopen()搜索路徑
- 29. 的dlopen()。所以,沒有找到符號在剝離可執行
- 30. 是否可以在運行時獲取從進程的索引?