我想在多个设备上使用OpenSSL(1.0.1j)的一些特性。一个要求是尽量减少代码的大小。OpenSSL代码是静态链接到我的。我只使用RSA_public_decrypt,BIO和PEM->RSA解码方法.为了实现这一点,我目前正在编译OpenSSL,而不是标准的自动工具。我已经删除了一些我从未使用过的代码。我唯一不能解析的符号是_BIGNUM_it。
它在asn1t.h中声明为:
DECLARE_ASN1_ITEM(BIGNUM)和
#define DECLARE_ASN1_ITEM(name) \
extern const ASN1_ITEM name##_it;在rsa_asn1.c中使用
ASN1_SIMPLE(RSA, n, BIGNUM),
ASN1_SIMPLE(RSA, e, BIGNUM),决定:
#define ASN1_SIMPLE(stname, field, type) ASN1_EX_TYPE(0,0, stname, field, type)和
#define ASN1_EX_TYPE(flags, tag, stname, field, type) { \
(flags), (tag), offsetof(stname, field),\
#field, ASN1_ITEM_ref(type) }和
#define ASN1_ITEM_ref(iptr) (&(iptr##_it))我找了其他用过的符号。它们是使用IMPLEMENT_ASN1_TYPE()实现的。我使用BIGNUM搜索了所有的OpenSSL代码,但是没有找到任何东西。此外,我还试图在代码中使用IMPLEMENT_ASN1_TYPE(BIGNUM),这导致了数千个错误。
这是从外面提供的东西吗?我错过了一个.c文件吗?如果是,是哪一个?
谢谢你的帮忙!
发布于 2014-12-12 11:21:04
我在asn1/x_bignum.c中找到了这个符号。
https://stackoverflow.com/questions/27439472
复制相似问题