【问题标题】:LibreSSL: free memory allocated by tls_init()LibreSSL:由 tls_init() 分配的空闲内存
【发布时间】:2018-10-09 10:47:27
【问题描述】:

在使用 LibreSSL 的 libtls 时,是否可以释放 tls_init() 分配的内存?

我发现使用 valgrind 时,一个仅调用 tls_init() 代码的简单程序会留下 2058 个内存块“仍可访问”。我知道“仍然可以访问”的内存并不是严格意义上的内存泄漏,它会在程序退出时被操作系统清理……但这使得识别我自己的内存问题更加令人讨厌。

OpenSSL 的SSL_library_init() 似乎没有同样的问题。

我在 Linux 上使用来自 libressl-portable github 页面的源代码构建。

【问题讨论】:

    标签: c libressl


    【解决方案1】:

    libressl 邮件列表上也有人问过这个问题。 The answer is no, at least not with the current libtls API.

    使用 valgrind is to use the --suppressions option 进行内存测试的当前最佳替代方案。

    【讨论】:

    • 不错的发现!为了将来参考,在邮件列表中添加相关邮件的链接(如果它是公开的)可能会很有用。
    • 没关系,我找到它们并将它们添加到答案中。
    猜你喜欢
    • 2011-07-13
    • 2014-11-24
    • 2013-02-18
    • 2015-03-21
    • 1970-01-01
    • 1970-01-01
    • 2011-07-26
    • 2022-01-19
    • 2014-11-27
    相关资源
    最近更新 更多