Compare commits

..

6 Commits
1.4.8 ... 1.4.9

Author SHA1 Message Date
Matthew Fredrickson
26d06c939a Importing files for 1.4.9 release
git-svn-id: https://origsvn.digium.com/svn/libpri/tags/1.4.9@663 2fbb986a-6c06-0410-b554-c9c1f0a7f128
2009-01-09 20:55:55 +00:00
Matthew Fredrickson
add4571039 Creating tag for the release of libpri-1.4.9
git-svn-id: https://origsvn.digium.com/svn/libpri/tags/1.4.9@662 2fbb986a-6c06-0410-b554-c9c1f0a7f128
2009-01-09 20:55:22 +00:00
Matthew Fredrickson
10a6efc3ae Creating tag for the release of libpri-1.4.9
git-svn-id: https://origsvn.digium.com/svn/libpri/tags/1.4.9@660 2fbb986a-6c06-0410-b554-c9c1f0a7f128
2009-01-09 20:54:04 +00:00
Matthew Fredrickson
85838caabd Creating tag for the release of libpri-1.4.9
git-svn-id: https://origsvn.digium.com/svn/libpri/tags/1.4.9@658 2fbb986a-6c06-0410-b554-c9c1f0a7f128
2009-01-09 20:52:40 +00:00
Matthew Fredrickson
07c4195876 Add additional case where T200 expires greater than N200 times and we need to release and reacquire the TEI.
git-svn-id: https://origsvn.digium.com/svn/libpri/branches/1.4@656 2fbb986a-6c06-0410-b554-c9c1f0a7f128
2009-01-09 17:58:28 +00:00
Matthew Fredrickson
40ae2a030a Add some additional debug for Q.921 MDL messages as well as fix a bug in RESTART messages on BRI
git-svn-id: https://origsvn.digium.com/svn/libpri/branches/1.4@653 2fbb986a-6c06-0410-b554-c9c1f0a7f128
2008-12-23 21:38:25 +00:00
4 changed files with 63 additions and 5 deletions

View File

@@ -1 +1 @@
1.4.8
1.4.9

View File

@@ -1,3 +1,17 @@
2009-01-09 Matthew Fredrickson <creslin@digium.com>
* libpri 1.4.9 released.
2009-01-09 17:58 +0000 [r656] Matthew Fredrickson <creslin@digium.com>
* q921.c: Add additional case where T200 expires greater than N200
times and we need to release and reacquire the TEI.
2008-12-23 21:38 +0000 [r653] Matthew Fredrickson <creslin@digium.com>
* q921.c, q931.c: Add some additional debug for Q.921 MDL messages
as well as fix a bug in RESTART messages on BRI
2008-11-22 Matthew Fredrickson <creslin@digium.com>
* libpri 1.4.8 released.

50
q921.c
View File

@@ -438,9 +438,14 @@ static void t200_expire(void *vpri)
pri_message(pri, DBGHEAD "q921_state now is Q921_LINK_CONNECTION_RELEASED\n",DBGINFO);
pri->q921_state = Q921_LINK_CONNECTION_RELEASED;
pri->t200_timer = 0;
q921_dchannel_down(pri);
q921_start(pri, 1);
pri->schedev = 1;
if (pri->bri && pri->master) {
q921_tei_release_and_reacquire(pri->master);
return;
} else {
q921_dchannel_down(pri);
q921_start(pri, 1);
pri->schedev = 1;
}
}
} else if (pri->solicitfbit) {
if (pri->debug & PRI_DEBUG_Q921_DUMP)
@@ -638,6 +643,7 @@ void q921_dump(struct pri *pri, q921_h *h, int len, int showraw, int txrx)
direction_tag,
h->h.tei,
h->h.ea2);
switch (h->h.data[0] & Q921_FRAMETYPE_MASK) {
case 0:
case 2:
@@ -728,6 +734,44 @@ void q921_dump(struct pri *pri, q921_h *h, int len, int showraw, int txrx)
len - 3);
break;
};
if ((h->u.ft == 3) && (h->u.m3 == 0) && (h->u.m2 == 0) && (h->u.data[0] == 0x0f)) {
int ri;
int tei;
ri = (h->u.data[1] << 8) | h->u.data[2];
tei = (h->u.data[4] >> 1);
/* TEI assignment related */
switch (h->u.data[3]) {
case Q921_TEI_IDENTITY_REQUEST:
type = "TEI Identity Request";
break;
case Q921_TEI_IDENTITY_ASSIGNED:
type = "TEI Identity Assigned";
break;
case Q921_TEI_IDENTITY_CHECK_REQUEST:
type = "TEI Identity Check Request";
break;
case Q921_TEI_IDENTITY_REMOVE:
type = "TEI Identity Remove";
break;
case Q921_TEI_IDENTITY_DENIED:
type = "TEI Identity Denied";
break;
case Q921_TEI_IDENTITY_CHECK_RESPONSE:
type = "TEI Identity Check Response";
break;
case Q921_TEI_IDENTITY_VERIFY:
type = "TEI Identity Verify";
break;
default:
type = "Unknown";
break;
}
pri_message(pri, "%c MDL Message: %s (%d)\n", direction_tag, type, h->u.data[3]);
pri_message(pri, "%c RI: %d\n", direction_tag, ri);
pri_message(pri, "%c Ai: %d E:%d\n", direction_tag, (h->u.data[4] >> 1) & 0x7f, h->u.data[4] & 1);
}
}
static pri_event *q921_dchannel_up(struct pri *pri)

2
q931.c
View File

@@ -2985,7 +2985,7 @@ static int restart_ies[] = { Q931_CHANNEL_IDENT, Q931_RESTART_INDICATOR, -1 };
int q931_restart(struct pri *pri, int channel)
{
struct q931_call *c;
c = q931_getcall(pri, 0 | 0x8000, 0);
c = q931_getcall(pri, 0 | 0x8000, 1);
if (!c)
return -1;
if (!channel)