From 3b36fb5bf7537913145f7bd0ae512c7df13dfb34 Mon Sep 17 00:00:00 2001 From: Dimitri Sokolyuk Date: Fri, 23 Oct 2015 12:12:06 +0200 Subject: Encode AARQ and decode AARE --- tda.erl | 28 ++++++++++++++++++---------- 1 file changed, 18 insertions(+), 10 deletions(-) diff --git a/tda.erl b/tda.erl index 073da6e..6bf486d 100644 --- a/tda.erl +++ b/tda.erl @@ -1,18 +1,26 @@ -module(tda). --export([login/0]). +-export([associate_request/0, associate_result/1]). -include("ACSE-1.hrl"). -include("CSTA-application-context-information-csta3.hrl"). -login() -> +associate_request() -> + Ver = {newDefinition, #'NewACSEUserInformationForCSTA'{ + cSTAVersion = [versionFive]}}, + {ok, Enc} = 'CSTA-application-context-information-csta3':encode( + 'ACSEUserInformationForCSTA', Ver), Pdu = #'AARQ-apdu'{'application-context-name' = {1, 3, 12, 0, 218}, - 'user-information' = #'EXTERNAL'{ + 'user-information' = [#'EXTERNAL'{ 'direct-reference' = {1, 3, 12, 0, 285, 200}, - encoding = #'NewACSEUserInformationForCSTA'{ - cSTAVersion = [versionFive] - } - } - }, + encoding = {'single-ASN1-type', Enc} + }]}, + 'ACSE-1':encode('AARQ-apdu', Pdu). - {ok, Bits} = 'ACSE-1':encode('AARQ-apdu', Pdu), +%Bin = <<97,47,128,2,7,128,161,7,6,5,43,12,0,129,90,162,3,2,1,0,163,5,161,3,2,1,1,190,20,40,18,6,7,43,12,0,130,29,129,72,160,7,160,5,3,3,0,8,0>>, +associate_result(Bin) -> + {ok, Pdu} = 'ACSE-1':decode('AARE-apdu', Bin), + [UI] = Pdu#'AARE-apdu'.'user-information', + {_, Enc} = UI#'EXTERNAL'.encoding, + {ok, {_, Ver}} = 'CSTA-application-context-information-csta3':decode( + 'ACSEUserInformationForCSTA', Enc), + {Pdu#'AARE-apdu'.result, Ver#'NewACSEUserInformationForCSTA'.cSTAVersion}. - list_to_binary(Bits). -- cgit v1.2.3