Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
OpenHarmony
Third Party Openssl
提交
59d2d48f
T
Third Party Openssl
项目概览
OpenHarmony
/
Third Party Openssl
接近 2 年 前同步成功
通知
12
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看板
提交
59d2d48f
编写于
6月 03, 2008
作者:
D
Dr. Stephen Henson
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
Add support for client cert engine setting in s_client app.
Add appropriate #ifdefs round client cert functions in headers.
上级
b3c8dd4e
变更
3
隐藏空白更改
内联
并排
Showing
3 changed file
with
37 addition
and
4 deletion
+37
-4
apps/s_client.c
apps/s_client.c
+32
-1
crypto/engine/engine.h
crypto/engine/engine.h
+3
-3
ssl/ssl.h
ssl/ssl.h
+2
-0
未找到文件。
apps/s_client.c
浏览文件 @
59d2d48f
...
...
@@ -404,7 +404,8 @@ int MAIN(int argc, char **argv)
int
mbuf_len
=
0
;
#ifndef OPENSSL_NO_ENGINE
char
*
engine_id
=
NULL
;
ENGINE
*
e
=
NULL
;
char
*
ssl_client_engine_id
=
NULL
;
ENGINE
*
e
=
NULL
,
*
ssl_client_engine
=
NULL
;
#endif
#if defined(OPENSSL_SYS_WINDOWS) || defined(OPENSSL_SYS_MSDOS) || defined(OPENSSL_SYS_NETWARE) || defined(OPENSSL_SYS_BEOS_R5)
struct
timeval
tv
;
...
...
@@ -670,6 +671,11 @@ int MAIN(int argc, char **argv)
if
(
--
argc
<
1
)
goto
bad
;
engine_id
=
*
(
++
argv
);
}
else
if
(
strcmp
(
*
argv
,
"-ssl_client_engine"
)
==
0
)
{
if
(
--
argc
<
1
)
goto
bad
;
ssl_client_engine_id
=
*
(
++
argv
);
}
#endif
else
if
(
strcmp
(
*
argv
,
"-rand"
)
==
0
)
{
...
...
@@ -705,6 +711,17 @@ bad:
#ifndef OPENSSL_NO_ENGINE
e
=
setup_engine
(
bio_err
,
engine_id
,
1
);
if
(
ssl_client_engine_id
)
{
ssl_client_engine
=
ENGINE_by_id
(
ssl_client_engine_id
);
if
(
!
ssl_client_engine
)
{
BIO_printf
(
bio_err
,
"Error getting client auth engine
\n
"
);
goto
end
;
}
}
#endif
if
(
!
app_passwd
(
bio_err
,
passarg
,
NULL
,
&
pass
,
NULL
))
{
...
...
@@ -772,6 +789,20 @@ bad:
goto
end
;
}
#ifndef OPENSSL_NO_ENGINE
if
(
ssl_client_engine
)
{
if
(
!
SSL_CTX_set_client_cert_engine
(
ctx
,
ssl_client_engine
))
{
BIO_puts
(
bio_err
,
"Error setting client auth engine
\n
"
);
ERR_print_errors
(
bio_err
);
ENGINE_free
(
ssl_client_engine
);
goto
end
;
}
ENGINE_free
(
ssl_client_engine
);
}
#endif
#ifndef OPENSSL_NO_PSK
if
(
psk_key
!=
NULL
)
{
...
...
crypto/engine/engine.h
浏览文件 @
59d2d48f
...
...
@@ -334,6 +334,9 @@ void ENGINE_load_nuron(void);
void
ENGINE_load_sureware
(
void
);
void
ENGINE_load_ubsec
(
void
);
void
ENGINE_load_padlock
(
void
);
#ifndef OPENSSL_NO_CAPIENG
void
ENGINE_load_capi
(
void
);
#endif
#ifndef OPENSSL_NO_GMP
void
ENGINE_load_gmp
(
void
);
#endif
...
...
@@ -343,9 +346,6 @@ void ENGINE_load_gost(void);
#endif
void
ENGINE_load_cryptodev
(
void
);
void
ENGINE_load_builtin_engines
(
void
);
#ifndef OPENSSL_NO_CAPIENG
void
ENGINE_load_capi
(
void
);
#endif
/* Get and set global flags (ENGINE_TABLE_FLAG_***) for the implementation
* "registry" handling. */
...
...
ssl/ssl.h
浏览文件 @
59d2d48f
...
...
@@ -895,7 +895,9 @@ void SSL_CTX_set_info_callback(SSL_CTX *ctx, void (*cb)(const SSL *ssl,int type,
void
(
*
SSL_CTX_get_info_callback
(
SSL_CTX
*
ctx
))(
const
SSL
*
ssl
,
int
type
,
int
val
);
void
SSL_CTX_set_client_cert_cb
(
SSL_CTX
*
ctx
,
int
(
*
client_cert_cb
)(
SSL
*
ssl
,
X509
**
x509
,
EVP_PKEY
**
pkey
));
int
(
*
SSL_CTX_get_client_cert_cb
(
SSL_CTX
*
ctx
))(
SSL
*
ssl
,
X509
**
x509
,
EVP_PKEY
**
pkey
);
#ifndef OPENSSL_NO_ENGINE
int
SSL_CTX_set_client_cert_engine
(
SSL_CTX
*
ctx
,
ENGINE
*
e
);
#endif
void
SSL_CTX_set_cookie_generate_cb
(
SSL_CTX
*
ctx
,
int
(
*
app_gen_cookie_cb
)(
SSL
*
ssl
,
unsigned
char
*
cookie
,
unsigned
int
*
cookie_len
));
void
SSL_CTX_set_cookie_verify_cb
(
SSL_CTX
*
ctx
,
int
(
*
app_verify_cookie_cb
)(
SSL
*
ssl
,
unsigned
char
*
cookie
,
unsigned
int
cookie_len
));
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录