pymumu / smartdns

A local DNS server to obtain the fastest website IP for the best Internet experience, support DoT, DoH. 一个本地DNS服务器,获取最快的网站IP,获得最佳上网体验,支持DoH,DoT。
https://pymumu.github.io/smartdns/
GNU General Public License v3.0
8.49k stars 1.09k forks source link

一个潜在的“Use of Expired File Descriptor”错误 #1857

Open zql-gif opened 4 days ago

zql-gif commented 4 days ago

我在项目中发现了一个潜在的“Use of Expired File Descriptor”错误,想在此提醒您,看看是否对您有帮助。该错误发生在产品在文件描述符(file descriptor)被关闭后,仍然使用或访问该文件描述符(file descriptor)。您能帮忙检查一下吗?感谢您的努力和耐心!

错误描述: 这个错误位于文件 src/tlog.c 中,涉及名为 _tlog_close_all_fd 的函数。具体代码流程如下:

1.在名为“_tlog_close_all_fd”的函数中,第 1055 行代码打开了文件 /proc/self/fd/,并将文件描述符分配给变量 dir_fd。 2.在名为“_tlog_close_all_fd”的函数中,位于第 1083 行,文件描述符 dir_fd 被作为第一个参数传递给 close 函数进行关闭。 3.在名为“_tlog_close_all_fd”的函数中,位于第 1092 行,在“errout”分支中,尝试关闭已经关闭或在步骤 3 中未能成功打开的文件描述符 dir_fd图片1 QQ20241115-233104 图片3

pymumu commented 4 days ago

https://github.com/pymumu/smartdns/commit/d43df0f4a25b9755b02d7ac9a349ff3fbf90b2e3 修改了一下。