pkix1explicit88.erl
来自「OTP是开放电信平台的简称」· ERL 代码 · 共 2,056 行 · 第 1/5 页
ERL
2,056 行
'dec_X520LocalityName'(Tlv) -> 'dec_X520LocalityName'(Tlv, []).'dec_X520LocalityName'(Tlv, TagIn) ->Tlv1 = ?RT_BER:match_tags(Tlv,TagIn), case (case Tlv1 of [CtempTlv1] -> CtempTlv1; _ -> Tlv1 end) of%% 'teletexString' {20, V1} -> {teletexString, ?RT_BER:decode_restricted_string(V1,{1,128},20,[])};%% 'printableString' {19, V1} -> {printableString, ?RT_BER:decode_restricted_string(V1,{1,128},19,[])};%% 'universalString' {28, V1} -> {universalString, ?RT_BER:decode_universal_string(V1,{1,128},[])};%% 'utf8String' {12, V1} -> {utf8String, ?RT_BER:decode_UTF8_string(V1,[])};%% 'bmpString' {30, V1} -> {bmpString, ?RT_BER:decode_BMP_string(V1,{1,128},[])}; Else -> exit({error,{asn1,{invalid_choice_tag,Else}}}) end.%%================================%% X520StateOrProvinceName%%================================'enc_X520StateOrProvinceName'(Val) -> 'enc_X520StateOrProvinceName'(Val, []).'enc_X520StateOrProvinceName'({'X520StateOrProvinceName',Val}, TagIn) -> 'enc_X520StateOrProvinceName'(Val, TagIn);'enc_X520StateOrProvinceName'(Val, TagIn) -> {EncBytes,EncLen} = case element(1,Val) of teletexString -> ?RT_BER:encode_restricted_string([], element(2,Val), 20, [<<20>>]); printableString -> ?RT_BER:encode_restricted_string([], element(2,Val), 19, [<<19>>]); universalString -> ?RT_BER:encode_universal_string([], element(2,Val), [<<28>>]); utf8String -> ?RT_BER:encode_UTF8_string([], element(2,Val), [<<12>>]); bmpString -> ?RT_BER:encode_BMP_string([], element(2,Val), [<<30>>]); Else -> exit({error,{asn1,{invalid_choice_type,Else}}}) end,?RT_BER:encode_tags(TagIn, EncBytes, EncLen).'dec_X520StateOrProvinceName'(Tlv) -> 'dec_X520StateOrProvinceName'(Tlv, []).'dec_X520StateOrProvinceName'(Tlv, TagIn) ->Tlv1 = ?RT_BER:match_tags(Tlv,TagIn), case (case Tlv1 of [CtempTlv1] -> CtempTlv1; _ -> Tlv1 end) of%% 'teletexString' {20, V1} -> {teletexString, ?RT_BER:decode_restricted_string(V1,{1,128},20,[])};%% 'printableString' {19, V1} -> {printableString, ?RT_BER:decode_restricted_string(V1,{1,128},19,[])};%% 'universalString' {28, V1} -> {universalString, ?RT_BER:decode_universal_string(V1,{1,128},[])};%% 'utf8String' {12, V1} -> {utf8String, ?RT_BER:decode_UTF8_string(V1,[])};%% 'bmpString' {30, V1} -> {bmpString, ?RT_BER:decode_BMP_string(V1,{1,128},[])}; Else -> exit({error,{asn1,{invalid_choice_tag,Else}}}) end.%%================================%% X520OrganizationName%%================================'enc_X520OrganizationName'(Val) -> 'enc_X520OrganizationName'(Val, []).'enc_X520OrganizationName'({'X520OrganizationName',Val}, TagIn) -> 'enc_X520OrganizationName'(Val, TagIn);'enc_X520OrganizationName'(Val, TagIn) -> {EncBytes,EncLen} = case element(1,Val) of teletexString -> ?RT_BER:encode_restricted_string([], element(2,Val), 20, [<<20>>]); printableString -> ?RT_BER:encode_restricted_string([], element(2,Val), 19, [<<19>>]); universalString -> ?RT_BER:encode_universal_string([], element(2,Val), [<<28>>]); utf8String -> ?RT_BER:encode_UTF8_string([], element(2,Val), [<<12>>]); bmpString -> ?RT_BER:encode_BMP_string([], element(2,Val), [<<30>>]); Else -> exit({error,{asn1,{invalid_choice_type,Else}}}) end,?RT_BER:encode_tags(TagIn, EncBytes, EncLen).'dec_X520OrganizationName'(Tlv) -> 'dec_X520OrganizationName'(Tlv, []).'dec_X520OrganizationName'(Tlv, TagIn) ->Tlv1 = ?RT_BER:match_tags(Tlv,TagIn), case (case Tlv1 of [CtempTlv1] -> CtempTlv1; _ -> Tlv1 end) of%% 'teletexString' {20, V1} -> {teletexString, ?RT_BER:decode_restricted_string(V1,{1,64},20,[])};%% 'printableString' {19, V1} -> {printableString, ?RT_BER:decode_restricted_string(V1,{1,64},19,[])};%% 'universalString' {28, V1} -> {universalString, ?RT_BER:decode_universal_string(V1,{1,64},[])};%% 'utf8String' {12, V1} -> {utf8String, ?RT_BER:decode_UTF8_string(V1,[])};%% 'bmpString' {30, V1} -> {bmpString, ?RT_BER:decode_BMP_string(V1,{1,64},[])}; Else -> exit({error,{asn1,{invalid_choice_tag,Else}}}) end.%%================================%% X520OrganizationalUnitName%%================================'enc_X520OrganizationalUnitName'(Val) -> 'enc_X520OrganizationalUnitName'(Val, []).'enc_X520OrganizationalUnitName'({'X520OrganizationalUnitName',Val}, TagIn) -> 'enc_X520OrganizationalUnitName'(Val, TagIn);'enc_X520OrganizationalUnitName'(Val, TagIn) -> {EncBytes,EncLen} = case element(1,Val) of teletexString -> ?RT_BER:encode_restricted_string([], element(2,Val), 20, [<<20>>]); printableString -> ?RT_BER:encode_restricted_string([], element(2,Val), 19, [<<19>>]); universalString -> ?RT_BER:encode_universal_string([], element(2,Val), [<<28>>]); utf8String -> ?RT_BER:encode_UTF8_string([], element(2,Val), [<<12>>]); bmpString -> ?RT_BER:encode_BMP_string([], element(2,Val), [<<30>>]); Else -> exit({error,{asn1,{invalid_choice_type,Else}}}) end,?RT_BER:encode_tags(TagIn, EncBytes, EncLen).'dec_X520OrganizationalUnitName'(Tlv) -> 'dec_X520OrganizationalUnitName'(Tlv, []).'dec_X520OrganizationalUnitName'(Tlv, TagIn) ->Tlv1 = ?RT_BER:match_tags(Tlv,TagIn), case (case Tlv1 of [CtempTlv1] -> CtempTlv1; _ -> Tlv1 end) of%% 'teletexString' {20, V1} -> {teletexString, ?RT_BER:decode_restricted_string(V1,{1,64},20,[])};%% 'printableString' {19, V1} -> {printableString, ?RT_BER:decode_restricted_string(V1,{1,64},19,[])};%% 'universalString' {28, V1} -> {universalString, ?RT_BER:decode_universal_string(V1,{1,64},[])};%% 'utf8String' {12, V1} -> {utf8String, ?RT_BER:decode_UTF8_string(V1,[])};%% 'bmpString' {30, V1} -> {bmpString, ?RT_BER:decode_BMP_string(V1,{1,64},[])}; Else -> exit({error,{asn1,{invalid_choice_tag,Else}}}) end.%%================================%% X520Title%%================================'enc_X520Title'(Val) -> 'enc_X520Title'(Val, []).'enc_X520Title'({'X520Title',Val}, TagIn) -> 'enc_X520Title'(Val, TagIn);'enc_X520Title'(Val, TagIn) -> {EncBytes,EncLen} = case element(1,Val) of teletexString -> ?RT_BER:encode_restricted_string([], element(2,Val), 20, [<<20>>]); printableString -> ?RT_BER:encode_restricted_string([], element(2,Val), 19, [<<19>>]); universalString -> ?RT_BER:encode_universal_string([], element(2,Val), [<<28>>]); utf8String -> ?RT_BER:encode_UTF8_string([], element(2,Val), [<<12>>]); bmpString -> ?RT_BER:encode_BMP_string([], element(2,Val), [<<30>>]); Else -> exit({error,{asn1,{invalid_choice_type,Else}}}) end,?RT_BER:encode_tags(TagIn, EncBytes, EncLen).'dec_X520Title'(Tlv) -> 'dec_X520Title'(Tlv, []).'dec_X520Title'(Tlv, TagIn) ->Tlv1 = ?RT_BER:match_tags(Tlv,TagIn), case (case Tlv1 of [CtempTlv1] -> CtempTlv1; _ -> Tlv1 end) of%% 'teletexString' {20, V1} -> {teletexString, ?RT_BER:decode_restricted_string(V1,{1,64},20,[])};%% 'printableString' {19, V1} -> {printableString, ?RT_BER:decode_restricted_string(V1,{1,64},19,[])};%% 'universalString' {28, V1} -> {universalString, ?RT_BER:decode_universal_string(V1,{1,64},[])};%% 'utf8String' {12, V1} -> {utf8String, ?RT_BER:decode_UTF8_string(V1,[])};%% 'bmpString' {30, V1} -> {bmpString, ?RT_BER:decode_BMP_string(V1,{1,64},[])}; Else -> exit({error,{asn1,{invalid_choice_tag,Else}}}) end.%%================================%% X520dnQualifier%%================================'enc_X520dnQualifier'(Val) -> 'enc_X520dnQualifier'(Val, [<<19>>]).'enc_X520dnQualifier'({'X520dnQualifier',Val}, TagIn) -> 'enc_X520dnQualifier'(Val, TagIn);'enc_X520dnQualifier'(Val, TagIn) ->?RT_BER:encode_restricted_string([], Val, 19, TagIn).'dec_X520dnQualifier'(Tlv) -> 'dec_X520dnQualifier'(Tlv, [19]).'dec_X520dnQualifier'(Tlv, TagIn) ->?RT_BER:decode_restricted_string(Tlv,[],19,TagIn).%%================================%% X520countryName%%================================'enc_X520countryName'(Val) -> 'enc_X520countryName'(Val, [<<19>>]).'enc_X520countryName'({'X520countryName',Val}, TagIn) -> 'enc_X520countryName'(Val, TagIn);'enc_X520countryName'(Val, TagIn) ->?RT_BER:encode_restricted_string([], Val, 19, TagIn).'dec_X520countryName'(Tlv) -> 'dec_X520countryName'(Tlv, [19]).'dec_X520countryName'(Tlv, TagIn) ->?RT_BER:decode_restricted_string(Tlv,2,19,TagIn).%%================================%% X520SerialNumber%%================================'enc_X520SerialNumber'(Val) -> 'enc_X520SerialNumber'(Val, [<<19>>]).'enc_X520SerialNumber'({'X520SerialNumber',Val}, TagIn) -> 'enc_X520SerialNumber'(Val, TagIn);'enc_X520SerialNumber'(Val, TagIn) ->?RT_BER:encode_restricted_string([], Val, 19, TagIn).'dec_X520SerialNumber'(Tlv) -> 'dec_X520SerialNumber'(Tlv, [19]).'dec_X520SerialNumber'(Tlv, TagIn) ->?RT_BER:decode_restricted_string(Tlv,{1,64},19,TagIn).%%================================%% X520Pseudonym%%================================'enc_X520Pseudonym'(Val) -> 'enc_X520Pseudonym'(Val, []).'enc_X520Pseudonym'({'X520Pseudonym',Val}, TagIn) -> 'enc_X520Pseudonym'(Val, TagIn);'enc_X520Pseudonym'(Val, TagIn) -> {EncBytes,EncLen} = case element(1,Val) of teletexString -> ?RT_BER:encode_restricted_string([], element(2,Val), 20, [<<20>>]); printableString -> ?RT_BER:encode_restricted_string([], element(2,Val), 19, [<<19>>]); universalString -> ?RT_BER:encode_universal_string([], element(2,Val), [<<28>>]); utf8String -> ?RT_BER:encode_UTF8_string([], element(2,Val), [<<12>>]); bmpString -> ?RT_BER:encode_BMP_string([], element(2,Val), [<<30>>]); Else -> exit({error,{asn1,{invalid_choice_type,Else}}}) end,?RT_BER:encode_tags(TagIn, EncBytes, EncLen).'dec_X520Pseudonym'(Tlv) -> 'dec_X520Pseudonym'(Tlv, []).
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?