2010-11-17 Leif Madsen <lmadsen@digium.com>

	* libpri 1.4.11.5 released.

2010-11-17 21:32 +0000 [r2131-2139]  Richard Mudgett <rmudgett@digium.com>

	* q921.c: Merged revision 2101 from
	  https://origsvn.digium.com/svn/libpri/branches/1.4 ..........
	  r2101 | rmudgett | 2010-11-05 14:24:01 -0500 (Fri, 05 Nov 2010) |
	  9 lines Remove all TEIs when NT PTMP starts. Remove all TEIs when
	  a NT PTMP link is started and there are no other links to make
	  sure there are no devices that think they have a TEI. A device
	  may think it has a TEI if the upper layer program is restarted or
	  the system reboots. This fixes the bug portion of JIRA
	  LIBPRI-51/SWP-2453. ..........

	* q921.c: Merged revision 2088 from
	  https://origsvn.digium.com/svn/libpri/branches/1.4 ..........
	  r2088 | rmudgett | 2010-11-02 14:11:01 -0500 (Tue, 02 Nov 2010) |
	  14 lines B410P gets incoming call packets on ISDN but Asterisk
	  doesn't see the call. The Cisco 1751 with VIC 2-BRI ports sends
	  out SETUP messages on the broadcast TEI as if the BRI were PTMP
	  even though it is configured for PTP mode. Make PTP mode also
	  accept frames on SAPI=0, TEI=127 (Broadcast). (closes issue
	  #18232) Reported by: lelio Patches: issue18232_v1.4.patch
	  uploaded by rmudgett (license 664) Tested by: lelio ..........

	* q931.c: Merged revision 2021 from
	  https://origsvn.digium.com/svn/libpri/branches/1.4 ..........
	  r2021 | rmudgett | 2010-10-14 13:35:48 -0500 (Thu, 14 Oct 2010) |
	  10 lines Crash when receiving an unknown/unsupported message
	  type. Fix double free of a call record and the subsequent
	  continued use of the freed call record when receiving an
	  unsupported/unknown message type. (closes issue #17968) Reported
	  by: gelo Patches: issue_17968_v1.4.patch uploaded by rmudgett
	  (license 664) issue_17968_v1.4.11.4.patch uploaded by rmudgett
	  (license 664) ..........

	* q931.c, pri_facility.c, pri.c, pri_internal.h: Merged revision
	  2015 from https://origsvn.digium.com/svn/libpri/branches/1.4
	  .......... r2015 | rmudgett | 2010-10-14 12:09:40 -0500 (Thu, 14
	  Oct 2010) | 16 lines Segfault in pri_schedule_del() - ctrl value
	  is invalid. Validate the given call pointer in libpri API calls.
	  If the call pointer is not an active call record then a complaint
	  message is issued and the API call aborts. The call pointer is
	  likely stale. This patch is defensive. More information is needed
	  to figure out why Asterisk still has a call pointer during its
	  hangup sequence. (closes issue #17522) (closes issue #18032)
	  Reported by: schmoozecom Patches: issue_18032_v1.4.patch uploaded
	  by rmudgett (license 664) issue_18032_v1.4.11.4.patch uploaded by
	  rmudgett (license 664) Tested by: rmudgett ..........

	* pri_q931.h, q921.c, q931.c: Merged revision 1991 from
	  https://origsvn.digium.com/svn/libpri/branches/1.4 ..........
	  r1991 | rmudgett | 2010-09-13 16:21:37 -0500 (Mon, 13 Sep 2010) |
	  9 lines PRI links do not retain active calls if the link comes
	  back before T309 expires. The DL-ESTABLISH confirm event was not
	  passed from Q.921 to Q.931 so Q.931 never cancelled the T309
	  timer. Refactored q931_dl_tei_removal() and q931_dl_indication()
	  into q931_dl_event() to allow the DL-ESTABLISH confirm/indication
	  and DL-RELEASE confirm/indication events to be passed to Q.931.
	  ..........

	* pri_q931.h, q921.c, q931.c, prisched.c, pri.c, pri_internal.h:
	  Merged revision 1982 from
	  https://origsvn.digium.com/svn/libpri/branches/1.4 ..........
	  r1982 | rmudgett | 2010-09-13 11:07:24 -0500 (Mon, 13 Sep 2010) |
	  18 lines BRI PTMP: Active channels not cleared when the interface
	  goes down. If the connection to the terminal is lost while there
	  are open channels on the interface, red alarm is reported, but
	  the open channels are never cleared. Additionally, if you
	  manually try to channel request hangup, Asterisk crashes. For
	  PTMP, the T309 processing was not searching the call pool on the
	  master control record. Additionally, for NT PTMP, the timeout
	  events were not passed to the upper layer because the events were
	  not put on the master control record where timer processing
	  expects them. (closes issue #17865) Reported by: wimpy Patches:
	  issue17865_v1.4.patch uploaded by rmudgett (license 664) Tested
	  by: rmudgett, wimpy ..........

	* q921.c, q931.c: Merged revision 1962 from
	  https://origsvn.digium.com/svn/libpri/branches/1.4 ..........
	  r1962 | rmudgett | 2010-09-07 19:13:24 -0500 (Tue, 07 Sep 2010) |
	  21 lines Made Q.921 delay events to Q.931 if the event could
	  immediately generate response frames. Q.921 was passing a
	  q931_dl_indication(up) event to Q.931 before it was finished
	  processing the frame. The q931_dl_indication(up) event could
	  immediately send STATUS messages in the Q.921 intermediate state
	  that would then get stuck in the tx queue with an invalid N(S).
	  Q.921 was passing i-frames to Q.931 before it was finished
	  processing the frame. The i-frames could cause Q.931 to
	  immediately generate a response message that may cause the peer
	  to see the P/F bit as incorrect. Delayed passing
	  q931_dl_indication(up) events and i-frames to Q.931 until Q.921
	  has completed processing the frame event. (The Q.921 SDL diagrams
	  were designed with this assumption.) (closes issue #17360)
	  Reported by: shawkris Patches: issue17360_v1.4.patch uploaded by
	  rmudgett (license 664) Tested by: shawkris, rmudgett ..........

	* q931.c: Merged revision 1961 from
	  https://origsvn.digium.com/svn/libpri/branches/1.4 ..........
	  r1961 | rmudgett | 2010-09-07 19:10:05 -0500 (Tue, 07 Sep 2010) |
	  12 lines Prevent a CONNECT message from sending a CONNECT
	  ACKNOWLEDGE in the wrong state. Filter the processing of the
	  CONNECT message to prevent libpri from sending a CONNECT
	  ACKNOWLEDGE when the call is in an inappropriate state. This can
	  happen when we hang up an outgoing call after the other end has
	  sent a CONNECT but before we have processed the CONNECT. (issue
	  #17360) Reported by: shawkris Patches:
	  issue17360_con_ack_v1.4.patch uploaded by rmudgett (license 664)
	  ..........

	* q931.c, pri.c: Merged revision 1955,1958 from
	  https://origsvn.digium.com/svn/libpri/branches/1.4 ..........
	  r1955 | rmudgett | 2010-09-02 12:33:51 -0500 (Thu, 02 Sep 2010) |
	  1 line Don't crash in __pri_new_tei() if a GR303 subchannel
	  creation fails. .......... r1958 | rmudgett | 2010-09-07 18:13:04
	  -0500 (Tue, 07 Sep 2010) | 1 line Balance curly braces in
	  post_handle_q931_message(). ..........

2010-08-30 Leif Madsen <lmadsen@digium.com>

	* libpri 1.4.11.4 released.

2010-08-30 22:34 +0000 [r1939-1949]  Richard Mudgett <rmudgett@digium.com>

	* q931.c, q921.c: Merged revisions 1923,1928-1929 via svnmerge from
	  https://origsvn.digium.com/svn/libpri/branches/1.4 ........ r1923
	  | rmudgett | 2010-08-30 14:31:46 -0500 (Mon, 30 Aug 2010) | 18
	  lines Q.921 improvements from comparing Q.921 SDL diagrams with
	  implementation. * Handle sending and receiving DM response frames
	  as needed. * Added handling of received FRMR frames. * Completed
	  implementation of Q921_AWAITING_RELEASE state. (State is
	  currently unreachable since we have no API to initiate sending
	  the DISC message.) * Better NT PTMP TEI allocation. * Reduced
	  more ERROR level severity messages so users will stop panicking
	  when they see ERROR. This is especially true for the Q.921
	  MDL-ERROR messages. * Added better Q.921 visibility when normal
	  debug message level is enabled. ........ r1928 | rmudgett |
	  2010-08-30 15:30:59 -0500 (Mon, 30 Aug 2010) | 9 lines
	  Q.921/Q.931 message debug output improvements. The Q.931 message
	  decode debug output now will follow the correct Q.921 header
	  decode if Q.921 message dumping is enabled. Also the Q.931
	  message decode will happen when the message actually goes out on
	  the line instead of when Q.931 passes the message to Q.921. Q.921
	  may have to request a TEI, bring the connection up, or retransmit
	  previous frames before it can actually send the new message.
	  ........ r1929 | rmudgett | 2010-08-30 15:49:11 -0500 (Mon, 30
	  Aug 2010) | 2 lines Reduced fake MDL-ERROR (Z) message severity
	  to be visible only when debugging enabled. ........

	* q921.c: Merged revisions 1918 via svnmerge from
	  https://origsvn.digium.com/svn/libpri/branches/1.4 ........ r1918
	  | rmudgett | 2010-08-30 12:53:33 -0500 (Mon, 30 Aug 2010) | 41
	  lines ISDN BRI does not recover from line faults Q.921 was
	  getting stuck in state 2 (Q921_ASSIGN_AWAITING_TEI). For some
	  reason the network was removing the TEI. Libpri then immediately
	  tried to get a new TEI assigned. The network did not reply to the
	  N202(3) attempts to get a new TEI. Libpri then just gave up
	  trying but did not leave the state. Some paths in Q.921 Figure
	  B.3 were not implemented. Q.921 now transitions to the
	  Q921_TEI_UNASSIGNED state when the N202 count is exceeded. Q.921
	  will wait there until an incoming or outgoing call is attempted.
	  * Fixed initializing the n202_counter. Not initializing the
	  n202_counter would cause the Q921_TEI_IDENTITY_REQUEST to
	  unexpectedly not go out and due to how state transitions were
	  done, Q.921 would get stuck in the Q921_ASSIGN_AWAITING_TEI
	  state. * Fixed start T202 timer fail causing Q.921 to get stuck
	  in the Q921_ASSIGN_AWAITING_TEI state if the network did not
	  respond to the request. * Fixed handling of
	  Q921_TEI_IDENTITY_REMOVE to do the MDL-REMOVE primitive
	  (q921_mdl_remove()) instead of transitioning directly to the
	  Q921_TEI_UNASSIGNED state. Necessary state clean-up was not
	  getting done. * Minor tweaks to q921_mdl_remove(). The worst
	  problem was erroneously generating an error message. * Fixed
	  potential for sending I-frames with an invalid TEI. The I-frame
	  could have been queued when Q.921 did not have an assigned TEI. *
	  Fixed testing of the q931_receive() return value when a UI-frame
	  is received. (closes issue #17570) Reported by: jcovert Patches:
	  issue17570_v1.4.11.3_v3.patch uploaded by rmudgett (license 664)
	  issue17570_v1.4_v3.patch uploaded by rmudgett (license 664)
	  Tested by: jcovert, rmudgett ........

	* rose.c, rosetest.c: Merged revisions 1904 via svnmerge from
	  https://origsvn.digium.com/svn/libpri/branches/1.4 ........ r1904
	  | rmudgett | 2010-08-27 10:54:17 -0500 (Fri, 27 Aug 2010) | 15
	  lines Add support to receive ECMA-164 2nd edition OID name ROSE
	  messages. NOTE: To add support to send the old style name
	  messages will require implementing them as new ROSE operation
	  message types. NOTE: To actually use them would likely require
	  implementing another version of the Q.SIG switch type. Like (NI1
	  & NI2) and (4ess & 5ess) for example. Patches: libpri37.patch
	  uploaded by rmudgett (license 664) JIRA SWP-2100 JIRA LIBPRI-37
	  ........

	* rosetest.c, pri.c, q921.c: Merged revisions 1878,1883-1884,1894
	  via svnmerge from
	  https://origsvn.digium.com/svn/libpri/branches/1.4 ........ r1878
	  | mattf | 2010-08-23 17:13:44 -0500 (Mon, 23 Aug 2010) | 1 line
	  Add silly fake MDL error Z for kicking L2 to reactivate if a DISC
	  or DM is received in proper states on PTP links. ........ r1883 |
	  rmudgett | 2010-08-25 11:38:29 -0500 (Wed, 25 Aug 2010) | 2 lines
	  Don't silently fail to post our fake MDL-ERROR(Z). ........ r1884
	  | rmudgett | 2010-08-25 12:17:09 -0500 (Wed, 25 Aug 2010) | 2
	  lines Added gripe check to rosetest for invalid operation and
	  error codes. ........ r1894 | rmudgett | 2010-08-26 18:26:16
	  -0500 (Thu, 26 Aug 2010) | 1 line Make pri_dump_event() only
	  print the event name. ........

	* q931.c: Merged revisions 1853 via svnmerge from
	  https://origsvn.digium.com/svn/libpri/branches/1.4 ........ r1853
	  | rmudgett | 2010-08-06 13:35:35 -0500 (Fri, 06 Aug 2010) | 18
	  lines No audio on inbound J1 calls. Incoming calls specifying the
	  channel using a slot map could not negotiate a B channel
	  correctly. Libpri historically has handled this as an any channel
	  request. However, when chan_dahdi picked a new channel, libpri
	  sent out the recorded slot map and not the new channel selected.
	  Thus the two endpoints would be attached to different B channels
	  and the parties would not hear anything or would hear the wrong
	  parties. This patch restores the historical preference of sending
	  out the channel id using the channel number method if a channel
	  number is available. JIRA LIBPRI-35 Patches:
	  libpri-35_v1.4.11.3.patch uploaded by rmudgett (license 664)
	  libpri-35_v1.4.patch uploaded by rmudgett (license 664) Tested
	  by: rmudgett ........

	* q931.c, q921.c: Merged revisions 1848,1852 via svnmerge from
	  https://origsvn.digium.com/svn/libpri/branches/1.4 ........ r1848
	  | rmudgett | 2010-08-03 18:04:52 -0500 (Tue, 03 Aug 2010) | 11
	  lines Improved Q.921/Q.931 debug output. * Debug output for a
	  sent Q.931 message in TE PTMP now uses the best available TEI
	  number instead of always using 127. It could still be wrong if
	  layer 2 does not have a TEI assigned. * Q.921 debug output is
	  grouped better so a decoded message is not split by a blank line.
	  * The Q.921 state is also decoded to a name. ........ r1852 |
	  rmudgett | 2010-08-06 13:22:39 -0500 (Fri, 06 Aug 2010) | 1 line
	  Learn (AGAIN!) why state 7 and state 8 transitions were
	  suppressed. ........

	* q921.c: Merged revisions 1845 via svnmerge from
	  https://origsvn.digium.com/svn/libpri/branches/1.4 ........ r1845
	  | rmudgett | 2010-08-03 12:33:54 -0500 (Tue, 03 Aug 2010) | 10
	  lines Q921_TIMER_RECOVERY SDL issue in q921_rnr_rx() Added
	  missing code specified by Q.921 (Figure B.8 Page 85) when receive
	  RNR in "Timer Recovery" state. (closes issue #16791) Reported by:
	  alecdavis Patches: rnr_timer_recovery.diff.txt uploaded by
	  alecdavis (license 585) ........

	* rosetest.c, q921.c: Merged revisions 1829-1830,1842 via svnmerge
	  from https://origsvn.digium.com/svn/libpri/branches/1.4 ........
	  r1829 | rmudgett | 2010-07-16 12:15:07 -0500 (Fri, 16 Jul 2010) |
	  1 line Added a libpri version output line as a sanity check for
	  rosetest. ........ r1830 | rmudgett | 2010-07-16 12:20:21 -0500
	  (Fri, 16 Jul 2010) | 1 line Only need to output one version of
	  the version message. ........ r1842 | rmudgett | 2010-08-02
	  13:47:10 -0500 (Mon, 02 Aug 2010) | 5 lines Renamed local struct
	  pri *pri variables to struct pri *ctrl in q921.c. The context
	  tagging for my editor is much happier now that the struct and the
	  variable do not have the same name. (At least for this file.)
	  ........

	* rosetest.c, rose_qsig_name.c: Merged revisions 1828 via svnmerge
	  from https://origsvn.digium.com/svn/libpri/branches/1.4 ........
	  r1828 | rmudgett | 2010-07-16 11:37:07 -0500 (Fri, 16 Jul 2010) |
	  18 lines Calling name not successfully processed on inbound QSIG
	  PRI calls from Mitel PBX The alternate form of the Q.SIG Name
	  sequence that allows manufacturer extensions for CallingName,
	  CalledName, ConnectedName, and BusyName was not consuming the
	  next ASN.1 tag. The code that processed the ASN.1 Name structure
	  was then using a stale tag value. The stale tag value was then
	  rejected with the "Did not expect" message. I have added a test
	  case using the supplied PRI debug output to the rosetest utility
	  to verify that this alternate encoding is tested in the future.
	  (closes issue #17619) Reported by: jims8650 Patches:
	  issue17619_v1.4.11.3.patch uploaded by rmudgett (license 664)
	  Tested by: rmudgett ........

2010-06-29 Leif Madsen <lmadsen@digium.com>

	* libpri 1.4.11.3 released.

2010-06-29 11:17 +0000 [r1824]  Richard Mudgett <rmudgett@digium.com>

	* pri_internal.h, q931.c: [regression] Calling Number assignment
	  logic change in libpri 1.4.11. Restored the old behaviour if
	  there is more than one calling number in the incoming SETUP
	  message.  A network provided number is reported as ANI. (closes
	  issue #17495) Reported by: ibercom Patches:
	  issue_17495_v1.4.11.2.patch uploaded by rmudgett (license 664)
	  issue_17495_v1.4.patch uploaded by rmudgett (license 664) Tested
	  by: ibercom

2010-06-02 Leif Madsen <lmadsen@digium.com>

	* libpri 1.4.11.2 released.

2010-06-04 17:45 +0000 [r1810]  Richard Mudgett <rmudgett@digium.com>

	* pri_facility.c: Q.SIG calling name in FACILITY message not
	  reported to the upper layer. Q.SIG can send the CallingName,
	  CalledName, and ConnectedName in stand alone FACILITY messages.
	  If the CallingName was not sent in the SETUP message, the caller
	  id name was not reported to the upper layer. (closes issue #17458)
	  Reported by: jsmith Patches: issue17458_post_qsig_name.patch uploaded
	  by rmudgett (license 664) issue17458_post_qsig_name_v1.4.11.1.patch
	  uploaded by rmudgett (license 664) Tested by: rmudgett, jsmith

2010-06-02 Leif Madsen <lmadsen@digium.com>

	* libpri 1.4.11.1 released.

2010-06-02 11:26 +0000 [r1805-1806]  Richard Mudgett <rmudgett@digium.com>

	* pri.c: Inband disconnect setting does nothing on BRI spans.
	  The acceptinbanddisconnect flag is not inherited when creating
	  a new TEI and thus rendering the setting (and its respective
	  equivalent in Asterisk) a no-op on BRI setups. (closes issue
	  #15265) Reported by: paravoid Patches: inband-bri.diff uploaded
	  by paravoid (license 200) Tested by: paravoid

	* q931.c, rose.c, rosetest.c: Multi component FACILITY messages
	  only process the first component. The code was only processing
	  the first ROSE component in the facility message. I also updated
	  rosetest.c to have a multiple component ROSE message test.
	  (closes issue #17428) Reported by: patrol-cz Patches:
	  issue17428.patch uploaded by rmudgett (license 664) Tested by:
	  rmudgett, patrol-cz

2010-05-20 Russell Bryant <russell@digium.com>

	* libpri 1.4.11 released.

2010-05-19 21:50 +0000 [r1703]  Richard Mudgett <rmudgett@digium.com>

	* q931.c: T309 should not do anything with the global call
	  reference call record.

2010-05-19 21:30 +0000 [r1702]  Matthew Fredrickson <creslin@digium.com>

	* q921.c: 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.

2010-05-11 22:14 +0000 [r1688]  Richard Mudgett <rmudgett@digium.com>

	* pri.c, pri_internal.h, q931.c, libpri.h: Dialing an invalid
	  extension causes incomplete hangup sequence. Revision -r1489
	  corrected a deviation from Q.931 Section 5.3.2. However, this
	  resulted in an unexpected behaviour change to the upper layer
	  (Asterisk). This change restores the legacy hangup behaviour if
	  the new API call is not used. Use pri_hangup_fix_enable() to
	  follow Q.931 Section 5.3.2 call hangup better. (closes issue
	  #17104) Reported by: shawkris Tested by: rmudgett

2010-04-26 19:54 +0000 [r1664-1675]  Richard Mudgett <rmudgett@digium.com>

	* q931.c: Simplified some protocol discriminator handling code.

	* q931.c: Garbage on the end of Q.931 messages causing calls to
	  fail to connect. The DAHDI driver had a bug where an extra byte
	  appeared on the end of Q.931 messages. This garbage byte caused
	  the message to be discarded with the diagnostic "XXX Message
	  longer than it should be?? XXX". The Q.931 message will no longer
	  be discarded if there were earlier ie's in the message. This
	  patch also addresses the potential problem of reading beyond the
	  buffer when trying to parse the garbage data. Thanks to roeften
	  for the base patch. (closes issue #14378) Reported by: timking

	* q921.c: Avoid using a cast.

	* q931.c: Cleanup some pri debug output line presentation.

2010-04-19 22:40 +0000 [r1625-1630]  Richard Mudgett <rmudgett@digium.com>

	* pri_internal.h, pri_q931.h, q931.c, pridump.c: PTMP NT mode call
	  reference value ambiguity. Since the TE side can pick CR values
	  independently, the TE CR needs to be qualified by TEI to
	  distinguish CR values from other devices. Without doing this,
	  multiple phones on the BRI line will have intermittent call
	  failures. JIRA LIBPRI-30 Also eliminated some wierdness in
	  q931_status() and several places where it is called.

	* q921.c: Fix potential crash when pridump.c calls q921_dump() with
	  NULL pri ptr.

2010-04-15 18:43 +0000 [r1596]  Richard Mudgett <rmudgett@digium.com>

	* pri.c, pri_internal.h: Make some internal routines available to
	  other libpri components.

2010-04-09 21:43 +0000 [r1577]  Richard Mudgett <rmudgett@digium.com>

	* q931.c: Only one PROCEEDING message per call please.

2010-03-18 15:50 +0000 [r1534-1547]  Richard Mudgett <rmudgett@digium.com>

	* q931.c: Move a comment closer to where it has relevance.

	* pri.c, pri_internal.h, q921.c, q931.c, pri_facility.c:
	  Miscellaneous simple reorganization. 1) Make PRI_MASTER() no
	  longer check for a NULL parameter. It is the caller's
	  responsibility. Not many callers could have passed a NULL without
	  crashing before or after anyway. 2) Replace calls to
	  q931_is_ptmp() with PTMP_MODE(). They were equivalent. 3) Made
	  the following boolean config options bit fields: sendfacility,
	  overlapdial, chan_mapping_logical, and service_message_support.

2010-03-02 23:47 +0000 [r1511]  Richard Mudgett <rmudgett@digium.com>

	* pri.c, pri_internal.h, q921.c: Restore ability to change the
	  Q.921 K value. The Q.921 rewrite only used value of PRI_TIMER_K
	  right after it was set to the default. The Q.921 window size was
	  thus no longer alterable by the user. (closes issue #16909)
	  Reported by: alecdavis Patches: pritimer.libpri.diff.txt uploaded
	  by alecdavis (license 585) Tested by: alecdavis

2010-02-11 21:47 +0000 [r1488-1489]  Richard Mudgett <rmudgett@digium.com>

	* q931.c: Must send DISCONNECT if we have sent a response to a
	  SETUP message. Q.931 Section 5.3.2 a) says we send a
	  RELEASE_COMPLETE to reject a call SETUP if we have not already
	  sent a message in response to the SETUP message.

	* pri.c, libpri.h: Minor comment changes.

2010-02-11 17:35 +0000 [r1482]  Wendell Thompson <wthompson@digium.com>

	* Makefile: Added CPUARCH option for selecting a 32-bit build from
	  the command line.

2010-02-08 23:29 +0000 [r1470-1476]  Matthew Fredrickson <creslin@digium.com>

	* q921.c: Revert useless check of pri->t200_timer value, since
	  scheduler routines check the value anyways.

	* q921.c: Make sure we set the l3initiated flag when PTP links are
	  attempted to be re-established

2010-02-05 23:34 +0000 [r1464]  Richard Mudgett <rmudgett@digium.com>

	* pri.c: pri_restart() is no longer needed since the Q.921 rewrite.
	  Don't output error message for a deprecated function.

2010-01-29 21:55 +0000 [r1457]  Matthew Fredrickson <creslin@digium.com>

	* q921.c: Sense of statement was inverted from what it should have
	  been. Might have caused false T200 operation on reception of
	  I-frames.

2010-01-29 19:32 +0000 [r1451]  Richard Mudgett <rmudgett@digium.com>

	* q921.c: Only set eres if there actually is an event to pass up.
	  (issue 16713)

2010-01-29 17:27 +0000 [r1445]  Matthew Fredrickson <creslin@digium.com>

	* q921.c: Fix bug in which an event was lost if an I-frame was
	  received during a timer recovery state (related to #16713)

2010-01-26 21:04 +0000 [r1439]  Richard Mudgett <rmudgett@digium.com>

	* q921.c: Don't be so noisy when D channel is down.

2010-01-19 21:53 +0000 [r1426]  Richard Mudgett <rmudgett@digium.com>

	* q921.c, q931.c: Fix TE PTMP side sending FACILITY messages on the
	  dummy call reference. Only the NT PTMP side can send Q.931
	  broadcast messages. Also removed an inaccurate comment in Q.921
	  and made q921_mdl_handle_error_callback() call the correct struct
	  pri free function.

2010-01-15 18:28 +0000 [r1414]  Richard Mudgett <rmudgett@digium.com>

	* q921.c, q931.c: Make some debugging messages conditional and some
	  minor reformating changes.

2010-01-13 19:37 +0000 [r1406]  Matthew Fredrickson <creslin@digium.com>

	* pri.c, pri_internal.h, pri_q921.h, Makefile, pri_q931.h, q921.c,
	  q931.c: Merge of Q.921 rewrite branch for wider testing.

2009-12-09 20:59 +0000 [r1374]  Richard Mudgett <rmudgett@digium.com>

	* q931.c: Extracted q931_fill_ring_event() from
	  post_handle_q931_message(). Done so it is easier to see what was
	  done in ccbs branch.

2009-11-21 02:40 +0000 [r1345-1351]  Richard Mudgett <rmudgett@digium.com>

	* pri.c, pri_internal.h: Fix debug output so built up output lines
	  are readable again. A recent change to Asterisk put the span
	  number at the begining of each line. This is a good thing if you
	  need to debug multiple spans or forget which span you are
	  debugging. Unfortunately, any pri_message() output that is not a
	  complete line is messed up. The pri_message() function now will
	  accumulate line output until a '\n' is seen on the end.

	* pri_internal.h, q931.c, pri_facility.c: Delay processing of
	  facility ie's after all other ie's are processed. * Some ROSE
	  message processing depends on the presence of other ies. The
	  DivertingLegInformation1, and 3 messages will be used as the
	  default connected line number if the connected number ie is not
	  present. The redirecting number ie is used as a default to the
	  redirecting number in the DivertingLegInformation2 message if the
	  ROSE message does not contain it and the redirecting number ie is
	  present. * Some ROSE message processing depends upon other ie
	  values. The StatusRequest, CCBS-T-Call, and CcRingout messages
	  collectively need the BC, HLC, LLC, called number, called
	  subaddress, calling number, and calling subaddress ie information
	  to be available.

2009-11-18 00:36 +0000 [r1331]  Richard Mudgett <rmudgett@digium.com>

	* q931.c: Merged revision 1328 from
	  https://origsvn.digium.com/svn/libpri/team/mattf/libpri-1.4-q921-rewrite
	  .......... r1328 | mattf | 2009-11-17 15:16:11 -0600 (Tue, 17 Nov
	  2009) | 1 line outboundbroadcast isn't set at this time, since it
	  is set after the message is transmited, so we must use other
	  criteria to determine the need for broadcast on a setup
	  ..........

2009-11-14 00:20 +0000 [r1310-1322]  Richard Mudgett <rmudgett@digium.com>

	* pri.c, pri_internal.h, q931.c, pri_facility.c, pri_facility.h,
	  libpri.h: Reimplement callback mechanism to handle APDU response
	  messages that we care about. 1) No sent messages will remain in
	  the APDU queue unless they have an active timer to remove them.
	  The dummy call reference call and global call reference call
	  structures will not act like a memory leak to sent messages. 2)
	  The new T-RESPONSE timer will be the generic response guard if
	  the standards do not otherwise specify a timer for a message
	  response. 3) The callback will be called. If it is called because
	  of a response message, then the callback has an opportunity to
	  indicate if more responses are expected.

	* libpri.h: We now have 32 timers. No need to reserve minimum space
	  anymore.

	* pri_internal.h, pri_facility.c: There must be only one source for
	  the invoke id values per D channel group. If there are
	  potentially multiple sources for the invoke id sequence then we
	  could get confused if there are multiple outstanding messages
	  with the same invoke id that get responses.

2009-11-11 00:22 +0000 [r1291]  Matthew Fredrickson <creslin@digium.com>

	* pri_internal.h, q921.c: Make sure we also revive links for PRIs,
	  not just PTMP TE BRIs when we get a disconnect message

2009-11-10 21:51 +0000 [r1283]  Richard Mudgett <rmudgett@digium.com>

	* pri_internal.h, q931.c, pri_facility.c, pri_facility.h: The
	  facility ie queue needs to remove facilities that have been sent.
	  The facility ie queue needs to remove facilities that have been
	  sent. Otherwise, the queue just grows until the call is
	  terminated. AOC messages can clog the queue during a long call
	  and the dummy call reference may never be deleted. Also removed
	  unneeded elements of struct apdu_event. The callback function was
	  not a good idea since many facility messages do not have
	  responses and the callback would prevents removal of events from
	  the list.

2009-11-10 20:25 +0000 [r1276]  Matthew Fredrickson <creslin@digium.com>

	* q921.c: Re-add back in support for TE initiated layer 2
	  activation

2009-11-10 19:27 +0000 [r1268-1275]  Richard Mudgett <rmudgett@digium.com>

	* pri.c, pri_internal.h, q931.c, libpri.h: Add dummy call reference
	  support. Fixes problem where PTMP NT mode responds erroneously to
	  a FACILITY message from a phone on the dummy call reference.
	  LibPRI behaved as if the dummy call reference were an invalid
	  call reference and proceeded to respond on the global call
	  reference.

	* pri_internal.h: Remove unused callingsubaddr[].

2009-11-03 17:19 +0000 [r1255-1261]  Richard Mudgett <rmudgett@digium.com>

	* pri_q931.h, q931.c: Unknown IE 50 (cs5, Unknown Information
	  Element) Add code to recognize the code set 5 ie 50 (calling
	  party category) to suppress the unknown IE message. (closes issue
	  #13828) Reported by: fdecher Patches:
	  libpri_ie50_cs5-trunk.diff3.txt uploaded by alecdavis (license
	  585) Tested by: alecdavis

	* q931.c: NT PTMP did not report busy when calling a busy phone.
	  The caller would not get a busy indication when calling a busy
	  phone. Timer T303 is not supposed to be stopped when
	  RELEASE_COMPLETE received. When T303 expires we will now report
	  the last clearing cause code to the caller if we received one.

2009-10-23 23:47 +0000 [r1242-1249]  Richard Mudgett <rmudgett@digium.com>

	* pri_internal.h, pri_facility.c: Add subaddress handling to
	  existing messages and functions. Connected line updates when
	  transfering calls does not completely support subaddresses yet.

	* pri.c, pri_internal.h, pri_q921.h, pri_q931.h, q921.c, q931.c,
	  pri_facility.c, pri_facility.h, libpri.h: Add BRI PTMP NT mode,
	  HOLD/RETRIEVE, Call rerouting/deflection, and keypad facility
	  support. * Added support for BRI PTMP NT mode. (Overlap dialing
	  NT -> TE not supported.) * Added handling of received
	  HOLD/RETRIEVE messages and the optional ability to transfer a
	  held call on disconnect similar to an analog phone. * Added
	  CallRerouting/CallDeflection support for Q.SIG, ETSI PTP, ETSI
	  PTMP. Will reroute/deflect an outgoing call when receive the
	  message. Can use the DAHDISendCallreroutingFacility to send the
	  message for the supported switches. * Added ability to
	  send/receive keypad digits in the SETUP message. Send keypad
	  digits in SETUP message:
	  Dial(DAHDI/g1[/K<keypad_digits>][/extension]) Access any received
	  keypad digits in SETUP message by: ${CHANNEL(keypad_digits)}
	  (closes issue #15048) Tested by: rmudgett, mattf

2009-10-22 16:16 +0000 [r1230]  Richard Mudgett <rmudgett@digium.com>

	* pri.c, pri_internal.h, pri_q931.h, q931.c, libpri.h: Add support
	  for calling and called subaddress. Partial support for COLP
	  subaddress. The Telecom Specs in NZ suggests that SUB ADDRESS is
	  always on, so doing "desk to desk" between offices each with an
	  asterisk box over the ISDN should then be possible, without a
	  whole load of DDI numbers required. (closes issue #15604)
	  Reported by: alecdavis Patches: libpri_subaddr_trunk.diff11.txt
	  uploaded by alecdavis (license 585) Some minor modificatons were
	  made. Tested by: alecdavis, rmudgett Review:
	  https://reviewboard.asterisk.org/r/406/

2009-10-19 22:49 +0000 [r1219-1220]  Richard Mudgett <rmudgett@digium.com>

	* q931.c: Fix call state ie transmission. Sending a STATUS message
	  failed to include the call state ie for some reason. We will now
	  always send a call state ie when a message ie list includes one.

	* q931.c: Fix comparision of invalid party name and number structs
	  in comparison functions.

2009-10-15 22:34 +0000 [r1212]  Richard Mudgett <rmudgett@digium.com>

	* pri_facility.c: Take diverted-to-number from DivLegInfo1 and use
	  it as connected number. If no connected number is signaled in the
	  CONNECT message we will use the last diverted to number. (issue
	  #14292) Reported by: tomaso Patches:
	  divleginfo1_to_connectednum.patch uploaded by tomaso (license
	  564) (Used as a guide since it no longer will apply.) (This patch
	  is unrelated to the issue.)

2009-10-14 19:03 +0000 [r1191-1205]  Richard Mudgett <rmudgett@digium.com>

	* q931.c: In q931_getcall(): Simplify test and add related switch
	  types.

	* q931.c: Reduce future conflicts when adding ie's to the SETUP
	  message.

2009-10-12 17:17 +0000 [r1177]  Richard Mudgett <rmudgett@digium.com>

	* pri.c, pri_internal.h, pri_q931.h, q931.c, pri_facility.c:
	  Miscellaneous changes: * Removed unnecessary
	  Q931_IE_CONNECTED_NUM ie from setup_ack_ies[]. * Added internal
	  state Q931_CALL_STATE_NOT_SET to Q.931 state enum. * Made
	  q931_is_ptmp() take a const pointer. * pri_facility.c: Some
	  preparations for subaddressing. * pri.c: Eliminate use of a magic
	  number.

2009-10-09 23:20 +0000 [r1169]  Richard Mudgett <rmudgett@digium.com>

	* q931.c: Conditional out noisy and redundant ASN.1 parse dump of
	  facility ie contents. 1) Outgoing messages have the facility ie
	  ASN.1 decoded and dumped when the ie is added to the message. The
	  whole message is then dumped. 2) Incoming messages have the
	  facility ie ASN.1 decoded and dumped when the ie is processed.
	  The whole message has already been dumped.

2009-10-07 18:34 +0000 [r1151-1152]  Richard Mudgett <rmudgett@digium.com>

	* pri_facility.c: Sent Q.SIG call rerouting message fixes. a)
	  Account for pSS1InfoElement where the bearer capability for the
	  new rerouted call is described. The call could be a fax or data
	  call, let's use the appropriate signaling to avoid call rejects
	  on the other end. b) Handle calling number appropriately, number
	  can be prohibited or non-existent. c) Add calling name if
	  available. d) Use the diversion counter from DivLegInfo2 (if was
	  present in the incoming Setup) and increment. (issue #14292)
	  Reported by: tomaso Patches:
	  libpri-1.4-2009-01-29-rerouting-0.1.9.patch uploaded by tomaso
	  (license 564) (Used as a guide since it no longer will apply.)
	  (This patch is unrelated to the issue.)

	* pri.c, pri_q921.h, q921.c: Merged revisions 1143, 1144 from
	  https://origsvn.digium.com/svn/libpri/tags/1.4.10.2 ..........
	  r1144 | mattf | 2009-09-29 10:32:23 -0500 (Tue, 29 Sep 2009) | 1
	  line This fix is more like the fix that was used to resolve the
	  issue for the PRI case .......... r1143 | mattf | 2009-09-28
	  14:07:01 -0500 (Mon, 28 Sep 2009) | 1 line Changes for 1.4.10.2
	  ..........

2009-09-22 17:12 +0000 [r1120]  Jeff Peeler <jpeeler@digium.com>

	* q931.c: Fix call reference to be associated with the D channel
	  message was received The problem is that once a call reference
	  was associated with a particular D channel, it always was. This
	  created an issue with NFAS when the secondary D channel became
	  active as the messages were still being sent on the non-active D
	  channel. (closes issue #14959) Reported by: remiq Patches:
	  bug14959.patch uploaded by jpeeler (license 325) Tested by: remiq

2009-09-22 02:23 +0000 [r1107]  Richard Mudgett <rmudgett@digium.com>

	* pri.c: Update pri_event2str() to current defined events.

2009-09-18 00:31 +0000 [r1097]  Richard Mudgett <rmudgett@digium.com>

	* q931.c: Another place where timeout events with subcmds should
	  clear any old subcmds.

2009-09-15 22:24 +0000 [r1084]  Richard Mudgett <rmudgett@digium.com>

	* q931.c: Timeout events with subcmds should clear any old subcmds.

2009-09-14 22:32 +0000 [r1077]  Matthew Fredrickson <creslin@digium.com>

	* q921.c: Output multiline output with multiple calls to
	  pri_message, so that logs look normal in Asterisk

2009-09-13 22:54 +0000 [r1072]  Dwayne M. Hubbard <dwayne.hubbard@gmail.com>

	* pri_q931.h, q931.c: Add SERVICE message support for the
	  'national' switchtype This set of changes integrates SERVICE
	  message support for the 'national' switchtype. The 'national'
	  switchtype uses the 0x43 protocol discriminator. The 'national'
	  SERVICE/SERVICE ACKNOWLEDGE and AT&T SERVICE/SERVICE ACKNOWLEDGE
	  message values are opposite of each other. This is handled by
	  first determining which protocol discriminator is in use, then
	  responding with the appropriate SERVICE ACKNOWLEDGE value. AT&T
	  SERVICE messages use the 0x3 protocol discriminator. (closes
	  issue #15803) Reported by: dhubbard Review:
	  https://reviewboard.asterisk.org/r/347/

2009-09-02 20:19 +0000 [r1059-1061]  Richard Mudgett <rmudgett@digium.com>

	* pri_internal.h, pri_q931.h, q931.c: Converted Q931_CALL_STATE_xxx
	  defines to an enum.

	* q921.c, q931.c: Optimized calls to pri_schedule_del(). There is
	  no need to test if a scheduled event is running before calling
	  pri_schedule_del().

	* prisched.c: Cleaned up scheduled events handling code. * Fixed
	  pri_schedule_event() to return 0 on error instead of -1. Zero is
	  a safer value to return. Users would not think that a timer was
	  scheduled. * Fixed potential for pri_schedule_del() to write out
	  of bounds of pri_sched[]. The out of bounds access could occur
	  when pri_schedule_event() returned -1. * Made use all pri_sched[]
	  entries. pri_sched[0] was previously unused. * Removed some
	  unneeded code and recursion since scheduling only runs on master
	  D channel structures. * Added doxygen comments. * Renamed struct
	  pri *pri variables to struct pri *ctrl in this file.

2009-08-31 22:57 +0000 [r1042-1051]  Richard Mudgett <rmudgett@digium.com>

	* q931.c, libpri.h: Make event channel parameter encoding
	  consistent. Also make sure that service maintenance messages have
	  the channel id parameters reinitialized for each message since
	  they are sent over the global call reference.

	* pri.c, pri_internal.h, q931.c, libpri.h: Split justsignalling
	  into cis_call and cis_auto_disconnect functionality.

2009-08-26 15:24 +0000 [r1006-1028]  Richard Mudgett <rmudgett@digium.com>

	* q931.c: Fix BRI PTP broken by -r790.

	* q931.c: Put connected name in display ie for CONNECT message.

	* q931.c: Fix ie ordering in some ie lists for send_message().

	* q931.c: Make dump_channel_id() handle variable length fields.
	  Also did some other minor miscellaneous changes.

	* q931.c: Make sure reversecharge is initialized.

2009-08-21 19:51 +0000 [r1000]  Jason Parker <jparker@digium.com>

	* Makefile: Add -n to ldconfig on HURD too. (closes issue #15130)
	  Reported by: tzafrir Patches: osarch_hurd.diff uploaded by
	  tzafrir (license 46)

2009-08-20 15:52 +0000 [r994]  Richard Mudgett <rmudgett@digium.com>

	* q931.c: Made the call state to string table use the state
	  defines.

2009-08-18 23:53 +0000 [r982]  Richard Mudgett <rmudgett@digium.com>

	* rose.c, rosetest.c, rose_internal.h, pri.c, pri_internal.h,
	  Makefile, q931.c, rose.h, rose_etsi_diversion.c (added),
	  pri_facility.c, pri_facility.h, libpri.h, rose_etsi_ect.c
	  (added): Add COLP support to libpri for ETSI PTP, ETSI PTMP, and
	  Q.SIG. Add Connected Line Presentation (COLP) support to
	  chan_dahdi/libpri as an addition to issue 8824. This is the
	  libpri portion. COLP support is now available for ETSI PTP, ETSI
	  PTMP, and Q.SIG with this patch. (closes issue #14068) Tested by:
	  rmudgett Review: https://reviewboard.asterisk.org/r/339/

2009-08-18 20:59 +0000 [r976]  Jeff Peeler <jpeeler@digium.com>

	* Makefile: Allow custom CPU optimization flags Added make variable
	  LIBPRI_OPT to set optimization level. By default the optimization
	  level is now set to -O2. (closes issue #12676) Reported by:
	  tzafrir Patches: libpri_opt.diff uploaded by tzafrir (license 46)

2009-08-07 15:53 +0000 [r968]  Richard Mudgett <rmudgett@digium.com>

	* rose_qsig_diversion.c: Corrected standard document reference.

2009-07-23 20:53 +0000 [r952]  Richard Mudgett <rmudgett@digium.com>

	* pri_facility.c: Fixed potential NULL pointer dereference.

2009-06-26 19:50 +0000 [r914-921]  Richard Mudgett <rmudgett@digium.com>

	* pri.c: Fix potential buffer overflow in pri_dump_info_str(). *
	  Created pri_snprintf() to prevent buffer overflow in
	  pri_dump_info_str(). * Extracted timer name to timer number table
	  from pri_timer2idx() so pri_dump_info_str() can use it.

	* pri_internal.h: Eliminate local version of PRI_MAX_TIMERS.

	* libpri.h: Doxygenify the timer comments.

	* pri_internal.h, q931.c: Added printf format attribute to
	  pri_message() and pri_error() and fixed some detected errors.

2009-06-25 18:53 +0000 [r907]  Sean Bright <sean@malleable.com>

	* pri.c, pri_internal.h, q931.c, libpri.h: Add support for sending
	  Reverse Charging Indication IE on ISDN PRI. Add the ability to
	  transmit a Reverse Charging Indication IE during a SETUP message.
	  In passing, re-work some of the receive logic to be forwards
	  compatible with new RCI values that may be added in the future.
	  Also removed the PRI_REVERSECHARGE_SUPPORT define that I added on
	  the last commit since we can just check for
	  PRI_REVERSECHARGE_NONE or _REQUESTED on the Asterisk side to
	  determine support for this. Special thanks to rmudgett who could
	  have written this in half the time he spent reviewing it, but
	  instead talked me through it. Much appreciated! (issue #13760)
	  Reported by: mrgabu Review:
	  https://reviewboard.asterisk.org/r/292/

2009-06-25 17:35 +0000 [r894-901]  Richard Mudgett <rmudgett@digium.com>

	* libpri.h: Convert PRI_TIMER_xxx to an enum so PRI_MAX_TIMERS can
	  be automatically adjusted.

	* pri.c, pri_timers.h (removed), libpri.h: Make it easier to add
	  more timers/counters and vary the defaults based upon switchtype.

2009-06-24 18:19 +0000 [r878-885]  Sean Bright <sean@malleable.com>

	* pri_internal.h, q931.c, libpri.h: Capture and expose the Reverse
	  Charging Indication IE on ISDN PRI. (issue #13760) Reported by:
	  mrgabu Patches: 20090619_libpri_1.4.patch uploaded by seanbright
	  (license 71) Tested by: seanbright, pruonckk Review:
	  https://reviewboard.asterisk.org/r/291/

	* pri_internal.h, q931.c, libpri.h: Revert unintentional changes

	* pri_internal.h, q931.c, /, libpri.h: Set reviewboard property.

2009-06-12 14:29 +0000 [r865]  Richard Mudgett <rmudgett@digium.com>

	* pri_facility.c: Miscellaneous minor changes.

2009-06-09 19:47 +0000 [r859]  Matthew Fredrickson <creslin@digium.com>

	* q921.c: There are two changes in this commit that are bug fixes
	  for various Q.921 issues found in internal testing. Both were
	  exposed/introduced by the TBR4 compliance patch for bug #12861,
	  in changing how retransmissions and in how the transmission queue
	  was maintained. TX-RX message flow and acknowledgement was
	  severely restricted, since the patch changed the behavior so that
	  pending untransmitted frames would not actually be send until the
	  next RR was received in normal circumstances, or REJ when a
	  reject frame was received. On busy links, this can severly limit
	  the amount of useful traffic that is sent, and can slow down
	  message transmission. Until someone can point out where in Q.921
	  it is mandated for us to wait for RR frames to start sending
	  untransmitted messages, the first change is to allow us to send
	  untransmitted frames when we receive new I frames as well, with
	  updated N(R). The other bug fixed is a situation caused by the
	  restricted traffic flow, if an outside process tries to send an
	  I-frame asynchronous to an RR frame, when the transmit window was
	  previously closed and then opened up but an RR has not been
	  received yet. A bug was found with the integration of the old
	  transmit code with the new reject handling code which caused the
	  new frame to be sent immediately, regardless if there were any
	  pending untransmitted I-frames in the queue to be sent and
	  causing an out of order I-frame to be sent to the other side.
	  This bug is also fixed in this patch.

2009-06-03 22:51 +0000 [r836-848]  Richard Mudgett <rmudgett@digium.com>

	* asn1_primitive.c: Made ASN.1 memory dump also display printable
	  characters.

	* q931.c: Renamed callstate2str() to q931_call_state_str().

	* q931.c: Made transmit_facility() debug message indiate to which
	  message the facility ie is being added.

2009-05-29 15:39 +0000 [r824]  Richard Mudgett <rmudgett@digium.com>

	* q931.c: Renamed local struct pri *pri variables to struct pri
	  *ctrl in q931.c. The context tagging for my editor is much
	  happier now that the struct and the variable do not have the same
	  name. (At least for this file.)

2009-05-20 15:03 +0000 [r804]  Richard Mudgett <rmudgett@digium.com>

	* q931.c: Removed usage of FUNC_DUMP(), FUNC_RECV(), and
	  FUNC_SEND() defines. They did not really help and hindered easy
	  lookup of parameter types.

2009-05-13 15:17 +0000 [r798]  Kevin P. Fleming <kpfleming@digium.com>

	* pri.c, pri_q931.h, q931.c, libpri.h: Add 'const' qualifier to
	  character string argument to keypad facility API calls These API
	  calls do not modify the string supplied, and should not be
	  allowed to modify it, so this patch adds a 'const' qualifier to
	  that argument to allow the compiler to enforce this restriction
	  (and allow callers of the API that already have a 'const' pointer
	  to be able to pass it to this API).

2009-05-07 16:21 +0000 [r790-794]  Richard Mudgett <rmudgett@digium.com>

	* pri_internal.h, pri_q931.h, q931.c: Minor code clean up.

	* q931.c: Avoid a stale pointer crash if the TE BRI TEI is removed
	  when active calls exist. Made the q931_call record point to the
	  master D channel control structure instead of the BRI TEI
	  subchannel control structure. When a layer 3 message is sent, the
	  current TEI subchannel control structure is used.

2009-05-05 22:25 +0000 [r786]  Richard Mudgett <rmudgett@digium.com>

	* pri_q931.h: Added Q.931 call state description comments.

2009-05-01 22:47 +0000 [r782]  Richard Mudgett <rmudgett@digium.com>

	* pri_q931.h, q921.c: Comment changes.

2009-04-21 23:32 +0000 [r766-772]  Richard Mudgett <rmudgett@digium.com>

	* rose.c, rosetest.c, rose_internal.h, Makefile, rose.h,
	  rose_qsig_aoc.c (added), pri_facility.c: Added Q.SIG
	  Advice-Of-Charge encode/decode routines.

	* asn1_primitive.c (added), pri_internal.h, rose_qsig_name.c
	  (added), Makefile, q931.c, asn1.h (added), rose_qsig_mwi.c
	  (added), rose.c (added), rosetest.c (added), rose_internal.h
	  (added), rose_other.c (added), rose.h (added), rose_address.c
	  (added), rose_qsig_diversion.c (added), rose_etsi_aoc.c (added),
	  pri_facility.c, rose_qsig_ct.c (added), pri_facility.h,
	  rose_q931.c (added), libpri.h: ROSE ASN.1 facility encode and
	  decode rewrite of existing messages. Several components are now
	  parsed correctly. Most notably: PartyNumber and Q.SIG Name.

2009-04-14 15:05 +0000 [r732]  Jeff Peeler <jpeeler@digium.com>

	* pri.c, pri_internal.h, pri_q921.h, pri_q931.h, q921.c, q931.c,
	  libpri.h: Add service maintenance message support This adds
	  support for two new message types: Service and Service
	  Acknowledge. When a channel receives a service message it will
	  either take the channel in or out of service and then send a
	  service acknowledgment. Although not enforced here (enforced in
	  chan_dahdi), the service messages are only supported with switch
	  types 4ess/5ess. The required Asterisk changes will be coming
	  next. (issue #3450) Reported by: cmaj

2009-04-02 19:33 +0000 [r726]  Richard Mudgett <rmudgett@digium.com>

	* pri_facility.c: Comment changes and some string content
	  corrections.

2009-04-18 Matthew Fredrickson <creslin@digium.com>

	* libpri 1.4.10 released.

2009-04-02 19:33 +0000 [r726]  Richard Mudgett <rmudgett@digium.com>

	* pri_facility.c: Comment changes and some string content
	  corrections.

2009-03-26 16:01 +0000 [r715]  Richard Mudgett <rmudgett@digium.com>

	* libpri.h: Comment changes to note what ISDN message type causes
	  the event.

2009-03-19 01:39 +0000 [r711]  Richard Mudgett <rmudgett@digium.com>

	* pri_facility.c: Added pSS1InfoElement comments in
	  qsig_cf_callrerouting().

2009-03-13 01:05 +0000 [r705]  Richard Mudgett <rmudgett@digium.com>

	* build_tools/make_version: Use the correct branch integrated
	  property when generating the version string. Update the
	  make_version file to the latest Asterisk version with the
	  appropriate libpri required chage.

2009-03-04 20:31 +0000 [r701]  Joshua Colp <jcolp@digium.com>

	* q931.c: Make sure we only have 4 octects on unrestricted 64k data
	  calls. (closes issue #14507) Reported by: jsmith Patches:
	  64k-data.patch uploaded by jsmith (license 15) Tested by: jsmith
	  (closes issue #13118) Reported by: radpeter

2009-02-02 20:18 +0000 [r687]  Leif Madsen <lmadsen@digium.com>

	* libpri.h: Fix a small spelling error. (closes issue #14375)
	  Reported by: jeremy1

2009-01-27 23:22 +0000 [r680]  Matthew Fredrickson <creslin@digium.com>

	* q921.c: A couple of last BRI fixes in libpri... don't discard
	  pending iframes when we call the q921_dchannel_up routine, since
	  we need to be able to send the ones that were queued up while the
	  D-channel went down and is being reactivated. Also fix some buggy
	  logic in the frame transmission decision code.

2009-01-22 21:48 +0000 [r675]  Matthew Fredrickson <creslin@digium.com>

	* q921.c: Change behavior so that we do not send I-frames when link
	  is down, but instead queue them up until the link comes up and
	  send them out then.

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.

2008-11-22 00:34 +0000 [r645]  Matthew Fredrickson <creslin@digium.com>

	* q921.c: Fix a number of Q.921 bugs, found doing TBR4 compliance
	  testing, thanks to Tzafrir, Xorcom, and co. (#12861). Thanks!

2008-10-17 16:13 +0000 [r636]  Matthew Fredrickson <creslin@digium.com>

	* pri.c, pri_internal.h, pri_q931.h, q931.c, pri_facility.c,
	  pri_facility.h, libpri.h: Merging in additional Q.SIG features in
	  #13454. Includes Q.SIG physical/logical channel mapping support,
	  extended coding of Q.SIG name operations (calling name), and call
	  rerouting support via added dialplan application.

2008-08-06 18:20 +0000 [r616]  Jason Parker <jparker@digium.com>

	* Makefile: Make install paths use libdir, like libss7

2008-08-05 Kevin P. Fleming <kpfleming@digium.com>

	* libpri 1.4.7 released.

2008-08-05 22:18 +0000 [r611]  Kevin P. Fleming <kpfleming@digium.com>

	* pritest.c, pri.c, pri_internal.h, q921.c, q931.c, copy_string.c,
	  prisched.c, pri_q921.h, pri_q931.h, pri_facility.c, /,
	  compiler.h, pridump.c, testprilib.c, pri_timers.h,
	  pri_facility.h, libpri.h: Merged revisions 610 via svnmerge from
	  https://origsvn.digium.com/svn/libpri/branches/1.2 ........ r610
	  | kpfleming | 2008-08-05 17:16:58 -0500 (Tue, 05 Aug 2008) | 2
	  lines clean up license headers, and explicitly grant additional
	  permissions when used with Asterisk ........

2008-07-30 15:43 +0000 [r606-607]  Kevin P. Fleming <kpfleming@digium.com>

	* /: update ignore list

	* Makefile, mkdep (removed): use better version.c creation process,
	  and better dependency tracking process too

2008-07-29 22:47 +0000 [r598-602]  Jason Parker <jparker@digium.com>

	* build_tools/make_version: I believe this is what was meant. (it
	  matches how Asterisk does it)

	* build_tools/make_version: libpri is not libss7 :D

2008-07-22 22:36 +0000 [r594]  Kevin P. Fleming <kpfleming@digium.com>

	* pri_internal.h, libpri.h: correct comments to match code

2008-07-22 Kevin P. Fleming <kpfleming@digium.com>

	* Libpri 1.4.6 released.

2008-07-22 19:43 +0000 [r589]  Kevin P. Fleming <kpfleming@digium.com>

	* pri.c, pri_internal.h, q931.c, libpri.h: rename API call and
	  option (nothing has been released to use it yet so this should be
	  safe) to be more accurate in describing what it does (closes
	  issue #13042)

2008-07-11 Jason Parker <jparker@digium.com>

	* Libpri 1.4.5 released.

2008-07-11 16:44 +0000 [r574-579]  Kevin P. Fleming <kpfleming@digium.com>

	* /: ignore generated files

	* pri.c, pri_internal.h, q931.c, libpri.h: modify work done for
	  issue #10552, making the support of inband audio after RELEASE a
	  configurable option, since it is causing problems for a number of
	  users (closes issue #13042)

2008-06-04 17:02 +0000 [r562]  Dwayne M. Hubbard <dhubbard@digium.com>

	* q931.c: While working on issue 3450 I noticed that the
	  information channel selection field in the channel identification
	  IE was displayed incorrectly when using 'pri intense debug'. I
	  wanted another pair of eyes to look at the code because
	  everything looked correct until Shaun Ruffell noticed the missing
	  comma in the msg_chan_sel array.

2008-05-07 19:51 +0000 [r557]  Matthew Fredrickson <creslin@digium.com>

	* pri.c, pritest.c, pri_internal.h, pri_q921.h, Makefile, q921.c,
	  q931.c, pri_facility.c, prisched.c, testprilib.c, pri_timers.h,
	  pri_facility.h, libpri.h: Moving trunk changes back into 1.4

2008-05-07 Matthew Fredrickson <creslin@digium.com>

	* Libpri 1.4.4 released.

2008-05-06 16:43 +0000 [r553-555]  Matthew Fredrickson <creslin@digium.com>

	* q921.c, pri.c: Remove some unnecessary debug messages

	* q931.c: We passed TBR3 layer 2 and layer 3 testing with this
	  commit in for BRI-TE PTMP.

	* q931.c: Final patch to pass certification

2008-04-22 15:30 +0000 [r546]  Russell Bryant <russell@digium.com>

	* Makefile: All versions of libpri have been installed as
	  libpri.so.1.0, even though the API and ABI have changed over
	  time. This patch changes the Makefile to install the library as
	  libpri.so.1.4 to indicate that this is not compatible with
	  previous versions. In the future, this should be changed as we
	  make ABI changes. (closes issue #10376) Reported by: tzafrir
	  Patches: libpri-soname.diff uploaded by tzafrir (license 46) --
	  with very minor changes by me

2008-03-15 19:57 +0000 [r541-543]  Matthew Fredrickson <creslin@digium.com>

	* libpri.h, pri.c: Remove some useless event items

	* q921.c, pri_internal.h: Make sure if we're a bri and in PTMP mode
	  that we release the TEI and try to get a new one with the other
	  end when we lose activity in multiframe mode

	* q921.c, pri.c, pri_q921.h: When we recieve a UA in any TEI
	  established state other than awaiting establishement make sure we
	  drop the TEI and get a new one. For passing tests PC37.2 - PC41.2
	  in Q.921

2008-03-06 23:43 +0000 [r538-539]  Matthew Fredrickson <creslin@digium.com>

	* q921.c: Make sure we are sending as command not as response

	* q921.c: Make sure C/R bit is correct

2008-03-01 23:30 +0000 [r531-535]  Matthew Fredrickson <creslin@digium.com>

	* q921.c: Remove some (currently) useless code

	* q921.c, pri.c, pri_internal.h: Some more updates to add code for
	  passing PC 27.1 in Q.921

	* q921.c, pri.c: Various coding style cleanups as well as a bug fix
	  for TEI removal

	* q921.c, q931.c, pri.c, pri_internal.h: Initial checkin of code to
	  pass Q.921 PC25 and PC26

	* q921.c: Add support for responding to TEI requests (Q.921 PC23.x)

2008-02-18 20:31 +0000 [r525]  Matthew Fredrickson <creslin@digium.com>

	* q931.c, libpri.h: Improve transmission, receiving, and dumping of
	  bearer capability IE (#11593)

2008-01-16 18:06 +0000 [r518]  Jason Parker <jparker@digium.com>

	* Makefile, /: Add logging for 'make update' command (also fixes
	  updates in some places). Issue #11766, initial patch by jmls.

2007-12-26 17:35 +0000 [r505]  Russell Bryant <russell@digium.com>

	* libpri.h: Remove unnecessary usage of the extern keyword.

2007-12-06 22:16 +0000 [r494-496]  Russell Bryant <russell@digium.com>

	* q921.c, q931.c, pri_facility.c, pri.c: Change malloc+memset to
	  calloc. Also, handle allocation failures early to reduce
	  indentation. (closes issue #11469) Reported by: eliel Patches:
	  pri.c.patch uploaded by eliel (license 64) q931.c.patch uploaded
	  by eliel (license 64) q921.c.patch uploaded by eliel (license 64)
	  pri_facility.c.patch uploaded by eliel (license 64)

	* pri.c: Change a use of malloc+memset to calloc. Also, reduce
	  indentation of a function by doing the check for memory
	  allocation failure at the beginning.

	* pri.c: Change the table used to hold the default timers to be
	  global and const, instead of allocating it on the stack each time
	  the function is called.

2007-12-05 00:20 +0000 [r491-493]  Matthew Fredrickson <creslin@digium.com>

	* q931.c: Improve the parameter name to better reflect its use

	* q921.c, q931.c: More PTMP fixes. Stand by, more changes to come

	* q921.c, q931.c, testprilib.c: More magic to make BRI CPE PTMP
	  work

2007-11-21 22:30 +0000 [r486-487]  Matthew Fredrickson <creslin@digium.com>

	* q931.c: Make sure we loop BRI call references for one byte CREFs
	  instead of two

	* q921.c, q931.c, libpri.h, pri.c, pritest.c, pri_internal.h: Add
	  BRI support to libpri

2007-10-13 16:00 +0000 [r473]  Matthew Fredrickson <creslin@digium.com>

	* q921.c: Make sure that we only output the message handling debug
	  when we're actually debugging

2007-09-25 21:56 +0000 [r469]  Matthew Fredrickson <creslin@digium.com>

	* q931.c: Fix user-user IE order in setup message (#10705)

2007-06-20 15:18 +0000 [r428-430]  Matthew Fredrickson <creslin@digium.com>

	* Makefile: Revert that back to how it was

	* Makefile, q921.c, q931.c, prisched.c, testprilib.c, pri_timers.h,
	  libpri.h, pri.c, pri_internal.h, pri_q921.h: Patch to add PTMP
	  mode (BRI support)

2007-06-06 21:59 +0000 [r417-425]  Matthew Fredrickson <creslin@digium.com>

	* q931.c, pri_facility.c, pri_facility.h, pri.c, pri_internal.h:
	  Preliminary patch plus mods for Q.SIG Path Replacement (Q.SIG
	  version of 2BCT) #7778

2007-05-25 17:36 +0000 [r413]  Matthew Fredrickson <creslin@digium.com>

	* q931.c, pri_facility.c, pri_facility.h, libpri.h: Commit path for
	  ROSE-12 and ROSE-13 support (#9076)

2006-11-03 18:16 +0000 [r382]  Matthew Fredrickson <creslin@digium.com>

	* q921.c: Remove pointless recursion. (#8281)

2008-05-07 19:51 +0000 [r557]  Matthew Fredrickson <creslin@digium.com>

	* pri.c, pritest.c, pri_internal.h, pri_q921.h, Makefile, q921.c,
	  q931.c, pri_facility.c, prisched.c, testprilib.c, pri_timers.h,
	  pri_facility.h, libpri.h: Moving trunk changes back into 1.4

2008-05-02 20:21 +0000 [r552]  Brett Bryant <bbryant@digium.com>

	* Makefile, build_tools (added), build_tools/make_version (added),
	  build_tools/make_version_c (added), libpri.h: Add new API call
	  (pri_get_version) to show the current version of the branch for
	  support purposes.

2008-04-16 00:21 +0000 [r544]  Kevin P. Fleming <kpfleming@digium.com>

	* q921.c: fix the indentation in this function so that it is
	  actually possible to read it and understand the logic and flow

2008-02-21 16:38 +0000 [r528]  Joshua Colp <jcolp@digium.com>

	* q931.c: If inband audio is being provided with a disconnect
	  message let the audio be heard before releasing the channel.
	  (closes issue #10552) Reported by: paravoid Patches:
	  disconnect-audio.diff uploaded by paravoid (license 200)

2008-02-18 20:31 +0000 [r524]  Matthew Fredrickson <creslin@digium.com>

	* q931.c, libpri.h: Improve transmission, receiving, and dumping of
	  bearer capability IE (#11593)

2008-01-11 16:34 +0000 [r514]  Matthew Fredrickson <creslin@digium.com>

	* q931.c, /: Merged revisions 513 via svnmerge from
	  https://origsvn.digium.com/svn/libpri/branches/1.2 ........ r513
	  | mattf | 2008-01-11 10:33:52 -0600 (Fri, 11 Jan 2008) | 1 line
	  We should not be parsing further into the bearer capability IE if
	  the length does not confirm that there actually is data present
	  ........

2007-12-13  Russell Bryant  <russell@digium.com>

	* libpri 1.4.3 released.

2007-10-22 15:10 +0000 [r479]  Kevin P. Fleming <kpfleming@digium.com>

	* pri_internal.h, /: Merged revisions 478 via svnmerge from
	  https://origsvn.digium.com/svn/libpri/branches/1.2 ........ r478
	  | kpfleming | 2007-10-22 10:09:27 -0500 (Mon, 22 Oct 2007) | 3
	  lines we need to include stddef.h for 'size_t' ........

2007-10-16  Matthew Fredrickson  <creslin@digium.com>

	* libpri 1.4.2 released.

2007-10-05 16:45 +0000 [r470]  Jason Parker <jparker@digium.com>

	* libpri.h: Fix an incorrect pri_event structure definition. Issue
	  10832, patch by flefoll

2007-09-25 21:37 +0000 [r468]  Matthew Fredrickson <creslin@digium.com>

	* q931.c: Fix user-user IE order in setup message (#10705)

2007-09-14 21:32 +0000 [r465]  Matthew Fredrickson <creslin@digium.com>

	* q931.c, libpri.h: Fix for #10189. Make sure we properly report
	  the user layer 1 for H.223 and H.245

2007-09-06 15:11 +0000 [r462]  Matthew Fredrickson <creslin@digium.com>

	* pri.c, pri_facility.c, /: Merged revisions 460 via svnmerge from
	  https://origsvn.digium.com/svn/libpri/branches/1.2 ........ r460
	  | mattf | 2007-09-06 10:06:42 -0500 (Thu, 06 Sep 2007) | 1 line
	  TBCT now works. It should work for NI2, 4E, and 5E. This code was
	  tested on NI2. ........

2007-08-27 19:21 +0000 [r446]  Jason Parker <jparker@digium.com>

	* Makefile, /: Merged revisions 445 via svnmerge from
	  https://origsvn.digium.com/svn/libpri/branches/1.2 ........ r445
	  | qwell | 2007-08-27 14:20:23 -0500 (Mon, 27 Aug 2007) | 2 lines
	  Make sure we build both the static and shared modules with -fPIC.
	  ........

2007-08-06 19:58 +0000 [r441]  Jason Parker <jparker@digium.com>

	* Makefile: Allow setting CC to something with a space, such as
	  `make CC="gcc -m32"` Issue 10253.

2007-07-09  Russell Bryant  <russell@digium.com>

	* libpri 1.4.1 released.

2007-06-19 18:23 +0000 [r427]  Matthew Fredrickson <creslin@digium.com>

	* q931.c, /: Merged revisions 426 via svnmerge from
	  https://origsvn.digium.com/svn/libpri/branches/1.2 ........ r426
	  | mattf | 2007-06-19 13:22:33 -0500 (Tue, 19 Jun 2007) | 1 line
	  Try to send pending facility messages if we receive alerting (for
	  when we don't get proceeding) (#9651) ........

2007-06-06 21:58 +0000 [r416-424]  Matthew Fredrickson <creslin@digium.com>

	* pri_facility.c, /: Merged revisions 423 via svnmerge from
	  https://origsvn.digium.com/svn/libpri/branches/1.2 ........ r423
	  | mattf | 2007-06-06 16:57:15 -0500 (Wed, 06 Jun 2007) | 1 line
	  Oops, that should not be on one line ........

	* pri_facility.c, /: Merged revisions 415 via svnmerge from
	  https://origsvn.digium.com/svn/libpri/branches/1.2 ........ r415
	  | mattf | 2007-06-06 08:20:05 -0500 (Wed, 06 Jun 2007) | 2 lines
	  Make sure we only send the NFE when we are talking QSIG ........

2007-01-22 22:29 +0000 [r390]  Matthew Fredrickson <creslin@digium.com>

	* q931.c, /: Merged revisions 389 via svnmerge from
	  https://origsvn.digium.com/svn/libpri/branches/1.2 ........ r389
	  | mattf | 2007-01-22 16:20:59 -0600 (Mon, 22 Jan 2007) | 2 lines
	  Make sure we send DISCONNECT if we reached the active state and a
	  call is disconnected, regardless of cause code. ........

2006-12-30 19:17 +0000 [r386]  Joshua Colp <jcolp@digium.com>

	* Makefile, /: Merged revisions 385 via svnmerge from
	  https://origsvn.digium.com/svn/libpri/branches/1.2 ........ r385
	  | file | 2006-12-30 14:16:17 -0500 (Sat, 30 Dec 2006) | 2 lines
	  Specify full path to restorecon instead of assuming it will be
	  available from what is in $PATH. (issue #8670 reported by djflux)
	  ........

2006-12-23  Kevin P. Fleming  <kpfleming@digium.com>

	* libpri 1.4.0 released.
	
2006-09-20  Kevin P. Fleming  <kpfleming@digium.com>

	* libpri 1.4.0-beta1 released.
