Commit Graph

124 Commits

Author SHA1 Message Date
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 17bd631324 Added an unified Thread::idle method, use it instead of arbitrary
sleeps.


git-svn-id: http://voip.null.ro/svn/yate@2737 acf43c95-373e-0410-b603-e72c3f656dc1
2009-06-24 16:47:29 +00:00
paulc 85ef8e4d49 Changed thread names to be uniform and easily readable.
git-svn-id: http://voip.null.ro/svn/yate@2733 acf43c95-373e-0410-b603-e72c3f656dc1
2009-06-22 14:48:26 +00:00
paulc 134872a9f8 Make use of prctl() if available.
git-svn-id: http://voip.null.ro/svn/yate@2729 acf43c95-373e-0410-b603-e72c3f656dc1
2009-06-22 11:09:38 +00:00
paulc 830baebef4 Added engine config section so individual modules that depend on buggy
libraries are never unloaded from memory, only finalized if possible.


git-svn-id: http://voip.null.ro/svn/yate@2722 acf43c95-373e-0410-b603-e72c3f656dc1
2009-06-18 17:44:48 +00:00
paulc 712fda9139 Allow skipping mutex operations until main() on platforms where mutexes
are unsafe in global object constructors.


git-svn-id: http://voip.null.ro/svn/yate@2721 acf43c95-373e-0410-b603-e72c3f656dc1
2009-06-18 12:21:23 +00:00
paulc 00a1093743 Correctly provide a format string as we cannot guarantee the string content is printf safe.
git-svn-id: http://voip.null.ro/svn/yate@2682 acf43c95-373e-0410-b603-e72c3f656dc1
2009-06-04 14:01:17 +00:00
paulc 932e62bf45 Fixed several warnings detected by stricter compilers.
git-svn-id: http://voip.null.ro/svn/yate@2679 acf43c95-373e-0410-b603-e72c3f656dc1
2009-06-01 20:05:02 +00:00
marian 14e5a8cd94 Added engine checker class. Added check point after parsing the command line and changing current directory.
git-svn-id: http://voip.null.ro/svn/yate@2559 acf43c95-373e-0410-b603-e72c3f656dc1
2009-04-02 14:35:51 +00:00
paulc 653d83dd65 Added runtime option -t to truncate existing log file instead of appending to it.
git-svn-id: http://voip.null.ro/svn/yate@2496 acf43c95-373e-0410-b603-e72c3f656dc1
2009-02-26 16:26:55 +00:00
paulc 8ca8484416 Warn about missing HOME for user files only in client mode.
git-svn-id: http://voip.null.ro/svn/yate@2267 acf43c95-373e-0410-b603-e72c3f656dc1
2008-10-19 16:28:54 +00:00
paulc 3f30196fc7 Avoid creating the user data directory when just showing usage help.
git-svn-id: http://voip.null.ro/svn/yate@2260 acf43c95-373e-0410-b603-e72c3f656dc1
2008-10-14 21:32:45 +00:00
paulc 53f2f855c7 Added API and command line parameter to change user data directory at runtime.
git-svn-id: http://voip.null.ro/svn/yate@2259 acf43c95-373e-0410-b603-e72c3f656dc1
2008-10-14 20:15:33 +00:00
paulc 5d3cf0f078 Exponential backoff delay on child respawn, allow system to breathe if Yate keeps crashing or locking up.
git-svn-id: http://voip.null.ro/svn/yate@2231 acf43c95-373e-0410-b603-e72c3f656dc1
2008-09-21 14:43:23 +00:00
paulc c2a7bcbba4 Allow overriding the user config dir name at compile time.
git-svn-id: http://voip.null.ro/svn/yate@2102 acf43c95-373e-0410-b603-e72c3f656dc1
2008-07-25 18:00:04 +00:00
paulc 72c85ca069 Supervisor waits until a blocked child finishes cleaning up after SIGKILL.
git-svn-id: http://voip.null.ro/svn/yate@2035 acf43c95-373e-0410-b603-e72c3f656dc1
2008-06-24 16:44:16 +00:00
paulc 9aaf7059eb Rotate logs synchronously, not in signal handler - should fix bug #120
git-svn-id: http://voip.null.ro/svn/yate@1967 acf43c95-373e-0410-b603-e72c3f656dc1
2008-05-01 14:01:53 +00:00
paulc 5eec57a32c New option -F to increase maximum file handle instead of running ulimit -n.
git-svn-id: http://voip.null.ro/svn/yate@1751 acf43c95-373e-0410-b603-e72c3f656dc1
2008-03-10 15:40:54 +00:00
paulc 1e97c553a9 Bumped version to 2.0.0 alpha2 and made --version report code status.
git-svn-id: http://voip.null.ro/svn/yate@1713 acf43c95-373e-0410-b603-e72c3f656dc1
2008-02-04 12:54:30 +00:00
paulc 16c109b4ed Mark in list with an asterisk modules with unload capability.
git-svn-id: http://voip.null.ro/svn/yate@1681 acf43c95-373e-0410-b603-e72c3f656dc1
2008-01-26 17:33:42 +00:00
paulc 22cbff7957 Added module reload, filter out invalid completion for modules load/reload.
git-svn-id: http://voip.null.ro/svn/yate@1680 acf43c95-373e-0410-b603-e72c3f656dc1
2008-01-26 17:29:05 +00:00
paulc a795574e87 Fixed help and command line completion.
git-svn-id: http://voip.null.ro/svn/yate@1678 acf43c95-373e-0410-b603-e72c3f656dc1
2008-01-25 18:19:03 +00:00
paulc 87bb034bc6 Added clustering in Windows, fixed unload support.
git-svn-id: http://voip.null.ro/svn/yate@1669 acf43c95-373e-0410-b603-e72c3f656dc1
2008-01-24 22:59:37 +00:00
paulc ebec76304e Added module loading and unloading support.
git-svn-id: http://voip.null.ro/svn/yate@1668 acf43c95-373e-0410-b603-e72c3f656dc1
2008-01-24 21:09:41 +00:00
paulc 8c5baef76a Added a list of run instance parameters to the engine, access from extmodule.
git-svn-id: http://voip.null.ro/svn/yate@1665 acf43c95-373e-0410-b603-e72c3f656dc1
2008-01-24 11:43:04 +00:00
paulc 3b9b063351 Added node name (for clustering) and use it in heartbeat and regexroute.
git-svn-id: http://voip.null.ro/svn/yate@1651 acf43c95-373e-0410-b603-e72c3f656dc1
2008-01-19 11:19:52 +00:00
paulc ef8140fccf Added capability for plugins to request early init order.
git-svn-id: http://voip.null.ro/svn/yate@1496 acf43c95-373e-0410-b603-e72c3f656dc1
2007-11-26 23:56:37 +00:00
paulc 6bc06d57d8 Changes required for VS 2005 and Yate 2
git-svn-id: http://voip.null.ro/svn/yate@1486 acf43c95-373e-0410-b603-e72c3f656dc1
2007-11-26 12:01:09 +00:00
paulc d32c220960 Directory reorder #3
git-svn-id: http://voip.null.ro/svn/yate@1476 acf43c95-373e-0410-b603-e72c3f656dc1
2007-11-15 23:06:36 +00:00
paulc 4ba24b71f3 Warn about handling messages that are expected to be broadcasted.
git-svn-id: http://voip.null.ro/svn/yate@1428 acf43c95-373e-0410-b603-e72c3f656dc1
2007-08-23 08:20:40 +00:00
paulc dc45596e43 Supervisor reaps all children, not just one, before starting new child.
git-svn-id: http://voip.null.ro/svn/yate@1424 acf43c95-373e-0410-b603-e72c3f656dc1
2007-08-15 12:28:57 +00:00
paulc f5bd732768 Supervisor waits up to 30 seconds for child to start. Childrens are reaped
before starting a new one.


git-svn-id: http://voip.null.ro/svn/yate@1423 acf43c95-373e-0410-b603-e72c3f656dc1
2007-08-09 10:48:58 +00:00
paulc 68708c2de3 Restore the keyboard interrupt handler early so a hung process can be
killed from keyboard by pressing ^C twice.


git-svn-id: http://voip.null.ro/svn/yate@1414 acf43c95-373e-0410-b603-e72c3f656dc1
2007-07-31 15:14:09 +00:00
paulc ef9f7c196f Added support for multiple module directories, can be specified from the
command line.


git-svn-id: http://voip.null.ro/svn/yate@1405 acf43c95-373e-0410-b603-e72c3f656dc1
2007-07-23 16:18:18 +00:00
paulc 9934378be2 Added support for setting timer resolution in Windows
git-svn-id: http://voip.null.ro/svn/yate@1327 acf43c95-373e-0410-b603-e72c3f656dc1
2007-05-16 12:10:44 +00:00
paulc b4350bddd5 Use TelEngine::destruct(obj) or GenObject::destruct() wherever applicable.
git-svn-id: http://voip.null.ro/svn/yate@1325 acf43c95-373e-0410-b603-e72c3f656dc1
2007-05-15 15:40:50 +00:00
paulc 4267756e76 Engine's running mode can be read by any component.
git-svn-id: http://voip.null.ro/svn/yate@1233 acf43c95-373e-0410-b603-e72c3f656dc1
2007-03-26 17:38:50 +00:00
paulc b8831540ca Relaxed timings of supervisor sanity checks on startup.
git-svn-id: http://voip.null.ro/svn/yate@1229 acf43c95-373e-0410-b603-e72c3f656dc1
2007-03-26 15:07:42 +00:00
paulc d33a9709dc New option -r enables rotation of log file when running through supervisor.
git-svn-id: http://voip.null.ro/svn/yate@1176 acf43c95-373e-0410-b603-e72c3f656dc1
2007-01-25 20:46:32 +00:00
paulc e22dc0a465 Removed extra opening of log file.
git-svn-id: http://voip.null.ro/svn/yate@1175 acf43c95-373e-0410-b603-e72c3f656dc1
2007-01-24 18:28:50 +00:00
paulc e590ddde8b Added formatted timestamping option, changed the API to allow more changes.
git-svn-id: http://voip.null.ro/svn/yate@1146 acf43c95-373e-0410-b603-e72c3f656dc1
2006-12-22 00:57:35 +00:00
paulc 14f3a7848a Added option to display EPOCH based debugging timestamps.
git-svn-id: http://voip.null.ro/svn/yate@1127 acf43c95-373e-0410-b603-e72c3f656dc1
2006-12-16 01:07:26 +00:00
paulc e9c78c965e Fixed end of lines on status reports.
Uniformized the help in call generator.


git-svn-id: http://voip.null.ro/svn/yate@1100 acf43c95-373e-0410-b603-e72c3f656dc1
2006-11-02 19:53:44 +00:00
paulc 1b2c9c4da7 Added option to abort on bugs even during shutdown.
git-svn-id: http://voip.null.ro/svn/yate@976 acf43c95-373e-0410-b603-e72c3f656dc1
2006-07-17 13:33:02 +00:00
paulc 8e23cedd42 Command line option -V reports release as well.
git-svn-id: http://voip.null.ro/svn/yate@940 acf43c95-373e-0410-b603-e72c3f656dc1
2006-07-05 14:52:52 +00:00
paulc 054353f8af Added option to set corefile limit instead of using ulimit -c
git-svn-id: http://voip.null.ro/svn/yate@890 acf43c95-373e-0410-b603-e72c3f656dc1
2006-06-20 20:17:32 +00:00
paulc 41e3e0179b Windows compile fix for previous change
git-svn-id: http://voip.null.ro/svn/yate@870 acf43c95-373e-0410-b603-e72c3f656dc1
2006-06-16 15:51:35 +00:00
paulc f0a9ae0474 Added debug option to call module finalization code instead of unloading.
git-svn-id: http://voip.null.ro/svn/yate@869 acf43c95-373e-0410-b603-e72c3f656dc1
2006-06-16 15:46:29 +00:00