Commit Graph

2154 Commits

Author SHA1 Message Date
Michael Friedrich a07600a469 Fix missing lock in ConfigUpdateHandler() 2014-12-01 13:19:55 +01:00
Gunnar Beutner 1c07f5111a Fix a memory leak in the ReadLineContext class
fixes #7602
2014-12-01 10:36:38 +01:00
Gunnar Beutner d19821c900 Properly reset the ThreadPool status in Stop
refs #7822
2014-11-28 11:32:37 +01:00
Gunnar Beutner b5b1be95a2 Make the config lexer return an error for unterminated string literals
fixes #7808
2014-11-28 06:49:06 +01:00
Gunnar Beutner ab63fca3d5 Make the config parser thread-safe
fixes #7822
2014-11-28 06:48:27 +01:00
Gunnar Beutner b61f803d60 Show source line information for the "repl" command
refs #7805
2014-11-28 06:29:38 +01:00
Michael Friedrich 6332921fb6 Cli: Ensure that repository path is created on 'node add' command
fixes #7743
2014-11-27 18:15:14 +01:00
Gunnar Beutner 9dfa3d22d4 Implement support for arrays in command arguments
fixes #6709
2014-11-27 13:24:07 +01:00
Gunnar Beutner e05cd3144f Fix incorrect operators in GelfWriter::NotificationToUserHandler
fixes #7866
2014-11-27 09:40:27 +01:00
Gunnar Beutner a8b7710800 Fix crash in CreateCert
fixes #7862
2014-11-27 09:35:24 +01:00
Gunnar Beutner 358d91e912 Remove the __parent field in the DynamicObject class
refs #7748
2014-11-27 06:32:12 +01:00
Gunnar Beutner cee13fbec0 Implement the %, ^, %=, ^=, &= and |= operators
fixes #7813
2014-11-25 17:16:34 +01:00
Gunnar Beutner 1e5751c540 Build fix for GCC
refs #7822
2014-11-25 12:36:13 +01:00
Gunnar Beutner c220a99f2d Implicitly convert Number argument to string for operator +
fixes #7823
2014-11-25 12:33:08 +01:00
Gunnar Beutner 31605402ea Move the parser's global variables to the ConfigCompiler class
refs #7822
2014-11-25 09:40:32 +01:00
Gunnar Beutner 9281f82ba3 Fix parser problem with missing new-lines
refs #7822
2014-11-25 08:59:55 +01:00
Gunnar Beutner c5839b91aa Use MakeLiteral instead of 'new LiteralExpression'
refs #7822
2014-11-25 08:44:47 +01:00
Gunnar Beutner 03a4452343 Remove the global m_Expressions variable
refs #7822
2014-11-25 08:42:27 +01:00
Gunnar Beutner ed81cb0f2c Make SetExpression check whether the LHS is null
fixes #7814
2014-11-24 18:26:27 +01:00
Gunnar Beutner fddead5303 Fix some compiler warnings
fixes #7826
2014-11-24 18:25:08 +01:00
Gunnar Beutner 7e13f7597f Disallow - in identifiers
fixes #7830
2014-11-24 16:54:06 +01:00
Gunnar Beutner 2ec499be17 Implement the __if and __else keywords
fixes #7824
2014-11-24 09:56:28 +01:00
Gunnar Beutner 47ba5eeddd Change parameter type for include and include_recursive to T_STRING
fixes #7802
2014-11-24 07:18:37 +01:00
Gunnar Beutner 4d125edc0d Move the cast functions into libbase
fixes #7807
2014-11-24 07:09:51 +01:00
Gunnar Beutner a1b231e069 Remove unused parameter
refs #7805
2014-11-24 01:05:19 +01:00
Gunnar Beutner ca28a51373 Remove unused code in the ThinMutex class
refs #7805
2014-11-24 01:01:39 +01:00
Gunnar Beutner d3a6277fec Fix the __return keyword
fixes #7811
2014-11-24 00:07:29 +01:00
Gunnar Beutner c29d6a99ac Fix unary minus operator
fixes #7815
2014-11-23 23:19:46 +01:00
Gunnar Beutner e93595c006 Fix scoping for __for
fixes #7809
2014-11-23 20:43:50 +01:00
Gunnar Beutner 75d90d5963 Fix a crash in the "repl" command
refs #7805
2014-11-23 19:13:42 +01:00
Gunnar Beutner d366dd8e30 Fix the reduce/reduce conflicts
refs #7800
2014-11-23 15:25:25 +01:00
Gunnar Beutner 14c94fabde Add missing return value for ReplCommand::Run
refs #7805
2014-11-23 13:41:45 +01:00
Gunnar Beutner fc1d872df8 Add color tags to the repl command
refs #7805
2014-11-23 12:38:16 +01:00
Gunnar Beutner 8d0ddb7c8c Implement more unit tests
refs #7805
2014-11-23 12:35:13 +01:00
Gunnar Beutner e302158631 Remove debug code
refs #7800
2014-11-23 12:08:29 +01:00
Gunnar Beutner 9a49e085cd Fix some more shift/reduce conflicts
refs #7800
2014-11-23 12:06:47 +01:00
Gunnar Beutner 81acd34f52 Implement unit tests for the config parser
refs #7805
2014-11-23 09:54:08 +01:00
Gunnar Beutner af759ff6ab Fix incorrect result for the !in operator
fixes #7806
2014-11-23 09:54:08 +01:00
Gunnar Beutner 16cf274efc Improve test coverage for the array class 2014-11-23 09:50:11 +01:00
Gunnar Beutner 9bdc7e8a4e Fix the shift/reduce conflicts in the parser
fixes #7800
2014-11-22 23:02:12 +01:00
Gunnar Beutner 037b886584 Remove the C++ code generator
refs #7699
2014-11-22 19:24:13 +01:00
Gunnar Beutner f5766f9118 Refactor the stack frame handling for scripts
fixes #7748
2014-11-22 19:24:03 +01:00
Gunnar Beutner 307db672c1 Fix initialization bug for the Notification class
refs #7780
2014-11-22 16:43:39 +01:00
Gunnar Beutner 8611682cdb Fix initialization for the ApiListener class
fixes #7780
2014-11-21 23:23:31 +01:00
Gunnar Beutner 7fc5af6aff Fix initialization bug for the Endpoint class
refs #7780
2014-11-21 21:01:44 +01:00
Gunnar Beutner 0ab61291c6 Make sure source information is always available for error messages
refs #7699
2014-11-21 18:35:59 +01:00
Gunnar Beutner 334e61037a Split DynamicObject::OnConfigLoaded into two separate events
refs #7780
2014-11-21 18:31:37 +01:00
Gunnar Beutner 764d72a61a Improve error messages for the config parser
refs #7699
2014-11-21 09:07:08 +01:00
Gunnar Beutner abe583f7d9 Fix some incorrectly generated code
refs #7699
2014-11-21 07:37:20 +01:00
Gunnar Beutner aef7c487cf Build fix
refs #7699
2014-11-20 22:54:29 +01:00
Gunnar Beutner 8e265b7b7f Implement a C++ code generator for libconfig
fixes #7699
fixes #7704
fixes #7706
2014-11-20 21:53:32 +01:00
Gunnar Beutner 0078e00c13 Refactor apply/object rules
fixes #7700
2014-11-20 21:29:50 +01:00
Gunnar Beutner 80e6854ce6 Fix incorrect return type for ScriptSignal::Invoke
refs #7744
2014-11-20 19:43:50 +01:00
Gunnar Beutner 06e72d134b Fix incorrect error message for localhost (in "node update-config")
fixes #7754
2014-11-20 14:54:44 +01:00
Gunnar Beutner 2d53e000c8 Refactor the config validator so that it doesn't require serialized objects
refs #7701
2014-11-20 13:28:21 +01:00
Gunnar Beutner 5321bc4643 Don't validate strings in the JSON parser
fixes #7730
2014-11-20 10:09:13 +01:00
Gunnar Beutner 6cadde82bd Avoid rebuilding libbase when the version number changes
fixes #7647
2014-11-20 10:02:34 +01:00
Gunnar Beutner f84cc8de39 Implement support for signals
fixes #7744
2014-11-20 06:54:48 +01:00
Gunnar Beutner cbaece61e7 Fix another incorrect argument name
refs #7726
2014-11-18 16:48:58 +01:00
Gunnar Beutner d532300cba Add an option that hides CLI commands
fixes #7702
2014-11-17 18:42:22 +01:00
Gunnar Beutner ea729b2b6c Clean up the DebugHint class 2014-11-17 14:52:08 +01:00
Gunnar Beutner 77b746841a Provide a specialized function overload for Convert::ToDouble(const Value&) 2014-11-17 14:00:13 +01:00
Gunnar Beutner 1d16875b95 Comment out InitializeProcThreadAttributeList (for now)
fixes #7681
2014-11-17 09:45:35 +01:00
Gunnar Beutner 9386a58bf2 Implement an experimental variable to limit the number of threads 2014-11-16 13:14:42 +01:00
Gunnar Beutner 3bb79715fa Fix: Names for nested objects are evaluated at the wrong time
fixes #7689
2014-11-15 15:57:56 +01:00
Gunnar Beutner bae96ca524 Fix "object list" output for empty fields 2014-11-15 12:19:29 +01:00
Gunnar Beutner d8e1943671 Fix missing debug info for nested dictionaries
fixes #7688
2014-11-15 12:17:59 +01:00
Gunnar Beutner 814589ac17 Use Array::Contains in InExpression/NotInExpression 2014-11-15 08:22:32 +01:00
Michael Friedrich f73d69691b Make sure that notified users are stored in state file
refs #7579
2014-11-14 18:11:58 +01:00
Gunnar Beutner 6ca188e090 Merge branch 'larsengels-master'
fixes #7680
2014-11-14 10:44:14 +01:00
Lars Engels b81bb67910 Add support to conditionally use MysSQL and/or PostgreSQL
refs #7680

Signed-off-by: Gunnar Beutner <gunnar.beutner@netways.de>
2014-11-14 10:43:52 +01:00
Gunnar Beutner 79fb24cedb Fix null pointer dereference while parsing the config 2014-11-13 23:25:52 +01:00
Gunnar Beutner 12a41795de Add default parameters to the AST classes 2014-11-13 23:25:31 +01:00
Gunnar Beutner 0324cbff7c Fix crash in StreamLogger::~StreamLogger 2014-11-13 20:12:23 +01:00
Michael Friedrich aad4b48812 Drop invalid headers from libhello debug code
refs #7559
2014-11-13 20:09:36 +01:00
Gunnar Beutner 8e4148d33c Use Application::Exit to implement the exit() script function 2014-11-13 15:59:40 +01:00
Gunnar Beutner bb04f66b25 Remove debug code
refs #7559
2014-11-13 15:53:15 +01:00
Gunnar Beutner 7bcca244e7 Remove some more redundant code from "node wizard"
refs #7656
2014-11-13 15:32:41 +01:00
Gunnar Beutner 37242ef609 Fix handling of the CA certificate in "node wizard"
fixes #7656
2014-11-13 15:25:15 +01:00
Gunnar Beutner 7321e45abc Implement support for executing remote commands
fixes #7559
2014-11-13 14:54:55 +01:00
Gunnar Beutner f20d9010c0 Fix deadlock in ThreadPool::Stop 2014-11-13 10:00:49 +01:00
Gunnar Beutner 02fef3f84a Remove unions from the DebugInfo class 2014-11-13 09:02:43 +01:00
Gunnar Beutner e692ca16cd Add missing Stop call in the Logger class
fixes #7652
2014-11-13 09:02:23 +01:00
Gunnar Beutner a14928ec10 Improve error messages for the Process class 2014-11-13 08:53:12 +01:00
Gunnar Beutner 6ef4e313d9 Remove obsolete mutex profiling code
refs #7622
2014-11-13 06:13:18 +01:00
Gunnar Beutner f592a13481 Make sure all threads are dead before calling fork()
fixes #7653
2014-11-12 21:27:36 +01:00
Gunnar Beutner e5bd573756 Implement the __get_object function 2014-11-12 19:08:36 +01:00
Michael Friedrich 43267d7759 GelfWriter: Change _state to human-readable string
refs #7619
2014-11-12 17:58:13 +01:00
Michael Friedrich 07c9701b83 GelfWriter: Add missing fields, fix notification state
refs #7619
2014-11-12 17:48:48 +01:00
Gunnar Beutner 4f417b4912 Add release barrier in ObjectLock::Unlock
refs #7648
2014-11-12 13:18:34 +01:00
Gunnar Beutner 1c0102ff9b Fix incorrect field name
refs #7648
2014-11-12 12:46:33 +01:00
Gunnar Beutner a2c5887e51 Fix crash when daemonizing Icinga
refs #7648
2014-11-12 12:44:14 +01:00
Gunnar Beutner c5a5d1833b Add missing barriers for Object::m_LockOwner
refs #7648
2014-11-12 12:32:14 +01:00
Gunnar Beutner dfd24e6359 Fix _DEBUG define on *NIX 2014-11-12 11:34:59 +01:00
Gunnar Beutner b3aa2eb0c8 Fix validator for dependency filters
fixes #7650
2014-11-12 09:40:45 +01:00
Gunnar Beutner 02c559eff9 Fix crash in the unit tests
fixes #7648
2014-11-12 09:33:13 +01:00
Gunnar Beutner e4bfb5f922 Fix static initializers for Utility::AddDeferredInitializer
fixes #7646
2014-11-12 08:00:56 +01:00
Gunnar Beutner 83a2e4c350 Allow thin mutex calls to be inlined
refs #7622
2014-11-12 06:50:52 +01:00
Gunnar Beutner 02a7d97b17 Allow locks to be inlined
refs #7622
2014-11-12 06:33:20 +01:00
Gunnar Beutner ecd31b86ad Remove debug code
refs #7622
2014-11-12 00:06:51 +01:00
Gunnar Beutner 2d7ce62438 Add missing default arguments
refs #7622
2014-11-11 23:48:17 +01:00
Gunnar Beutner ca75584d88 Allow String class members to be inlined 2014-11-11 23:46:06 +01:00
Gunnar Beutner 36d108528f Allow Value class members to be inlined 2014-11-11 23:28:53 +01:00
Gunnar Beutner ee980a788b Clean up the code a bit 2014-11-11 23:06:47 +01:00
Gunnar Beutner 9932f60522 Fix _DEBUG define
refs #7634
2014-11-11 16:40:27 +01:00
Gunnar Beutner e52b2b6509 Fix incorrect IDO queries
fixes #7634
2014-11-11 16:36:20 +01:00
Gunnar Beutner a5a869f390 Enable ASSERT() for *NIX debug builds
refs #7634
2014-11-11 16:36:20 +01:00
Michael Friedrich 5ac03849d2 GelfWriter: Add 'source' configuration attribute
refs #7619
2014-11-11 14:16:48 +01:00
Michael Friedrich 3211756656 Rebase against master changes, fix indent
refs #7619
2014-11-11 14:16:48 +01:00
Michael Friedrich 721483e0b2 Add a type validafor for GelfWriter
refs #7619
2014-11-11 14:16:48 +01:00
Marius Sturm 6055cd194a Add GelfWriter
refs #7619
2014-11-11 14:16:48 +01:00
Gunnar Beutner 11710ef683 Fix static initializers
refs #7634
2014-11-11 13:24:44 +01:00
Jean Flach 0ba2efe97f Fix some Ido initialization bugs
refs #7625
2014-11-11 10:04:37 +01:00
Gunnar Beutner 4a8effa673 Remove unused include
refs #7622
2014-11-11 05:46:25 +01:00
Gunnar Beutner 65be09215f Avoid unnecessary type lookups
refs #7622
2014-11-10 20:07:07 +01:00
Gunnar Beutner 4df3fd4451 Add missing category type for some IDO queries
fixes #7625
2014-11-10 13:21:33 +01:00
Gunnar Beutner 3cc79a6005 Optimize apply/object filters
refs #7622
2014-11-10 12:06:29 +01:00
Gunnar Beutner ec109b04dd Refactor the AST
refs #7622
2014-11-10 12:06:25 +01:00
Gunnar Beutner e3c5063aff Remove unused fields from the ObjectRule class
refs #7622
2014-11-10 09:52:27 +01:00
Michael Friedrich 885e7704a2 Only notify users on recovery who have been notified on not-OK before
Also ensure that type NotificationRecovery always
passes the state filter (missing `OK` is totally fine).

Also fix that notification delays set the correct
next notification time to the begin time window.

fixes #7579
fixes #7623
fixes #6547
2014-11-09 19:47:24 +01:00
Gunnar Beutner 478f03b49a Replace boost::shared_ptr with boost::intrusive_ptr
refs #7622
2014-11-09 16:54:41 +01:00
Gunnar Beutner 187d443447 Implement support for thin mutexes
refs #7622
2014-11-09 16:54:33 +01:00
Gunnar Beutner 684ad2641a Fix GetInstance() methods for the DbType and config validator registry classes 2014-11-09 13:06:25 +01:00
Gunnar Beutner 4bb535fc47 Discard unnamed config items as early as possible 2014-11-09 04:17:34 +01:00
Michael Friedrich a362b5c14c Fix Zone::IsGlobal() 2014-11-08 22:57:09 +01:00
Gunnar Beutner e1287cb7a5 Fix: Adding/Removing multiple services fails
fixes #7616
2014-11-08 15:17:00 +01:00
Gunnar Beutner fd8eed93e0 Remove unnecessary use of boost::ref() 2014-11-08 14:54:36 +01:00
Gunnar Beutner 25ee5dd1fd Fix problem with missing config items 2014-11-08 14:24:17 +01:00
Gunnar Beutner e1c95d4fa0 Improve config compiler's memory usage 2014-11-08 13:21:51 +01:00
Gunnar Beutner ade12dc27a Remove unused attributes 2014-11-07 21:43:00 +01:00
Gunnar Beutner 9e2aa4c5ed Fix problem with unresolved symbols
refs #7561
2014-11-07 18:37:28 +01:00
Gunnar Beutner 266b1754c7 Speed up type lookups
refs #7561
2014-11-07 12:39:32 +01:00
Gunnar Beutner 3cf08ad050 Properly report errors when CreateProcess() fails
fixes #7599
2014-11-07 10:01:44 +01:00
Gunnar Beutner 60114d4b5d Fix crash in CompatUtility::GetCheckableCommandArgs
refs #7599
2014-11-07 09:26:44 +01:00
Gunnar Beutner f69f7d61f2 Fix variable scope for object rules 2014-11-06 19:26:44 +01:00
Jean Flach fd0436689c windows build fix
refs #7597
2014-11-06 15:13:44 +01:00
Gunnar Beutner 61e090595e Fix build problem on Windows
fixes #7597
2014-11-06 14:21:22 +01:00
Gunnar Beutner 064407d3c9 Fix dynamic_cast problem
fixes #7586
2014-11-06 09:05:12 +01:00
Gunnar Beutner 8bbb2bfb7b Fix compiler warnings for the lexers 2014-11-06 06:23:45 +01:00
Michael Friedrich 5b5f92e57b Cli: Fix missing single quote in 'object list' output
fixes #7584
2014-11-05 18:23:40 +01:00
Gunnar Beutner 9e16e1d395 Remove some obsolete references to cJSON
refs #7452
2014-11-05 16:47:11 +01:00
Gunnar Beutner cfc418c9eb Fix operator shared_ptr<T> for the Value class
fixes #7586
2014-11-05 16:09:22 +01:00
Gunnar Beutner 32b0429904 Fix templates field
fixes #7585
2014-11-05 15:40:13 +01:00
Gunnar Beutner 18d317faf9 Fix crash in ApiEvents::CheckResultAPIHandler
fixes #7577
2014-11-05 09:58:43 +01:00
Gunnar Beutner ad14ff6d6b Fix memory leak in the config parser
refs #7566
2014-11-05 09:29:15 +01:00
Gunnar Beutner 4eb37563b4 Improve memory usage for the config compiler 2014-11-05 08:55:00 +01:00
Michael Friedrich c4ba3f6691 StatusDataWriter: Encode custom attr arrays&dictionaries as json string
refs #7560
2014-11-04 18:08:26 +01:00
Michael Friedrich eeb6facdac Livestatus: Add 'cv_is_json' and encode CV arrays/dicts as json
refs #7560
2014-11-04 17:39:28 +01:00
Gunnar Beutner de080e4928 Fix incorrect field name
refs #7566
2014-11-04 15:24:57 +01:00
Gunnar Beutner c1cbe157db Allow strings as indexers
refs #7566
2014-11-04 15:22:10 +01:00