【问题标题】:How to convert asn.1 erlang notation into asn.1 value notation如何将 asn.1 erlang 表示法转换为 asn.1 值表示法
【发布时间】:2011-11-04 10:44:57
【问题描述】:

我想接收每个编码的 asn.1 消息对齐并将其解码为 asn.1 值表示法。有没有可用的工具? Erlang 支持编码和解码,以及从文件中读取值表示法,但解码只给出 erlang,而不给出值表示法。

'S1AP':decode('S1AP-PDU', [32,17,0,23,0,0,2,0,105,0,11,0,0,98,242,33,0,0,195,92,0,51,0,87,64,1,25]).

{ok,{successfulOutcome,{'SuccessfulOutcome',17,reject,{'S1SetupResponse',[{'ProtocolIE-Field',105,reject,[{'ServedGUMMEIsItem',["bò!"],["Ã\\"],["3"],asn1_NOVALUE}]},{'ProtocolIE-Field',87,ignore,25}]}}}}

如何继续上面的代码。我想得到像这里 http://en.wikipedia.org/wiki/Abstract_Syntax_Notation_One#Example 或以下的 PDU(取自 wiki 站点)

myQuestion FooQuestion ::= {
trackingNumber     5,
question           "Anybody there?"
}

【问题讨论】:

  • 您能否澄清一下您的问题,也许可以添加一个示例,预期的结果是什么。

标签: erlang asn.1


【解决方案1】:

您需要包含自动生成的 hrl 文件,其中包含 asn 协议数据的记录定义。它们必须与 asn1 源在同一文件夹中或在 ../include 中。之后,您将能够使用记录语法myQuestion#'FooQuestion'{trackingNumber=TrackingNumber, question=Question} 对数据进行模式匹配。

【讨论】:

  • 我认为 kontulai 正在询问如何将解码的 asn.1 erlang 元组转换为更易于人类阅读的 asn.1 值表示法,最有可能用于记录目的。
  • 是的,这就是为什么他需要记录来为他们写漂亮的打印机。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2022-01-23
  • 2011-12-17
  • 2011-06-10
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多