gpt4 book ai didi

reference - 关于在 pthreads 中使用 OpenSSL 的教程

转载 作者:行者123 更新时间:2023-12-04 00:06:16 26 4
gpt4 key购买 nike

关闭。这个问题不满足Stack Overflow guidelines .它目前不接受答案。












想改善这个问题吗?更新问题,使其成为 on-topic对于堆栈溢出。

1年前关闭。




Improve this question




OpenSSL documents声明它可以安全地用于多线程应用程序,前提是至少设置了两个回调函数,locking_function 和 threadid_func....

我编写了使用 OpenSSL API 的程序。此外,我知道如何使用 pthreads。但是,OpenSSL 文档是以手册的形式编写的,我看不到有关在多线程应用程序中使用 OpenSSL 时必须执行的操作的分步指南。

是否有关于在 pthreads 中使用 OpenSSL 的教程? (我在网上搜索,但没有出现满意的结果。)

PS:我在 Debian Lenny 和 Ubuntu Lucid/Maverick 工作。

PS2: OpenSSL 包含一个示例,但它太复杂了,无法开始。

最佳答案

本书第十章The Definitive Guide to Linux Network Programming包括一个部分 使用 OpenSSL 进行线程安全编程 (第 255-259 页)。本节详细介绍 OpenSSL 和 pthreads 库的工作原理。特别地,它讲述了如何在静态分配(先验已知线程数)和动态分配(动态创建和销毁线程)中设置回调函数。
另一个很好的来源是本书的第 4.1 节 Network Security with OpenSSL , 标题 多线程支持 .它分别在 4.1.1 和 4.1.2 小节中提供了静态/动态分配机制。
最后,还有这本书 Unix-Netzwerkprogrammierung mit Threads, Sockets und SSL ,这是迄今为止关于该主题的最全面的一个。不幸的是,这本德语书的英文翻译不可用。
编辑:上述引用文献现在被认为已过时,因为 OpenSSL 1.1.0 changelog解释:

OpenSSL now uses a new threading API. It is no longer necessary to set locking callbacks to use OpenSSL in a multi-threaded environment. There are two supported threading models: pthreads and windows threads. It is also possible to configure OpenSSL at compile time for "no-threads". The old threading API should no longer be used. The functions have been replaced with "no-op" compatibility macros.

[Alessandro Ghedini, Matt Caswell]


OpenSSL 博客文章 OpenSSL and Threads 中对此进行了进一步阐述。 .
另见 this issue on OpenSSL GitHub repository ,自 2017 年开始营业。

关于reference - 关于在 pthreads 中使用 OpenSSL 的教程,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3919420/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com