It's amazing what a tiny bug in the Q.921 SDL diagram can do to cause trouble.... Fix issue where V_R was not reset and N_R was consequentially transmitted incorrectly. Particularly in layer 2 initiated re-establishments.

git-svn-id: https://origsvn.digium.com/svn/libpri/branches/1.4@1702 2fbb986a-6c06-0410-b554-c9c1f0a7f128
This commit is contained in:
Matthew Fredrickson 2010-05-19 21:30:34 +00:00
parent d808143f8f
commit 3d5f9e762a

4
q921.c
View File

@ -1342,8 +1342,6 @@ static pri_event *q921_ua_rx(struct pri *pri, q921_h *h)
} else { } else {
/* Might not want this... */ /* Might not want this... */
pri->l3initiated = 0; pri->l3initiated = 0;
/* But do want this */
pri->v_r = 0;
/* return DL-ESTABLISH-CONFIRM */ /* return DL-ESTABLISH-CONFIRM */
} }
@ -1355,7 +1353,7 @@ static pri_event *q921_ua_rx(struct pri *pri, q921_h *h)
stop_t200(pri); stop_t200(pri);
start_t203(pri); start_t203(pri);
pri->v_s = pri->v_a = 0; pri->v_r = pri->v_s = pri->v_a = 0;
q921_setstate(pri, Q921_MULTI_FRAME_ESTABLISHED); q921_setstate(pri, Q921_MULTI_FRAME_ESTABLISHED);
break; break;