Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
OpenHarmony
Third Party Openssl
提交
7a556fb6
T
Third Party Openssl
项目概览
OpenHarmony
/
Third Party Openssl
大约 1 年 前同步成功
通知
9
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看板
体验新版 GitCode,发现更多精彩内容 >>
提交
7a556fb6
编写于
1月 09, 2016
作者:
D
Dr. Stephen Henson
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
Add DEPRECATEDIN support.
Reviewed-by:
N
Viktor Dukhovni
<
viktor@openssl.org
>
上级
c3be59a4
变更
1
隐藏空白更改
内联
并排
Showing
1 changed file
with
42 addition
and
10 deletion
+42
-10
util/mkdef.pl
util/mkdef.pl
+42
-10
未找到文件。
util/mkdef.pl
浏览文件 @
7a556fb6
...
...
@@ -101,7 +101,9 @@ my @known_algorithms = ( "RC2", "RC4", "RC5", "IDEA", "DES", "BF",
# NEXTPROTONEG
"
NEXTPROTONEG
",
# Deprecated functions
"
DEPRECATED
",
"
DEPRECATEDIN_0_9_8
",
"
DEPRECATEDIN_1_0_0
",
"
DEPRECATEDIN_1_1_0
",
# SCTP
"
SCTP
",
# SRTP
...
...
@@ -174,8 +176,23 @@ foreach (@ARGV, split(/ /, $options))
$do_ctestall
=
1
if
$_
eq
"
ctestall
";
$do_checkexist
=
1
if
$_
eq
"
exist
";
#$safe_stack_def=1 if $_ eq "-DDEBUG_SAFESTACK";
if
(
/^(enable|disable|no)-(.*)$/
)
{
if
(
/^--api=(\d+)\.(\d+)\.(\d+)$/
)
{
my
$apiv
=
sprintf
"
%x%02x%02x
",
$
1
,
$
2
,
$
3
;
foreach
(
keys
%disabled_algorithms
)
{
if
(
/^DEPRECATEDIN_(\d+)_(\d+)_(\d+)$/
)
{
my
$depv
=
sprintf
"
%x%02x%02x
",
$
1
,
$
2
,
$
3
;
$disabled_algorithms
{
$_
}
=
1
if
$apiv
ge
$depv
;
}
}
}
if
(
/^no-deprecated$/
)
{
foreach
(
keys
%disabled_algorithms
)
{
if
(
/^DEPRECATEDIN_/
)
{
$disabled_algorithms
{
$_
}
=
1
;
}
}
}
elsif
(
/^(enable|disable|no)-(.*)$/
)
{
my
$alg
=
uc
$
2
;
$alg
=~
tr/-/_/
;
if
(
exists
$disabled_algorithms
{
$alg
})
{
...
...
@@ -439,14 +456,15 @@ sub do_defs
print
STDERR
"
DEBUG: parsing ----------
\n
"
if
$debug
;
while
(
<
IN
>
)
{
if
(
$parens
>
0
)
{
#Inside a DE
CLARE_DEPRECATED
#Inside a DE
PRECATEDIN
$stored_multiline
.=
$_
;
chomp
$stored_multiline
;
print
STDERR
"
DEBUG: Continuing multiline DEPRECATED:
$stored_multiline
\n
"
if
$debug
;
print
STDERR
"
DEBUG: Continuing multiline DEPRECATED
IN
:
$stored_multiline
\n
"
if
$debug
;
$parens
=
count_parens
(
$stored_multiline
);
if
(
$parens
==
0
)
{
$stored_multiline
=~
/^\s*DECLARE_DEPRECATED\s*\(\s*(\w*(\s|\*|\w)*)/
;
$def
.=
"
$1(void);
";
$def
.=
do_deprecated
(
$stored_multiline
,
\
@current_platforms
,
\
@current_algorithms
);
}
next
;
}
...
...
@@ -840,14 +858,16 @@ sub do_defs
&$make_variant
("
_shadow_$2
","
_shadow_$2
",
"
EXPORT_VAR_AS_FUNCTION
",
"
FUNCTION
");
}
elsif
(
/^\s*DE
CLARE_DEPRECATED\s*\(\s*(\w*(\s|\*|\w)*)
/
)
{
}
elsif
(
/^\s*DE
PRECATEDIN
/
)
{
$parens
=
count_parens
(
$_
);
if
(
$parens
==
0
)
{
$def
.=
"
$1(void);
";
$def
.=
do_deprecated
(
$_
,
\
@current_platforms
,
\
@current_algorithms
);
}
else
{
$stored_multiline
=
$_
;
chomp
$stored_multiline
;
print
STDERR
"
DEBUG: Found multiline DEPRECATED starting with:
$stored_multiline
\n
"
if
$debug
;
print
STDERR
"
DEBUG: Found multiline DEPRECATED
IN
starting with:
$stored_multiline
\n
"
if
$debug
;
next
;
}
}
elsif
(
$tag
{'
CONST_STRICT
'}
!=
1
)
{
...
...
@@ -1657,3 +1677,15 @@ sub check_version_lte()
if
((
$cvbase
ne
$tvbase
)
&&
(
$tvletter
gt
$cvletter
));
}
}
sub
do_deprecated
()
{
my
(
$decl
,
$plats
,
$algs
)
=
@_
;
$decl
=~
/^\s*(DEPRECATEDIN_\d_\d_\d)\s*\((.*)\)\s*$/
;
my
$info1
.=
"
#INFO:
";
$info1
.=
join
('
,
',
@
{
$plats
})
.
"
:
";
my
$info2
=
$info1
;
$info1
.=
join
('
,
',
@
{
$algs
},
$
1
)
.
"
;
";
$info2
.=
join
('
,
',
@
{
$algs
})
.
"
;
";
return
$info1
.
$
2
.
"
;
"
.
$info2
;
}
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录