Commit Graph

165 Commits

Author SHA1 Message Date
paulc 67e06e890a Initialize and display the proper default config file name in help output.
Allow -OPT=param in addition to -OPT param, simplifies writing wrapper scripts.


git-svn-id: http://yate.null.ro/svn/yate/trunk@5133 acf43c95-373e-0410-b603-e72c3f656dc1
2012-06-19 10:59:11 +00:00
paulc bff1af2e1f All handlers except msgsniff should have numeric priority 1 or higher.
This allows the message sniffer to display the messages unaltered.


git-svn-id: http://yate.null.ro/svn/yate/trunk@5124 acf43c95-373e-0410-b603-e72c3f656dc1
2012-06-15 11:36:12 +00:00
paulc ff1f72d1cb Fixed bug in help system, was blocking specific help.
git-svn-id: http://yate.null.ro/svn/yate/trunk@5122 acf43c95-373e-0410-b603-e72c3f656dc1
2012-06-15 11:15:20 +00:00
paulc 1f4a428278 Raised default maxevents to 25.
git-svn-id: http://yate.null.ro/svn/yate/trunk@5110 acf43c95-373e-0410-b603-e72c3f656dc1
2012-06-13 06:51:17 +00:00
paulc bf57830c7f Added possibility to track message progress through handlers.
git-svn-id: http://yate.null.ro/svn/yate/trunk@5107 acf43c95-373e-0410-b603-e72c3f656dc1
2012-06-12 23:47:01 +00:00
oana d4c6476cd0 Do load and unload of modules on the main thread. Added the possibility of replacing themain loop of the engine.
git-svn-id: http://yate.null.ro/svn/yate/trunk@4999 acf43c95-373e-0410-b603-e72c3f656dc1
2012-04-06 15:27:35 +00:00
marian 82513bee25 Fixed Engine method call on Windows.
git-svn-id: http://yate.null.ro/svn/yate/trunk@4993 acf43c95-373e-0410-b603-e72c3f656dc1
2012-04-04 15:06:26 +00:00
paulc 2f44d0c9ac Added an alias and a variation to the events command.
git-svn-id: http://yate.null.ro/svn/yate/trunk@4992 acf43c95-373e-0410-b603-e72c3f656dc1
2012-04-04 13:06:46 +00:00
oana 5fe9e0dd4f Detect Mac OS X user path using Mac OS X Foundation API. Modified the build system to build and link Objective-C code.
git-svn-id: http://yate.null.ro/svn/yate/trunk@4991 acf43c95-373e-0410-b603-e72c3f656dc1
2012-04-04 12:46:24 +00:00
oana b6aac097e1 Added support to run the client on the main thread. Run the Qt4 Client on the main thread.
git-svn-id: http://yate.null.ro/svn/yate/trunk@4990 acf43c95-373e-0410-b603-e72c3f656dc1
2012-04-04 12:31:32 +00:00
paulc 2c9656adf5 Skip over Mac OS X process serial number -psn_X_Y on command line.
git-svn-id: http://yate.null.ro/svn/yate/trunk@4966 acf43c95-373e-0410-b603-e72c3f656dc1
2012-03-15 17:01:01 +00:00
paulc 73a11b49e1 Add node name if missing from module.update messages.
git-svn-id: http://yate.null.ro/svn/yate/trunk@4965 acf43c95-373e-0410-b603-e72c3f656dc1
2012-03-15 16:20:51 +00:00
paulc 25b49afb9c Added support for holding in memory and retrieving events from startup or arbitrary sources.
git-svn-id: http://yate.null.ro/svn/yate/trunk@4887 acf43c95-373e-0410-b603-e72c3f656dc1
2012-02-10 13:59:36 +00:00
paulc 17a9bdb3e7 Ignore by default the SIGALRM signal, sleep() should install its own handler when needed.
Avoids unexpected exit by spurious SIGALRM that can happen on some flawed operating systems.


git-svn-id: http://yate.null.ro/svn/yate/trunk@4831 acf43c95-373e-0410-b603-e72c3f656dc1
2012-02-04 09:33:09 +00:00
paulc dc7a8fd917 Do not display or TAB complete the module unload and reload commands if unloading is disabled.
Made the module help messages const.


git-svn-id: http://yate.null.ro/svn/yate/trunk@4820 acf43c95-373e-0410-b603-e72c3f656dc1
2012-01-25 13:24:11 +00:00
paulc 775e67ecec Support timestamping logs in local timezone format.
git-svn-id: http://yate.null.ro/svn/yate/trunk@4684 acf43c95-373e-0410-b603-e72c3f656dc1
2011-11-09 12:41:00 +00:00
paulc ba66ef045b Added marker in Engine for runtime analyzers like callgrind to start collecting data.
git-svn-id: http://yate.null.ro/svn/yate/trunk@4671 acf43c95-373e-0410-b603-e72c3f656dc1
2011-11-03 14:40:58 +00:00
paulc 152d0fb013 Check the number of plugins still loaded at shutdown, newer glibc sucks badly!
Warn if at shutdown there are mutexes locked or plugins loaded.


git-svn-id: http://yate.null.ro/svn/yate/trunk@4587 acf43c95-373e-0410-b603-e72c3f656dc1
2011-09-02 18:06:56 +00:00
paulc 28b0ffef9f The supervisor keeps the last child termination signal, adds it to next instance's engine status and parameters.
When the child was terminated by watchdog report SIGCHLD.


git-svn-id: http://yate.null.ro/svn/yate/trunk@4444 acf43c95-373e-0410-b603-e72c3f656dc1
2011-06-07 14:45:09 +00:00
paulc ca0ba28f91 Add the "workpath" to the Engine parameters so the current working directory can be found at runtime.
git-svn-id: http://yate.null.ro/svn/yate/trunk@4223 acf43c95-373e-0410-b603-e72c3f656dc1
2011-03-28 13:32:24 +00:00
paulc 497fdc29ea Report the various paths in engine status detail.
git-svn-id: http://yate.null.ro/svn/yate/trunk@4215 acf43c95-373e-0410-b603-e72c3f656dc1
2011-03-24 19:36:53 +00:00
paulc 4bc4db8ee7 Allow Engine::loadPluginDir(), Engine::extraPath() and yate -x to load a single module file, not an entire directory.
git-svn-id: http://yate.null.ro/svn/yate/trunk@4211 acf43c95-373e-0410-b603-e72c3f656dc1
2011-03-24 13:56:10 +00:00
paulc b94f4c4239 Moved DebugEnabler and name from Module to Plugin, made name mandatory.
Added API and command to reload configuration of a single plugin.


git-svn-id: http://yate.null.ro/svn/yate/trunk@4203 acf43c95-373e-0410-b603-e72c3f656dc1
2011-03-23 16:26:25 +00:00
paulc e73be17873 Replace engine parameters in the path of modules loaded from [preload] or [postload] sections.
This allows using ${modulepath} and ${modsuffix} so an absolute path is no longer required.


git-svn-id: http://yate.null.ro/svn/yate/trunk@4153 acf43c95-373e-0410-b603-e72c3f656dc1
2011-03-03 19:44:21 +00:00
paulc 49eaf733db Added information to debug problems in dynamic modules unloading.
git-svn-id: http://yate.null.ro/svn/yate/trunk@4093 acf43c95-373e-0410-b603-e72c3f656dc1
2011-02-03 15:30:50 +00:00
andrei bef3d8f44d Added support for CPU loading notification, and engine call congestion level update, based on CPU loading.
git-svn-id: http://yate.null.ro/svn/yate/trunk@3905 acf43c95-373e-0410-b603-e72c3f656dc1
2010-12-03 16:02:11 +00:00
paulc 0883e02e29 Added API and -Dd command line parameter to disable taking the global mutex when (un)locking a Mutex or Semaphore.
This provides better performance and reduces mutex contention on expense of some thread safety and ease of debugging.


git-svn-id: http://yate.null.ro/svn/yate/trunk@3801 acf43c95-373e-0410-b603-e72c3f656dc1
2010-11-09 19:52:51 +00:00
paulc 644065b54f Add O_LARGEFILE to the log file flags to allow it to grow more than 2GB on systems that support it.
Apart from the initial O_APPEND the log file is never seek()ed anyway.


git-svn-id: http://yate.null.ro/svn/yate/trunk@3705 acf43c95-373e-0410-b603-e72c3f656dc1
2010-10-11 11:00:35 +00:00
paulc 91ca986d14 Added a broadcast flag to class Message so it can continue dispatching even if one of the handlers returned true.
Use the broadcast flag in the messages emitted by the engine.


git-svn-id: http://yate.null.ro/svn/yate/trunk@3384 acf43c95-373e-0410-b603-e72c3f656dc1
2010-06-16 11:42:52 +00:00
paulc a6a00f9660 Added an engine.stop message that modules can use to keep engine running while cleaning up.
The engine emits engine.stop every second (but at most 5 times) and shuts down only if the message returned false.


git-svn-id: http://yate.null.ro/svn/yate/trunk@3381 acf43c95-373e-0410-b603-e72c3f656dc1
2010-06-16 09:05:08 +00:00
paulc 65c34956b5 Engine improvments by Allan Sandfeld Jensen: add the "nodename" parameter to engine generated messages.
git-svn-id: http://yate.null.ro/svn/yate/trunk@3380 acf43c95-373e-0410-b603-e72c3f656dc1
2010-06-16 08:46:47 +00:00
paulc a5a06cb5ad Supervisor improvments by Allan Sandfeld Jensen: display child's normal exit code, send SIGABRT to an unresponsive child if -C was used.
git-svn-id: http://yate.null.ro/svn/yate/trunk@3379 acf43c95-373e-0410-b603-e72c3f656dc1
2010-06-16 08:35:42 +00:00
paulc 63e386addb Include the node name in the engine status and the default rmanager greeting.
git-svn-id: http://yate.null.ro/svn/yate/trunk@3352 acf43c95-373e-0410-b603-e72c3f656dc1
2010-05-28 17:07:49 +00:00
paulc 8e07545b79 Double the system idle interval when running in client mode, make it adjustable from the config file.
git-svn-id: http://yate.null.ro/svn/yate/trunk@3163 acf43c95-373e-0410-b603-e72c3f656dc1
2010-03-31 09:36:58 +00:00
paulc f449fd6d51 Display the name of the shared object in SLib destructor to aid in debugging unload order.
git-svn-id: http://yate.null.ro/svn/yate/trunk@3045 acf43c95-373e-0410-b603-e72c3f656dc1
2010-01-30 20:33:11 +00:00
paulc 38be63b452 Allow overriding DLL_SUFFIX (.yate) and CFG_SUFFIX (.conf) at compile time.
git-svn-id: http://yate.null.ro/svn/yate/trunk@3042 acf43c95-373e-0410-b603-e72c3f656dc1
2010-01-27 16:44:19 +00:00
paulc 3d932d62c3 When started in interactive mode (not daemonified) shutdown on receiving SIGHUP since the console was closed.
git-svn-id: http://yate.null.ro/svn/yate/trunk@3040 acf43c95-373e-0410-b603-e72c3f656dc1
2010-01-27 12:07:51 +00:00
paulc 66b8ce7ca2 When explicitely signalling the supervisor to restart the child reset the run delay time back to minimum.
git-svn-id: http://yate.null.ro/svn/yate/trunk@3021 acf43c95-373e-0410-b603-e72c3f656dc1
2010-01-16 20:40:03 +00:00
oana 9554d2edb6 Added counter for number of restarts in supervised mode. Counter value added to Engine::runParams().
git-svn-id: http://yate.null.ro/svn/yate/trunk@3010 acf43c95-373e-0410-b603-e72c3f656dc1
2010-01-07 12:11:09 +00:00
paulc 1d9f358e7f Abort further module loading and initialization if engine is exiting.
git-svn-id: http://yate.null.ro/svn/yate/trunk@3000 acf43c95-373e-0410-b603-e72c3f656dc1
2009-12-28 13:20:07 +00:00
paulc 966a1201b9 Added possibility to repeat the -Dm option to halve the mutex maximum wait time.
git-svn-id: http://yate.null.ro/svn/yate/trunk@2982 acf43c95-373e-0410-b603-e72c3f656dc1
2009-12-10 11:20:50 +00:00
paulc a2812051f2 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://yate.null.ro/svn/yate/trunk@2761 acf43c95-373e-0410-b603-e72c3f656dc1
2009-07-22 12:57:14 +00:00
paulc 371c004e61 Allow server command line options when running in ClientProxy mode.
git-svn-id: http://yate.null.ro/svn/yate/trunk@2760 acf43c95-373e-0410-b603-e72c3f656dc1
2009-07-14 18:47:06 +00:00
paulc fe9c1c1c98 Added a ClientProxy engine run mode for clients with no local UI.
git-svn-id: http://yate.null.ro/svn/yate/trunk@2759 acf43c95-373e-0410-b603-e72c3f656dc1
2009-07-14 15:49:20 +00:00
paulc f4b1496a46 Added an unified Thread::idle method, use it instead of arbitrary
sleeps.


git-svn-id: http://yate.null.ro/svn/yate/trunk@2737 acf43c95-373e-0410-b603-e72c3f656dc1
2009-06-24 16:47:29 +00:00
paulc 5499650213 Changed thread names to be uniform and easily readable.
git-svn-id: http://yate.null.ro/svn/yate/trunk@2733 acf43c95-373e-0410-b603-e72c3f656dc1
2009-06-22 14:48:26 +00:00
paulc c0eec08096 Make use of prctl() if available.
git-svn-id: http://yate.null.ro/svn/yate/trunk@2729 acf43c95-373e-0410-b603-e72c3f656dc1
2009-06-22 11:09:38 +00:00
paulc bad4b42a73 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://yate.null.ro/svn/yate/trunk@2722 acf43c95-373e-0410-b603-e72c3f656dc1
2009-06-18 17:44:48 +00:00
paulc a6a9d71e8f Allow skipping mutex operations until main() on platforms where mutexes
are unsafe in global object constructors.


git-svn-id: http://yate.null.ro/svn/yate/trunk@2721 acf43c95-373e-0410-b603-e72c3f656dc1
2009-06-18 12:21:23 +00:00
paulc 55df1c3620 Correctly provide a format string as we cannot guarantee the string content is printf safe.
git-svn-id: http://yate.null.ro/svn/yate/trunk@2682 acf43c95-373e-0410-b603-e72c3f656dc1
2009-06-04 14:01:17 +00:00