DHA: fix parsing of BEGIN dialogue portion on incoming msgs

This commit is contained in:
Harald Welte 2013-06-08 01:14:21 +02:00
parent 3bf400d91a
commit f1803eabfb
1 changed files with 6 additions and 3 deletions

View File

@ -817,9 +817,12 @@ extract_uni_dialogue_portion(_DialoguePortion) ->
%% Dialogue portion included? (yes) %% Dialogue portion included? (yes)
extract_begin_dialogue_portion(UserData) when is_record(UserData, 'TR-user-data'), extract_begin_dialogue_portion(UserData) when is_record(UserData, 'TR-user-data'),
UserData#'TR-user-data'.dialoguePortion /= undefined -> UserData#'TR-user-data'.dialoguePortion /= undefined ->
%% Dialogue portion correct? %% Extract dialogue portion
case 'DialoguePDUs':decode('DialoguePDU', UserData#'TR-user-data'.dialoguePortion) of %{'EXTERNAL', {syntax,{0,0,17,773,1,1,1}}, _, DlgPDU} = UserData#'TR-user-data'.dialoguePortion,
{ok, {dialoguePDU, AARQ}} when is_record(AARQ, 'AARQ-apdu') -> % some implementations seem to be broken and not send the 'symtax' part?!?
{'EXTERNAL', _, _, DlgPDU} = UserData#'TR-user-data'.dialoguePortion,
case 'DialoguePDUs':decode('DialoguePDU', DlgPDU) of
{ok, {dialogueRequest, AARQ}} when is_record(AARQ, 'AARQ-apdu') ->
%% Is version 1 supported? %% Is version 1 supported?
case lists:member(version1, AARQ#'AARQ-apdu'.'protocol-version') of case lists:member(version1, AARQ#'AARQ-apdu'.'protocol-version') of
true -> true ->