Compare commits
7 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
cd276878fd | ||
|
|
d3d7923a00 | ||
|
|
2fa3049e19 | ||
|
|
165a1190f2 | ||
|
|
a3f9429129 | ||
|
|
26260008d1 | ||
|
|
b5feb47e50 |
27
ChangeLog
27
ChangeLog
@@ -1,3 +1,30 @@
|
||||
2007-07-09 Russell Bryant <russell@digium.com>
|
||||
|
||||
* libpri 1.2.5 Released
|
||||
|
||||
2007-06-19 18:22 +0000 [r426] Matthew Fredrickson <creslin@digium.com>
|
||||
|
||||
* q931.c: Try to send pending facility messages if we receive
|
||||
alerting (for when we don't get proceeding) (#9651)
|
||||
|
||||
2007-06-06 21:57 +0000 [r415-423] Matthew Fredrickson <creslin@digium.com>
|
||||
|
||||
* pri_facility.c: Oops, that should not be on one line
|
||||
|
||||
* pri_facility.c: Make sure we only send the NFE when we are
|
||||
talking QSIG
|
||||
|
||||
2007-01-22 22:20 +0000 [r389] Matthew Fredrickson <creslin@digium.com>
|
||||
|
||||
* q931.c: Make sure we send DISCONNECT if we reached the active
|
||||
state and a call is disconnected, regardless of cause code.
|
||||
|
||||
2006-12-30 19:16 +0000 [r385] Joshua Colp <jcolp@digium.com>
|
||||
|
||||
* Makefile: Specify full path to restorecon instead of assuming it
|
||||
will be available from what is in $PATH. (issue #8670 reported by
|
||||
djflux)
|
||||
|
||||
2006-10-17 Kevin P. Fleming <kpfleming@digium.com>
|
||||
|
||||
* libpri 1.2.4 Released
|
||||
|
||||
2
Makefile
2
Makefile
@@ -86,7 +86,7 @@ install: $(STATIC_LIBRARY) $(DYNAMIC_LIBRARY)
|
||||
ifneq (${OSARCH},SunOS)
|
||||
install -m 644 libpri.h $(INSTALL_PREFIX)$(INSTALL_BASE)/include
|
||||
install -m 755 $(DYNAMIC_LIBRARY) $(INSTALL_PREFIX)$(INSTALL_BASE)/lib
|
||||
if [ -x /usr/sbin/sestatus ] && ( /usr/sbin/sestatus | grep "SELinux status:" | grep -q "enabled"); then restorecon -v $(INSTALL_PREFIX)$(INSTALL_BASE)/lib/$(DYNAMIC_LIBRARY); fi
|
||||
if [ -x /usr/sbin/sestatus ] && ( /usr/sbin/sestatus | grep "SELinux status:" | grep -q "enabled"); then /sbin/restorecon -v $(INSTALL_PREFIX)$(INSTALL_BASE)/lib/$(DYNAMIC_LIBRARY); fi
|
||||
( cd $(INSTALL_PREFIX)$(INSTALL_BASE)/lib ; ln -sf libpri.so.1.0 libpri.so ; ln -sf libpri.so.1.0 libpri.so.1 )
|
||||
install -m 644 $(STATIC_LIBRARY) $(INSTALL_PREFIX)$(INSTALL_BASE)/lib
|
||||
if test $$(id -u) = 0; then $(LDCONFIG) $(LDCONFIG_FLAGS) $(INSTALL_PREFIX)$(INSTALL_BASE)/lib; fi
|
||||
|
||||
@@ -721,11 +721,13 @@ static int add_callername_facility_ies(struct pri *pri, q931_call *c, int cpe)
|
||||
buffer[i++] = (ASN1_CONTEXT_SPECIFIC | Q932_PROTOCOL_EXTENSIONS);
|
||||
/* Interpretation component */
|
||||
|
||||
ASN1_ADD_SIMPLE(comp, COMP_TYPE_NFE, buffer, i);
|
||||
ASN1_PUSH(compstk, compsp, comp);
|
||||
ASN1_ADD_BYTECOMP(comp, (ASN1_CONTEXT_SPECIFIC | ASN1_TAG_0), buffer, i, 0);
|
||||
ASN1_ADD_BYTECOMP(comp, (ASN1_CONTEXT_SPECIFIC | ASN1_TAG_2), buffer, i, 0);
|
||||
ASN1_FIXUP(compstk, compsp, buffer, i);
|
||||
if (pri->switchtype == PRI_SWITCH_QSIG) {
|
||||
ASN1_ADD_SIMPLE(comp, COMP_TYPE_NFE, buffer, i);
|
||||
ASN1_PUSH(compstk, compsp, comp);
|
||||
ASN1_ADD_BYTECOMP(comp, (ASN1_CONTEXT_SPECIFIC | ASN1_TAG_0), buffer, i, 0);
|
||||
ASN1_ADD_BYTECOMP(comp, (ASN1_CONTEXT_SPECIFIC | ASN1_TAG_2), buffer, i, 0);
|
||||
ASN1_FIXUP(compstk, compsp, buffer, i);
|
||||
}
|
||||
|
||||
ASN1_ADD_BYTECOMP(comp, COMP_TYPE_INTERPRETATION, buffer, i, 0);
|
||||
|
||||
@@ -762,11 +764,13 @@ static int add_callername_facility_ies(struct pri *pri, q931_call *c, int cpe)
|
||||
buffer[i++] = (ASN1_CONTEXT_SPECIFIC | Q932_PROTOCOL_EXTENSIONS);
|
||||
/* Interpretation component */
|
||||
|
||||
ASN1_ADD_SIMPLE(comp, COMP_TYPE_NFE, buffer, i);
|
||||
ASN1_PUSH(compstk, compsp, comp);
|
||||
ASN1_ADD_BYTECOMP(comp, (ASN1_CONTEXT_SPECIFIC | ASN1_TAG_0), buffer, i, 0);
|
||||
ASN1_ADD_BYTECOMP(comp, (ASN1_CONTEXT_SPECIFIC | ASN1_TAG_2), buffer, i, 0);
|
||||
ASN1_FIXUP(compstk, compsp, buffer, i);
|
||||
if (pri->switchtype == PRI_SWITCH_QSIG) {
|
||||
ASN1_ADD_SIMPLE(comp, COMP_TYPE_NFE, buffer, i);
|
||||
ASN1_PUSH(compstk, compsp, comp);
|
||||
ASN1_ADD_BYTECOMP(comp, (ASN1_CONTEXT_SPECIFIC | ASN1_TAG_0), buffer, i, 0);
|
||||
ASN1_ADD_BYTECOMP(comp, (ASN1_CONTEXT_SPECIFIC | ASN1_TAG_2), buffer, i, 0);
|
||||
ASN1_FIXUP(compstk, compsp, buffer, i);
|
||||
}
|
||||
|
||||
ASN1_ADD_BYTECOMP(comp, COMP_TYPE_INTERPRETATION, buffer, i, 0);
|
||||
|
||||
|
||||
16
q931.c
16
q931.c
@@ -2912,8 +2912,6 @@ int q931_hangup(struct pri *pri, q931_call *c, int cause)
|
||||
/* sent CONNECT */
|
||||
case Q931_CALL_STATE_INCOMING_CALL_PROCEEDING:
|
||||
/* we sent CALL_PROCEEDING */
|
||||
case Q931_CALL_STATE_ACTIVE:
|
||||
/* received CONNECT */
|
||||
case Q931_CALL_STATE_OVERLAP_RECEIVING:
|
||||
/* received SETUP_ACKNOWLEDGE */
|
||||
/* send DISCONNECT in general */
|
||||
@@ -2927,6 +2925,10 @@ int q931_hangup(struct pri *pri, q931_call *c, int cause)
|
||||
} else
|
||||
pri_error(pri, "Wierd, doing nothing but this shouldn't happen, ourstate %s, peerstate %s\n",callstate2str(c->ourcallstate),callstate2str(c->peercallstate));
|
||||
break;
|
||||
case Q931_CALL_STATE_ACTIVE:
|
||||
/* received CONNECT */
|
||||
q931_disconnect(pri,c,cause);
|
||||
break;
|
||||
case Q931_CALL_STATE_DISCONNECT_REQUEST:
|
||||
/* sent DISCONNECT */
|
||||
q931_release(pri,c,cause);
|
||||
@@ -3292,6 +3294,16 @@ int q931_receive(struct pri *pri, q931_h *h, int len)
|
||||
pri->ev.ringing.progressmask = c->progressmask;
|
||||
libpri_copy_string(pri->ev.ringing.useruserinfo, c->useruserinfo, sizeof(pri->ev.ringing.useruserinfo));
|
||||
c->useruserinfo[0] = '\0';
|
||||
|
||||
cur = c->apdus;
|
||||
while (cur) {
|
||||
if (!cur->sent && cur->message == Q931_FACILITY) {
|
||||
q931_facility(pri, c);
|
||||
break;
|
||||
}
|
||||
cur = cur->next;
|
||||
}
|
||||
|
||||
return Q931_RES_HAVEEVENT;
|
||||
case Q931_CONNECT:
|
||||
if (c->newcall) {
|
||||
|
||||
Reference in New Issue
Block a user