问题标签 [libtls]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
565 浏览

libressl - libtls: select() 和 tls_read() 一起工作

我想为多年前编写的旧聊天应用程序添加 ssl 支持。我在 OpenSSL 和 LibreSSL 上做了很多阅读,我决定尝试一个新的 libtls API。我认为开发人员在这方面做得非常出色。我发现它非常易于使用 - 在需要时几乎不需要更改我现有的代码。但这是我现在需要弄清楚的一件事:

过去,我使用 select() 来监视套接字和 recv() 来读取数据。这很容易,因为这两个函数都在文件描述符上工作。

现在,使用 libtls,函数 tls_read() 需要一个 tls 上下文作为第一个参数。这意味着每次我准备好读取描述符时,我都需要搜索客户端列表以获取适当的 tls 上下文。这并不难,但也许有人知道更好的解决方案?我将感谢所有评论和代码示例。

0 投票
0 回答
571 浏览

c# - Mono 5.14.0 和 TLS 1.2“没有这样的 TLS 提供程序 btls”

如果我使用 HttpClient 和Mono 5.14.0连接到TLS 1.0 - 1.2端点,我会收到异常“No such TLS Provider: 。”btls

如果我将 TLS 提供程序更改为旧版,我只能连接到具有 TLS 1.0 的端点,具有 TLS 1.0 - 1.2 的端点不起作用。

我不明白提供者 blts 是如何未知的,因为 Mono 4.8.0 是来自 BoringSSL 项目的提供者 btls。看这里

如果我查看MonoTlsProviderFactory.cs以了解这种行为,我会偶然发现这条线,我不明白。

看到这里,有一个MONO_FEATURE_BTLS符号是 btls 的条件。但是我怎么知道我的 Mono 版本是不是用这个符号编译的呢?

有类似的情况,但使用的是较旧的 Mono 版本

0 投票
0 回答
45 浏览

bazel - libtls/gnutls 的 Bazel 构建?

我有一个 Bazel 项目,结果证明它依赖于LibTLS安装在构建机器上,这使得事情变得非密封。因此,我开始尝试重构事物以使项目包含gnutls在显式依赖项中,但这变成了一个兔子洞:当我从源代码构建它时,它的配置脚本失败并显示Libnettle 3.4.1 was not found. 我怀疑我也可以回避并将其循环到构建中......但在我花很多时间这样做之前:

是否有人已经设置了 bazel 工作区/存储库/目标来生成 TLS 库,所以我可以复制它?