Commit Graph

2742 Commits

Author SHA1 Message Date
paulc d6a1a30987 Create and populate the call.preroute message in the call constructor, use saved message to start routing.
git-svn-id: http://voip.null.ro/svn/yate@2800 acf43c95-373e-0410-b603-e72c3f656dc1
2009-08-20 14:25:24 +00:00
paulc 6c2f3f9fd4 Copy the packet data and append extra zeros for CRC before sending to Zaptel.
Altering a const buffer is a serious violation of the calling convention.


git-svn-id: http://voip.null.ro/svn/yate@2799 acf43c95-373e-0410-b603-e72c3f656dc1
2009-08-20 12:40:58 +00:00
paulc 038f9d9fea For debugging purposes added a count of threads trying to lock a mutex, display number of waiting threads in failure messages.
git-svn-id: http://voip.null.ro/svn/yate@2798 acf43c95-373e-0410-b603-e72c3f656dc1
2009-08-19 16:27:48 +00:00
paulc ff4e000005 Once a thread was started for an external module let it do the destruction in its cleanup, only unuse() if thread failed to start.
Bug report and solution by Allan.


git-svn-id: http://voip.null.ro/svn/yate@2797 acf43c95-373e-0410-b603-e72c3f656dc1
2009-08-19 13:55:22 +00:00
paulc f9a1c49d09 Fixed the reference counting of Semaphore internal implementation.
git-svn-id: http://voip.null.ro/svn/yate@2796 acf43c95-373e-0410-b603-e72c3f656dc1
2009-08-18 15:32:06 +00:00
paulc 97313228d6 Added parameter "queuetime" for the CDR builder to know how long a call waited in a queue.
All calls in a queue can be dropped by specifying queuename/* as id.
A call to a "single" type queue is dropped when its operator call fails.


git-svn-id: http://voip.null.ro/svn/yate@2795 acf43c95-373e-0410-b603-e72c3f656dc1
2009-08-18 14:55:25 +00:00
paulc aeba470ab8 Fixed the way the remote MTP2 is disconnected.
git-svn-id: http://voip.null.ro/svn/yate@2794 acf43c95-373e-0410-b603-e72c3f656dc1
2009-08-14 18:15:04 +00:00
paulc 492bf3ac57 Added new setting "prerouteall" to bypass context and caller check.
Documented the other global settings in section [priorities].


git-svn-id: http://voip.null.ro/svn/yate@2793 acf43c95-373e-0410-b603-e72c3f656dc1
2009-08-14 16:27:46 +00:00
paulc 645a72b5d7 Process a 2xx answer to a forked SIP call after changing the disalog tag to match.
git-svn-id: http://voip.null.ro/svn/yate@2792 acf43c95-373e-0410-b603-e72c3f656dc1
2009-08-14 12:52:40 +00:00
paulc 9c7317c972 Added separate method to actually process a SIP message after identifying its transaction.
git-svn-id: http://voip.null.ro/svn/yate@2791 acf43c95-373e-0410-b603-e72c3f656dc1
2009-08-14 12:51:05 +00:00
paulc 1ae2b5f153 Transmit the internally generated 408 answer, prevent the stack from immediately cleaning up the transaction.
git-svn-id: http://voip.null.ro/svn/yate@2790 acf43c95-373e-0410-b603-e72c3f656dc1
2009-08-14 11:34:04 +00:00
paulc e2c68cb573 Copy the "maxlen" and "notify" parameters to the conference recording call leg.
git-svn-id: http://voip.null.ro/svn/yate@2789 acf43c95-373e-0410-b603-e72c3f656dc1
2009-08-13 11:57:24 +00:00
paulc 07daf0aa54 In the outbound SIP call legs put the generated Call-ID in chan.startup to be available for CDR building.
git-svn-id: http://voip.null.ro/svn/yate@2788 acf43c95-373e-0410-b603-e72c3f656dc1
2009-08-13 11:39:44 +00:00
paulc 51e203934c When masquerading a call.answered message change the status but don't call status() that would set the isAnswered() flag and prevent a call.answered in the other direction from working.
git-svn-id: http://voip.null.ro/svn/yate@2787 acf43c95-373e-0410-b603-e72c3f656dc1
2009-08-12 15:31:05 +00:00
paulc 71f34fd5cf Added code and setting to prevent rebuilding the RTP when only the remote port has changed in the SDP offer.
This can prevent a neverending sequence of reINVITEs, each end trying to adjust to the changes of the other.


git-svn-id: http://voip.null.ro/svn/yate@2786 acf43c95-373e-0410-b603-e72c3f656dc1
2009-08-12 15:18:36 +00:00
paulc 4e9abe5c08 Remember the WaveConsumer that must be disconnected, remove it from the proper consumer, call record or peer record.
git-svn-id: http://voip.null.ro/svn/yate@2785 acf43c95-373e-0410-b603-e72c3f656dc1
2009-08-12 14:09:32 +00:00
paulc 6107af4987 Fixed entering the proving period.
Fixed synchronization of FIB.
Added a T2 timer - just a mild warning, Yate keeps trying.
Added several abnormality generation controls for making tests.


git-svn-id: http://voip.null.ro/svn/yate@2784 acf43c95-373e-0410-b603-e72c3f656dc1
2009-08-11 21:57:56 +00:00
paulc 917c2d0a1f Fixed the location where the User Part type and cause are written in an UPU.
git-svn-id: http://voip.null.ro/svn/yate@2783 acf43c95-373e-0410-b603-e72c3f656dc1
2009-08-11 15:45:48 +00:00
paulc 764fcf62c2 The rmanager control message can have an arbitrary number of parameters.
git-svn-id: http://voip.null.ro/svn/yate@2782 acf43c95-373e-0410-b603-e72c3f656dc1
2009-08-11 14:29:07 +00:00
paulc 3b368cf60e Improved RUDP debugging messages to include controlling session name.
The default RUDP sequence number is now random.
Preliminary support for RUDP v1 and version guessing from SYN length.


git-svn-id: http://voip.null.ro/svn/yate@2781 acf43c95-373e-0410-b603-e72c3f656dc1
2009-08-11 13:46:05 +00:00
paulc 36f08ceeaa Added methods to get and set at once multiple parameters of a circuit.
git-svn-id: http://voip.null.ro/svn/yate@2780 acf43c95-373e-0410-b603-e72c3f656dc1
2009-08-07 09:46:55 +00:00
paulc c1634df9c4 Detect EOF condition on socket.
git-svn-id: http://voip.null.ro/svn/yate@2779 acf43c95-373e-0410-b603-e72c3f656dc1
2009-08-03 10:26:42 +00:00
paulc 5b8f5524d0 Fixed Socket::canRetry() on Windows.
git-svn-id: http://voip.null.ro/svn/yate@2778 acf43c95-373e-0410-b603-e72c3f656dc1
2009-08-03 10:26:02 +00:00
paulc 745e0ee67a Create PDB for debug versions of dynamic libraries.
git-svn-id: http://voip.null.ro/svn/yate@2777 acf43c95-373e-0410-b603-e72c3f656dc1
2009-08-03 10:25:01 +00:00
paulc e1fdc93a82 Return socketError() whenever an error code is stored in the SSL socket.
git-svn-id: http://voip.null.ro/svn/yate@2776 acf43c95-373e-0410-b603-e72c3f656dc1
2009-08-03 09:22:37 +00:00
paulc fe2cf9a444 The runtime parameters from Engine::runParams() are expanded in the client greeting string.
git-svn-id: http://voip.null.ro/svn/yate@2775 acf43c95-373e-0410-b603-e72c3f656dc1
2009-08-02 23:19:52 +00:00
paulc 4239be2fca Made processing of a circuit event take ownership over the event to be certain who needs to destroy it.
git-svn-id: http://voip.null.ro/svn/yate@2774 acf43c95-373e-0410-b603-e72c3f656dc1
2009-07-28 15:52:18 +00:00
paulc bfb3a55391 Fixed the way disconnected circuits are reported from MGCP.
git-svn-id: http://voip.null.ro/svn/yate@2773 acf43c95-373e-0410-b603-e72c3f656dc1
2009-07-28 13:04:32 +00:00
marian 4453b1906a Added capability to forward circuit events upwards to signalling module.
git-svn-id: http://voip.null.ro/svn/yate@2772 acf43c95-373e-0410-b603-e72c3f656dc1
2009-07-28 12:52:13 +00:00
paulc da81e205c9 Implemented basic control operation for SS7 Layer 2.
git-svn-id: http://voip.null.ro/svn/yate@2771 acf43c95-373e-0410-b603-e72c3f656dc1
2009-07-28 10:51:50 +00:00
paulc 67665e11e0 Added support for issuing generic control operations.
git-svn-id: http://voip.null.ro/svn/yate@2770 acf43c95-373e-0410-b603-e72c3f656dc1
2009-07-27 21:36:02 +00:00
paulc 14ace8e2ca Accept session type "reject" for terminating Jingle version 0 sessions.
git-svn-id: http://voip.null.ro/svn/yate@2769 acf43c95-373e-0410-b603-e72c3f656dc1
2009-07-24 11:38:42 +00:00
paulc 258aff23e0 Made XMPP stream terminate if the host address could not be resolved.
git-svn-id: http://voip.null.ro/svn/yate@2768 acf43c95-373e-0410-b603-e72c3f656dc1
2009-07-24 11:07:23 +00:00
paulc 224999b363 Accept a Jingle version 0 "relay" transport to override another current candidate.
git-svn-id: http://voip.null.ro/svn/yate@2767 acf43c95-373e-0410-b603-e72c3f656dc1
2009-07-24 10:54:32 +00:00
paulc afa5189def When checking for prctl() include unistd.h so we pull in sys/cdefs.h
git-svn-id: http://voip.null.ro/svn/yate@2766 acf43c95-373e-0410-b603-e72c3f656dc1
2009-07-23 13:50:22 +00:00
paulc 67f1f67397 Use AC_TRY_LINK when looking for pthread_mutex_timedlock and sem_timedwait so we can detect platforms where these are declared but not implemented.
git-svn-id: http://voip.null.ro/svn/yate@2765 acf43c95-373e-0410-b603-e72c3f656dc1
2009-07-23 13:26:48 +00:00
paulc b2e01caaa0 Call Thread::idle() instead of hand coded sleeps in the SOCKS module.
git-svn-id: http://voip.null.ro/svn/yate@2764 acf43c95-373e-0410-b603-e72c3f656dc1
2009-07-22 17:04:03 +00:00
paulc c56c469f0f Use the platform idle time in various sleeps in SIP and Jabber.
Fixed a compiler warning about the copy constructor of Mutex and 
Semaphore.


git-svn-id: http://voip.null.ro/svn/yate@2763 acf43c95-373e-0410-b603-e72c3f656dc1
2009-07-22 15:41:28 +00:00
paulc 4c45cb8097 Include <time.h> as on some platforms is required for struct timespec.
git-svn-id: http://voip.null.ro/svn/yate@2762 acf43c95-373e-0410-b603-e72c3f656dc1
2009-07-22 13:09:21 +00:00
paulc 09b07f4b00 Added Semaphore class, made Mutex derive from (new class) Lockable, made Lock able to get a lock on any Lockable - Mutex or Semaphore.
Use pthread_mutex_timedlock and sem_timedwait if available on platform.
Fixed a bug in the IAX channel exposed by Mutex having virtual methods.


git-svn-id: http://voip.null.ro/svn/yate@2761 acf43c95-373e-0410-b603-e72c3f656dc1
2009-07-22 12:57:14 +00:00
paulc 25450eaaff Allow server command line options when running in ClientProxy mode.
git-svn-id: http://voip.null.ro/svn/yate@2760 acf43c95-373e-0410-b603-e72c3f656dc1
2009-07-14 18:47:06 +00:00
paulc 0212e32bab Added a ClientProxy engine run mode for clients with no local UI.
git-svn-id: http://voip.null.ro/svn/yate@2759 acf43c95-373e-0410-b603-e72c3f656dc1
2009-07-14 15:49:20 +00:00
paulc 7f4f0a651a Backstep when a jump is needed in the handler list since the scanning loop will move to the next handler.
Should fix some hard to explain missed handler calls.


git-svn-id: http://voip.null.ro/svn/yate@2758 acf43c95-373e-0410-b603-e72c3f656dc1
2009-07-14 13:33:02 +00:00
maciej f533d50ac8 utils.outgoing result changed
git-svn-id: http://voip.null.ro/svn/yate@2757 acf43c95-373e-0410-b603-e72c3f656dc1
2009-07-13 17:02:55 +00:00
marian bc49f19075 Disconnect the channel held by a client sound when stop is requested.
git-svn-id: http://voip.null.ro/svn/yate@2756 acf43c95-373e-0410-b603-e72c3f656dc1
2009-07-13 13:12:49 +00:00
paulc 5b99334e1d Set the thread name when running under windbg or Visual Studio debugger.
git-svn-id: http://voip.null.ro/svn/yate@2755 acf43c95-373e-0410-b603-e72c3f656dc1
2009-07-09 15:34:54 +00:00
marian 2826de569f The file transfer data source is now handling incomplete data forward.
git-svn-id: http://voip.null.ro/svn/yate@2754 acf43c95-373e-0410-b603-e72c3f656dc1
2009-07-09 14:37:03 +00:00
marian da27b641e7 Added flag used to inhibit repeating non fatal socket send error debug message. Use Thread::errorString() instead of strerror().
git-svn-id: http://voip.null.ro/svn/yate@2753 acf43c95-373e-0410-b603-e72c3f656dc1
2009-07-09 13:17:08 +00:00
marian 9b913d9ab8 Fixed target and parameters detection when parsing a command execute line. Fixed config param name.
git-svn-id: http://voip.null.ro/svn/yate@2752 acf43c95-373e-0410-b603-e72c3f656dc1
2009-07-09 08:40:36 +00:00
marian c08d4a261d The SOCKS consumer is now returning the number of sent bytes.
git-svn-id: http://voip.null.ro/svn/yate@2751 acf43c95-373e-0410-b603-e72c3f656dc1
2009-07-08 11:46:44 +00:00