gpt4 book ai didi

compiler-construction - D 编程 : openssl rsa forward reference compiler error

转载 作者:行者123 更新时间:2023-12-02 10:41:18 25 4
gpt4 key购买 nike

import std.stdio;
import deimos.openssl.bn;
import deimos.openssl.rsa;

const KEY_SIZE = 1024;

void main(string[] args) {
if (args.length < 1) {
writeln("too few arguments");
}

RSA* rsa = RSA_new();
rsa = RSA_generate_key(KEY_SIZE, RSA_F4, null, null);
if(rsa==null) {
writeln("failure");
}
else {
writeln("success");

// error generated by the line below
if(!BN_generate_prime(rsa.p, (KEY_SIZE/2), 1, null, null, null, null)) {
writeln("prime_failure");
}
else {
writeln("prime success");
}

RSA_free(rsa);
}
}

这会导致以下错误:
rsa.d(21): Error: struct rsa_st is forward referenced

每当我尝试访问 rsa 结构中的元素时,都会发生错误。有任何想法吗?

最佳答案

我能够与一位经常在 github 上更新 OpenSSL Deimos 的人取得联系,并且能够得到他的回复。

基本上,OpenSSL C API 在一些不需要精确定义的地方前向声明结构,这些在一些 D 模块中一直存在。

他请求拉入存储库,他所做的更改将解决您当前的问题。链接在这里:

Deimos: openssl update

关于compiler-construction - D 编程 : openssl rsa forward reference compiler error,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9678072/

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