Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
OpenHarmony
Third Party Openssl
提交
c9654873
T
Third Party Openssl
项目概览
OpenHarmony
/
Third Party Openssl
1 年多 前同步成功
通知
10
Star
18
Fork
1
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
T
Third Party Openssl
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
提交
c9654873
编写于
4月 27, 2016
作者:
V
Viktor Dukhovni
提交者:
Rich Salz
4月 28, 2016
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
Implement X509_STORE_CTX_set_current_cert() accessor
Reviewed-by:
N
Rich Salz
<
rsalz@openssl.org
>
上级
68423b14
变更
3
隐藏空白更改
内联
并排
Showing
3 changed file
with
29 addition
and
6 deletion
+29
-6
crypto/x509/x509_vfy.c
crypto/x509/x509_vfy.c
+5
-0
doc/crypto/X509_STORE_CTX_get_error.pod
doc/crypto/X509_STORE_CTX_get_error.pod
+23
-6
include/openssl/x509_vfy.h
include/openssl/x509_vfy.h
+1
-0
未找到文件。
crypto/x509/x509_vfy.c
浏览文件 @
c9654873
...
@@ -1999,6 +1999,11 @@ X509 *X509_STORE_CTX_get_current_cert(X509_STORE_CTX *ctx)
...
@@ -1999,6 +1999,11 @@ X509 *X509_STORE_CTX_get_current_cert(X509_STORE_CTX *ctx)
return
ctx
->
current_cert
;
return
ctx
->
current_cert
;
}
}
void
X509_STORE_CTX_set_current_cert
(
X509_STORE_CTX
*
ctx
,
X509
*
x
)
{
ctx
->
current_cert
=
x
;
}
STACK_OF
(
X509
)
*
X509_STORE_CTX_get0_chain
(
X509_STORE_CTX
*
ctx
)
STACK_OF
(
X509
)
*
X509_STORE_CTX_get0_chain
(
X509_STORE_CTX
*
ctx
)
{
{
return
ctx
->
chain
;
return
ctx
->
chain
;
...
...
doc/crypto/X509_STORE_CTX_get_error.pod
浏览文件 @
c9654873
...
@@ -4,8 +4,10 @@
...
@@ -4,8 +4,10 @@
X509_STORE_CTX_get_error, X509_STORE_CTX_set_error,
X509_STORE_CTX_get_error, X509_STORE_CTX_set_error,
X509_STORE_CTX_get_error_depth, X509_STORE_CTX_set_error_depth,
X509_STORE_CTX_get_error_depth, X509_STORE_CTX_set_error_depth,
X509_STORE_CTX_get_current_cert, X509_STORE_CTX_get0_cert,
X509_STORE_CTX_get_current_cert, X509_STORE_CTX_set_current_cert,
X509_STORE_CTX_get1_chain, X509_verify_cert_error_string - get or set certificate verification status information
X509_STORE_CTX_get0_cert, X509_STORE_CTX_get1_chain,
X509_verify_cert_error_string - get or set certificate verification status
information
=head1 SYNOPSIS
=head1 SYNOPSIS
...
@@ -13,10 +15,11 @@ X509_STORE_CTX_get1_chain, X509_verify_cert_error_string - get or set certificat
...
@@ -13,10 +15,11 @@ X509_STORE_CTX_get1_chain, X509_verify_cert_error_string - get or set certificat
#include <openssl/x509_vfy.h>
#include <openssl/x509_vfy.h>
int X509_STORE_CTX_get_error(X509_STORE_CTX *ctx);
int X509_STORE_CTX_get_error(X509_STORE_CTX *ctx);
void X509_STORE_CTX_set_error(X509_STORE_CTX *ctx,int s);
void X509_STORE_CTX_set_error(X509_STORE_CTX *ctx,
int s);
int X509_STORE_CTX_get_error_depth(X509_STORE_CTX *ctx);
int X509_STORE_CTX_get_error_depth(X509_STORE_CTX *ctx);
void X509_STORE_CTX_set_error_depth(X509_STORE_CTX *ctx, int depth);
void X509_STORE_CTX_set_error_depth(X509_STORE_CTX *ctx, int depth);
X509 *X509_STORE_CTX_get_current_cert(X509_STORE_CTX *ctx);
X509 *X509_STORE_CTX_get_current_cert(X509_STORE_CTX *ctx);
void X509_STORE_CTX_set_current_cert(X509_STORE_CTX *ctx, X509 *x);
X509 *X509_STORE_CTX_get0_cert(X509_STORE_CTX *ctx);
X509 *X509_STORE_CTX_get0_cert(X509_STORE_CTX *ctx);
STACK_OF(X509) *X509_STORE_CTX_get1_chain(X509_STORE_CTX *ctx);
STACK_OF(X509) *X509_STORE_CTX_get1_chain(X509_STORE_CTX *ctx);
...
@@ -44,11 +47,23 @@ X509_STORE_CTX_set_error_depth() sets the error B<depth>.
...
@@ -44,11 +47,23 @@ X509_STORE_CTX_set_error_depth() sets the error B<depth>.
This can be used in combination with X509_STORE_CTX_set_error() to set the
This can be used in combination with X509_STORE_CTX_set_error() to set the
depth at which an error condition was detected.
depth at which an error condition was detected.
X509_STORE_CTX_get0_cert() returns the leaf certificate being verified.
X509_STORE_CTX_get_current_cert() returns the certificate in B<ctx> which
X509_STORE_CTX_get_current_cert() returns the certificate in B<ctx> which
caused the error or B<NULL> if no certificate is relevant.
caused the error or B<NULL> if no certificate is relevant.
X509_STORE_CTX_set_current_cert() sets the certificate B<x> in B<ctx> which
caused the error.
This value is not intended to remain valid for very long, and remains owned by
the caller.
It may be examined by a verification callback invoked to handle each error
encountered during chain verification and is no longer required after such a
callback.
If a callback wishes the save the certificate for use after it returns, it
needs to increment its reference count via L<X509_up_ref(3)>.
Once such a I<saved> certificate is no longer needed it can be freed with
L<X509_free(3)>.
X509_STORE_CTX_get0_cert() returns the leaf certificate being verified.
X509_STORE_CTX_get1_chain() returns a complete validate chain if a previous
X509_STORE_CTX_get1_chain() returns a complete validate chain if a previous
call to X509_verify_cert() is successful. If the call to X509_verify_cert()
call to X509_verify_cert() is successful. If the call to X509_verify_cert()
is B<not> successful the returned chain may be incomplete or invalid. The
is B<not> successful the returned chain may be incomplete or invalid. The
...
@@ -307,7 +322,9 @@ thread safe but will never happen unless an invalid code is passed.
...
@@ -307,7 +322,9 @@ thread safe but will never happen unless an invalid code is passed.
=head1 SEE ALSO
=head1 SEE ALSO
L<X509_verify_cert(3)>
L<X509_verify_cert(3)>,
L<X509_up_ref(3)>,
L<X509_free(3)>.
=head1 HISTORY
=head1 HISTORY
...
...
include/openssl/x509_vfy.h
浏览文件 @
c9654873
...
@@ -372,6 +372,7 @@ void X509_STORE_CTX_set_error(X509_STORE_CTX *ctx, int s);
...
@@ -372,6 +372,7 @@ void X509_STORE_CTX_set_error(X509_STORE_CTX *ctx, int s);
int
X509_STORE_CTX_get_error_depth
(
X509_STORE_CTX
*
ctx
);
int
X509_STORE_CTX_get_error_depth
(
X509_STORE_CTX
*
ctx
);
void
X509_STORE_CTX_set_error_depth
(
X509_STORE_CTX
*
ctx
,
int
depth
);
void
X509_STORE_CTX_set_error_depth
(
X509_STORE_CTX
*
ctx
,
int
depth
);
X509
*
X509_STORE_CTX_get_current_cert
(
X509_STORE_CTX
*
ctx
);
X509
*
X509_STORE_CTX_get_current_cert
(
X509_STORE_CTX
*
ctx
);
void
X509_STORE_CTX_set_current_cert
(
X509_STORE_CTX
*
ctx
,
X509
*
x
);
X509
*
X509_STORE_CTX_get0_current_issuer
(
X509_STORE_CTX
*
ctx
);
X509
*
X509_STORE_CTX_get0_current_issuer
(
X509_STORE_CTX
*
ctx
);
X509_CRL
*
X509_STORE_CTX_get0_current_crl
(
X509_STORE_CTX
*
ctx
);
X509_CRL
*
X509_STORE_CTX_get0_current_crl
(
X509_STORE_CTX
*
ctx
);
X509_STORE_CTX
*
X509_STORE_CTX_get0_parent_ctx
(
X509_STORE_CTX
*
ctx
);
X509_STORE_CTX
*
X509_STORE_CTX_get0_parent_ctx
(
X509_STORE_CTX
*
ctx
);
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录