From f791f0f2cadf54b4d0a5db7f84afc866f287bbf2 Mon Sep 17 00:00:00 2001 From: Dimitri Sokolyuk Date: Wed, 11 Nov 2015 04:08:19 +0100 Subject: Add generic decoder rose/acse --- src/pbx_conn.erl | 2 ++ src/pbx_pdu.erl | 13 +++++++++++++ 2 files changed, 15 insertions(+) create mode 100644 src/pbx_pdu.erl diff --git a/src/pbx_conn.erl b/src/pbx_conn.erl index a4eecec..8326b84 100644 --- a/src/pbx_conn.erl +++ b/src/pbx_conn.erl @@ -28,6 +28,8 @@ handle_cast({error, Reason}, Socket) -> handle_info({tcp, _, Data}, Socket) -> pbx_acse:decode(Data), + Pdu = pbx_pdu:decode(Data), + io:format("PDU ~p~n", [Pdu]), {noreply, Socket}; handle_info({tcp_closed, _}, Socket) -> diff --git a/src/pbx_pdu.erl b/src/pbx_pdu.erl new file mode 100644 index 0000000..b6b4cd2 --- /dev/null +++ b/src/pbx_pdu.erl @@ -0,0 +1,13 @@ +-module(pbx_pdu). +-export([decode/1]). +-include("Remote-Operations-Generic-ROS-PDUs.hrl"). +-include("ACSE-1.hrl"). + +decode({asn1_ExtAlt, <>}) -> + {ok, Pdu} = 'Remote-Operations-Generic-ROS-PDUs':decode('ROS', Data), + Pdu; +decode(<>) -> + {ok, Pdu} = 'ACSE-1':decode('ACSE-apdu', Data), + decode(Pdu); +decode(Pdu) -> + Pdu. -- cgit v1.2.3