Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
btwise
openssl
提交
09f278f9
O
openssl
项目概览
btwise
/
openssl
通知
1
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
DevOps
流水线
流水线任务
计划
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
O
openssl
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
DevOps
DevOps
流水线
流水线任务
计划
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
流水线任务
提交
Issue看板
体验新版 GitCode,发现更多精彩内容 >>
提交
09f278f9
编写于
2月 10, 2015
作者:
M
Matt Caswell
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
Add dire warnings about the "reuse" capability of the d2i_* functions.
Reviewed-by:
N
Emilia Käsper
<
emilia@openssl.org
>
上级
93b83d06
变更
1
隐藏空白更改
内联
并排
Showing
1 changed file
with
13 addition
and
5 deletion
+13
-5
doc/crypto/d2i_X509.pod
doc/crypto/d2i_X509.pod
+13
-5
未找到文件。
doc/crypto/d2i_X509.pod
浏览文件 @
09f278f9
...
@@ -30,8 +30,11 @@ successful a pointer to the B<X509> structure is returned. If an error
...
@@ -30,8 +30,11 @@ successful a pointer to the B<X509> structure is returned. If an error
occurred then B<NULL> is returned. If B<px> is not B<NULL> then the
occurred then B<NULL> is returned. If B<px> is not B<NULL> then the
returned structure is written to B<*px>. If B<*px> is not B<NULL>
returned structure is written to B<*px>. If B<*px> is not B<NULL>
then it is assumed that B<*px> contains a valid B<X509>
then it is assumed that B<*px> contains a valid B<X509>
structure and an attempt is made to reuse it. If the call is
structure and an attempt is made to reuse it. This "reuse" capability is present
successful B<*in> is incremented to the byte following the
for historical compatibility but its use is B<strongly discouraged> (see BUGS
below, and the discussion in the RETURN VALUES section).
If the call is successful B<*in> is incremented to the byte following the
parsed data.
parsed data.
i2d_X509() encodes the structure pointed to by B<x> into DER format.
i2d_X509() encodes the structure pointed to by B<x> into DER format.
...
@@ -87,7 +90,8 @@ can trap the unwary. See the B<WARNINGS> section for some common
...
@@ -87,7 +90,8 @@ can trap the unwary. See the B<WARNINGS> section for some common
errors.
errors.
The reason for the auto increment behaviour is to reflect a typical
The reason for the auto increment behaviour is to reflect a typical
usage of ASN1 functions: after one structure is encoded or decoded
usage of ASN1 functions: after one structure is encoded or decoded if (a != NULL)
(*a) = ret;
another will processed after it.
another will processed after it.
=head1 EXAMPLES
=head1 EXAMPLES
...
@@ -209,7 +213,8 @@ of this "reuse" behaviour is strongly discouraged.
...
@@ -209,7 +213,8 @@ of this "reuse" behaviour is strongly discouraged.
i2d_X509() will not return an error in many versions of OpenSSL,
i2d_X509() will not return an error in many versions of OpenSSL,
if mandatory fields are not initialized due to a programming error
if mandatory fields are not initialized due to a programming error
then the encoded structure may contain invalid data or omit the
then the encoded structure may contain invalid data or omit the if (a != NULL)
(*a) = ret;
fields entirely and will not be parsed by d2i_X509(). This may be
fields entirely and will not be parsed by d2i_X509(). This may be
fixed in future so code should not assume that i2d_X509() will
fixed in future so code should not assume that i2d_X509() will
always succeed.
always succeed.
...
@@ -233,7 +238,10 @@ i2d_re_X509_tbs().
...
@@ -233,7 +238,10 @@ i2d_re_X509_tbs().
d2i_X509(), d2i_X509_bio() and d2i_X509_fp() return a valid B<X509> structure
d2i_X509(), d2i_X509_bio() and d2i_X509_fp() return a valid B<X509> structure
or B<NULL> if an error occurs. The error code that can be obtained by
or B<NULL> if an error occurs. The error code that can be obtained by
L<ERR_get_error(3)|ERR_get_error(3)>.
L<ERR_get_error(3)|ERR_get_error(3)>. If the "reuse" capability has been used
with a valid X509 structure being passed in via B<px> then the object is not
freed in the event of error but may be in a potentially invalid or inconsistent
state.
i2d_X509() returns the number of bytes successfully encoded or a negative
i2d_X509() returns the number of bytes successfully encoded or a negative
value if an error occurs. The error code can be obtained by
value if an error occurs. The error code can be obtained by
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录