diff options
author | Simon Cornish <[email protected]> | 2014-11-18 15:31:34 -0800 |
---|---|---|
committer | Simon Cornish <[email protected]> | 2014-11-24 10:38:34 -0800 |
commit | d9fb74bdb85527be7a06aec735716b1a9ede7abb (patch) | |
tree | 1d1bc89244b4559c117de594b022fe68c0e4522c /lib/asn1/src | |
parent | 0261f3bf644f97460aa92895d922376c362ee2b6 (diff) | |
download | otp-d9fb74bdb85527be7a06aec735716b1a9ede7abb.tar.gz otp-d9fb74bdb85527be7a06aec735716b1a9ede7abb.tar.bz2 otp-d9fb74bdb85527be7a06aec735716b1a9ede7abb.zip |
Fix IMPLICIT tagging when TagDefault is AUTOMATIC
This patch fixes a bug with compliance to X.680 (200811) s31.2.7
Basically, when TagDefault is AUTOMATIC then
tags are IMPLICIT unless EXPLICIT is given.
Diffstat (limited to 'lib/asn1/src')
-rw-r--r-- | lib/asn1/src/asn1ct_check.erl | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/lib/asn1/src/asn1ct_check.erl b/lib/asn1/src/asn1ct_check.erl index 5d8740b92e..45f1d3a8c9 100644 --- a/lib/asn1/src/asn1ct_check.erl +++ b/lib/asn1/src/asn1ct_check.erl @@ -6581,6 +6581,8 @@ merge_tags2([T1= #tag{type='IMPLICIT'}, T2 |Rest], Acc) -> merge_tags2([T1#tag{type=T2#tag.type, form=T2#tag.form}|Rest],Acc); merge_tags2([T1= #tag{type={default,'IMPLICIT'}}, T2 |Rest], Acc) -> merge_tags2([T1#tag{type=T2#tag.type, form=T2#tag.form}|Rest],Acc); +merge_tags2([T1= #tag{type={default,'AUTOMATIC'}}, T2 |Rest], Acc) -> + merge_tags2([T1#tag{type=T2#tag.type, form=T2#tag.form}|Rest],Acc); merge_tags2([H|T],Acc) -> merge_tags2(T, [H|Acc]); merge_tags2([], Acc) -> |