Commit Graph

183 Commits

Author SHA1 Message Date
paulc 8c082767d1 Added an optional user context pointer to expression evaluations.
git-svn-id: http://yate.null.ro/svn/yate/trunk@4808 acf43c95-373e-0410-b603-e72c3f656dc1
2012-01-17 18:11:45 +00:00
paulc 086966baac Constified ExpEvaluator::getPrecedence() as it should be.
git-svn-id: http://yate.null.ro/svn/yate/trunk@4805 acf43c95-373e-0410-b603-e72c3f656dc1
2012-01-16 12:17:26 +00:00
paulc 0b33420051 Made ExpEvaluator::popOne() static and public, it is really a helper method.
git-svn-id: http://yate.null.ro/svn/yate/trunk@4737 acf43c95-373e-0410-b603-e72c3f656dc1
2011-12-06 15:45:23 +00:00
paulc 7f45d34850 Constified ExpEvaluator methods used during evaluation stage.
git-svn-id: http://yate.null.ro/svn/yate/trunk@4687 acf43c95-373e-0410-b603-e72c3f656dc1
2011-11-10 14:18:47 +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 2351f08e2a Moved the debug timestamping to a separate method.
git-svn-id: http://yate.null.ro/svn/yate/trunk@4683 acf43c95-373e-0410-b603-e72c3f656dc1
2011-11-09 10:55:27 +00:00
paulc 30e8ae5eda Detect and use atomic integer operations for RefObject reference counter.
Note that GCC supports them on specific architectures, on some platforms -march=... must be set in CFLAGS.


git-svn-id: http://yate.null.ro/svn/yate/trunk@4682 acf43c95-373e-0410-b603-e72c3f656dc1
2011-11-07 17:10:32 +00:00
paulc a63d128d43 Removed some unused RefObject methods.
git-svn-id: http://yate.null.ro/svn/yate/trunk@4679 acf43c95-373e-0410-b603-e72c3f656dc1
2011-11-04 18:24:51 +00:00
paulc f04d08edb8 Fixed meaning of parameter: clump -> clamp.
git-svn-id: http://yate.null.ro/svn/yate/trunk@4563 acf43c95-373e-0410-b603-e72c3f656dc1
2011-08-23 15:47:01 +00:00
marian 57bff41ad4 String to integer conversion can now check the result against allowed min/max values. Use it in sip module.
git-svn-id: http://yate.null.ro/svn/yate/trunk@4562 acf43c95-373e-0410-b603-e72c3f656dc1
2011-08-23 15:14:28 +00:00
marian 0df2af8655 Removed unused function declarations.
git-svn-id: http://yate.null.ro/svn/yate/trunk@4560 acf43c95-373e-0410-b603-e72c3f656dc1
2011-08-23 09:57:52 +00:00
marian 12e6bd1f60 Added Resolver class to engine. Use it in jabber library.
git-svn-id: http://yate.null.ro/svn/yate/trunk@4548 acf43c95-373e-0410-b603-e72c3f656dc1
2011-08-19 13:04:53 +00:00
andrei 4a73251d1e Added setParams method for Socket.
Reimplement setParam method to set SCTP specific parameters.


git-svn-id: http://yate.null.ro/svn/yate/trunk@4483 acf43c95-373e-0410-b603-e72c3f656dc1
2011-07-12 14:07:57 +00:00
paulc 1ae0546b45 Added class for pseudo random number generation.
Replace library ::random() and ::rand() calls with shared Random method.


git-svn-id: http://yate.null.ro/svn/yate/trunk@4470 acf43c95-373e-0410-b603-e72c3f656dc1
2011-06-29 11:19:02 +00:00
marian 0e70320d89 Added method used to retrieve an Array's column list.
git-svn-id: http://yate.null.ro/svn/yate/trunk@4442 acf43c95-373e-0410-b603-e72c3f656dc1
2011-06-07 11:45:18 +00:00
marian 106713e359 Added missing storage class attribute to MutexPool class.
git-svn-id: http://yate.null.ro/svn/yate/trunk@4429 acf43c95-373e-0410-b603-e72c3f656dc1
2011-06-03 14:35:13 +00:00
paulc fa0269ba4f New YSTRING macro that creates an ad-hoc static const String to speed up comparations and conversions from literal strings.
On unsupported compilers the literal string is returned unchanged.


git-svn-id: http://yate.null.ro/svn/yate/trunk@4423 acf43c95-373e-0410-b603-e72c3f656dc1
2011-06-03 12:26:53 +00:00
paulc a6bb5eea55 Added methods to extract a fragment of a String up to a separator.
git-svn-id: http://yate.null.ro/svn/yate/trunk@4229 acf43c95-373e-0410-b603-e72c3f656dc1
2011-03-28 16:18:45 +00:00
paulc 7702fd0979 Added to NamedList::copySubParams() the option of not skipping over the matched prefix in parameter names.
git-svn-id: http://yate.null.ro/svn/yate/trunk@4191 acf43c95-373e-0410-b603-e72c3f656dc1
2011-03-17 19:46:26 +00:00
marian 5f0adc7c0e Added method used to check if a non blocking operation is in progress. Added method used to update the socket error when a non blocking operation completed.
git-svn-id: http://yate.null.ro/svn/yate/trunk@4148 acf43c95-373e-0410-b603-e72c3f656dc1
2011-03-02 14:29:05 +00:00
paulc 8700101f2c Added a fast unsafe iterator for parameters of NamedList.
git-svn-id: http://yate.null.ro/svn/yate/trunk@4124 acf43c95-373e-0410-b603-e72c3f656dc1
2011-02-23 10:06:00 +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 9107954c10 Added method to (re)assign a list to an iterator and a method to clear the iterator.
git-svn-id: http://yate.null.ro/svn/yate/trunk@3799 acf43c95-373e-0410-b603-e72c3f656dc1
2010-11-05 17:25:29 +00:00
paulc fd39111d4f Added static method to check at runtime if Socket::select() is efficient.
Use select() on the MGCP reader socket if it worths.


git-svn-id: http://yate.null.ro/svn/yate/trunk@3798 acf43c95-373e-0410-b603-e72c3f656dc1
2010-11-05 16:08:11 +00:00
marian 76bf65c908 Added resize method used to re-alloc a DataBlock if it doesn't have a required length.
git-svn-id: http://yate.null.ro/svn/yate/trunk@3762 acf43c95-373e-0410-b603-e72c3f656dc1
2010-11-02 08:54:58 +00:00
paulc d6dc35ac2f Fixed a compile bug on platforms where a pointer does not fit in an int.
git-svn-id: http://yate.null.ro/svn/yate/trunk@3761 acf43c95-373e-0410-b603-e72c3f656dc1
2010-11-01 20:57:15 +00:00
marian be61cac29b Added MutexPool class implementing a fixed size array of mutexes. Replaced the global mutex protecting the RefObject counter changes with a mutex pool.
git-svn-id: http://yate.null.ro/svn/yate/trunk@3760 acf43c95-373e-0410-b603-e72c3f656dc1
2010-11-01 14:54:53 +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 09144d722d Added a new debug level DebugConf with text CONF for reporting configuration problems.
Limit the minimum debug level so CONF and GOON are always visible besides FAIL.


git-svn-id: http://yate.null.ro/svn/yate/trunk@3680 acf43c95-373e-0410-b603-e72c3f656dc1
2010-09-29 15:28:27 +00:00
paulc 266bf4cf0f Allow a circular offset of the items in a ListIterator so all elements are iterated but starting with a specific one.
git-svn-id: http://yate.null.ro/svn/yate/trunk@3616 acf43c95-373e-0410-b603-e72c3f656dc1
2010-09-01 07:50:57 +00:00
paulc 937e729c19 Fixed the YOBJECT macro evaluating twice the pointer by using a static helper method of GenObject.
Fixed the way linksets keep links referenced so they clean up properly.


git-svn-id: http://yate.null.ro/svn/yate/trunk@3504 acf43c95-373e-0410-b603-e72c3f656dc1
2010-08-24 12:27:40 +00:00
marian 2518fbfe8c Added abstract Compressor class for data (de)compression.
git-svn-id: http://yate.null.ro/svn/yate/trunk@3423 acf43c95-373e-0410-b603-e72c3f656dc1
2010-07-09 10:20:08 +00:00
paulc 1779a3b154 Made the private pointer of Regexp mutable so compile() and matches() can be made const.
Part of a patch by Allan Sandfeld Jensen.


git-svn-id: http://yate.null.ro/svn/yate/trunk@3390 acf43c95-373e-0410-b603-e72c3f656dc1
2010-06-17 11:36:52 +00:00
paulc de974962ac Added a YNOCOPY macro that declares private inaccessible assignment operator and copy constructor to prevent using the compiler generated ones.
Fixed a bug exposed by this change.


git-svn-id: http://yate.null.ro/svn/yate/trunk@3375 acf43c95-373e-0410-b603-e72c3f656dc1
2010-06-11 15:46:06 +00:00
paulc d95cb2fec6 Spelling cleanup of a very common error: Retrive -> Retrieve
git-svn-id: http://yate.null.ro/svn/yate/trunk@3371 acf43c95-373e-0410-b603-e72c3f656dc1
2010-06-11 11:25:10 +00:00
paulc dda44fe281 Made a lot of constructors explicit to prevent undesirable automatic conversions.
Fixed two undesirable automatic conversions exposed by this change.


git-svn-id: http://yate.null.ro/svn/yate/trunk@3366 acf43c95-373e-0410-b603-e72c3f656dc1
2010-06-08 15:25:05 +00:00
paulc 64dae801eb Made possible to automatically skip adding an empty value to a NamedList.
git-svn-id: http://yate.null.ro/svn/yate/trunk@3281 acf43c95-373e-0410-b603-e72c3f656dc1
2010-05-04 10:35:52 +00:00
paulc c8254ab211 Added assignment operator for NamedList.
git-svn-id: http://yate.null.ro/svn/yate/trunk@3278 acf43c95-373e-0410-b603-e72c3f656dc1
2010-05-04 10:14:59 +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
oana 51b082375f Yate has been ported on Mac OS X.
git-svn-id: http://yate.null.ro/svn/yate/trunk@3153 acf43c95-373e-0410-b603-e72c3f656dc1
2010-03-30 11:49:43 +00:00
marian 2682cdb12e A list parameter can now be removed by pointer.
git-svn-id: http://yate.null.ro/svn/yate/trunk@3089 acf43c95-373e-0410-b603-e72c3f656dc1
2010-02-18 12:59:50 +00:00
paulc 9eccfa1130 Fixed building in Windows, added sigtransport to build and installer.
git-svn-id: http://yate.null.ro/svn/yate/trunk@3069 acf43c95-373e-0410-b603-e72c3f656dc1
2010-02-04 12:50:06 +00:00
paulc a2fb02ff9e Added method to set the desired SCTP protocol payload identification (PPID).
git-svn-id: http://yate.null.ro/svn/yate/trunk@3066 acf43c95-373e-0410-b603-e72c3f656dc1
2010-02-04 01:59:27 +00:00
andrei e85bb9b262 Added suport for abstract SCTP Socket
git-svn-id: http://yate.null.ro/svn/yate/trunk@3057 acf43c95-373e-0410-b603-e72c3f656dc1
2010-02-02 14:21:02 +00:00
paulc f8311873ee Added a set of classes for evaluating C or SQL style expressions.
git-svn-id: http://yate.null.ro/svn/yate/trunk@3055 acf43c95-373e-0410-b603-e72c3f656dc1
2010-02-01 20:53:47 +00:00
paulc 8ed8bd3095 Added method to retrieve the name of the Thread currently owning a Mutex.
git-svn-id: http://yate.null.ro/svn/yate/trunk@3022 acf43c95-373e-0410-b603-e72c3f656dc1
2010-01-16 20:42:25 +00:00
paulc 749f559c9c Made more Socket methods virtual to allow implementing non kernel-based sockets.
Removed SCTP specific methods, they will go in a separate class.


git-svn-id: http://yate.null.ro/svn/yate/trunk@2984 acf43c95-373e-0410-b603-e72c3f656dc1
2009-12-14 16:37:08 +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 3a41506f48 Fixed a missing parameter in Lock2::lock() spotted by Allan. Thanks!
git-svn-id: http://yate.null.ro/svn/yate/trunk@2933 acf43c95-373e-0410-b603-e72c3f656dc1
2009-11-11 20:37:27 +00:00
paulc 655783fb6b String::uriEscape() takes an extra optional parameter with characters that should not be escaped, for specific cases when a protocol makes some characters unreserved.
git-svn-id: http://yate.null.ro/svn/yate/trunk@2816 acf43c95-373e-0410-b603-e72c3f656dc1
2009-09-01 14:32:00 +00:00