in l3dss1_disconnect() the cause value was not taken from the DISCONNECT message, when it supplies one. Therefore an incoming DISCONNECT after incoming SETUP and outgoing ALERTING was not answered with RELEASE, since the cause was not evaluated properly. State 12 was entered instead of state 19

This commit is contained in:
Günther Kelleter 2006-09-14 15:47:22 +00:00
parent e42aada6cf
commit 2b7e0b8e84
1 changed files with 2 additions and 0 deletions

View File

@ -1082,6 +1082,8 @@ l3dss1_disconnect(l3_process_t *pc, u_char pr, void *arg)
else
cause = CAUSE_INVALID_CONTENTS;
}
else
cause = pc->err;
ret = check_infoelements(pc, skb, ie_DISCONNECT);
if (ERR_IE_COMPREHENSION == ret)
cause = CAUSE_MANDATORY_IE_MISS;