asn.1 ソース ファイル (test.asn1 など) で 1 つの構造を定義しているときに問題が発生しました。
プロトコル バージョン 1 の次の定義があります。
PolicyControlDiagnostics ::= ENUMERATED
{
policy (1),
policyControl (2),
policyControlResumed (3)
}
次に、バージョン 2 をサポートする必要があります。プロトコル バージョン 2 では、いくつかのフィールドが変更されましたが、構造名は変更されません。たとえば、変数 policy が に変更されmytestpolicy
、policyControl が に変更されましたmytestpolicyControl
。その間、構造名PolicyControlDiagnostics
はバージョン 1 とバージョン 2 の両方で同じでした。
PolicyControlDiagnostics ::= ENUMERATED
{
mytestpolicy (1),
mytestpolicyControl (2),
policyControlResumed (3)
}
BER エンコード、デコードに snac を使用する C ルーチンを作成しようとすると、次のようにエラーが表示されます。
file "test.asn1", line 632: ERROR - type PolicyControlDiagnostics is multiply defined.
このエラーを解決するのを手伝ってもらえますか? ありがとう。