Commit Graph

523 Commits

Author SHA1 Message Date
Gunnar Beutner 3073200b53 Cleaned up #includes (Part 1). 2013-03-15 18:21:29 +01:00
Gunnar Beutner 4e765c58de Another windows build fix. 2013-03-15 13:53:50 +01:00
Gunnar Beutner b404798234 Implement support for Exception::GetLastStackTrace on OS X. 2013-03-15 13:44:45 +01:00
Gunnar Beutner 8d52535fad Windows build fix. 2013-03-15 13:39:53 +01:00
Gunnar Beutner 27e1d311de Fix dependencies for mkembedconfig. 2013-03-15 13:35:39 +01:00
Gunnar Beutner 6d5339574a Fix perfdata macros. 2013-03-15 13:30:30 +01:00
Gunnar Beutner 14c837a208 Fix crash in TimePeriod::UpdateRegion(). 2013-03-15 13:29:25 +01:00
Gunnar Beutner e683de5ab8 Build fix for libpython. 2013-03-15 13:29:02 +01:00
Gunnar Beutner fae83d2ef6 Fix symbol visibility issue for REGISTER_CONFIG_FRAGMENT(). 2013-03-15 12:27:03 +01:00
Gunnar Beutner 4d5e924bc6 Add mkembedconfig as a dependency for the .conf -> .cpp build step. 2013-03-15 11:56:30 +01:00
Gunnar Beutner 9a05e2b269 Windows build fix. 2013-03-15 11:52:10 +01:00
Gunnar Beutner ee46731f41 Fix --disable-shared
Fixes #3852
2013-03-15 11:21:16 +01:00
Gunnar Beutner 9ac731ba8e Change log level for some debug messages. 2013-03-15 11:18:56 +01:00
Gunnar Beutner 4e7c43c8c8 TimePeriod update function should return an array of time segments
Fixes #3857
2013-03-15 09:54:06 +01:00
Gunnar Beutner 0f9acdffbb Fix: Only take one work item from the event queue per iteration. 2013-03-15 09:10:57 +01:00
Gunnar Beutner 876519034c Build fix for OS X. 2013-03-15 09:07:50 +01:00
Gunnar Beutner 7c46bb4f7d Use 'explicit' for constructors. 2013-03-14 23:52:52 +01:00
Gunnar Beutner 49620ef0ed XNU build fixes. 2013-03-14 15:14:07 +01:00
Gunnar Beutner 77461e650a Fix invalid type in PythonLanguage::m_NativeMethodDef. 2013-03-14 14:12:57 +01:00
Gunnar Beutner 016a881634 Python: implement support for marshalling arrays
Fixes #3858
2013-03-14 14:06:07 +01:00
Gunnar Beutner 5b0a413f32 Implement array validation
Fixes #3701
2013-03-14 13:24:07 +01:00
Gunnar Beutner 1ef7399cea Remove support for anonymous dictionary items. 2013-03-14 12:40:02 +01:00
Gunnar Beutner 2a2e2ca4e6 Bug fix: missing lock for TimePeriod::PurgeSegments call. 2013-03-14 12:21:10 +01:00
Gunnar Beutner 07421751ad Implement config support for arrays. 2013-03-14 12:17:46 +01:00
Gunnar Beutner 58f0c863a6 Build fix for Clang. 2013-03-14 08:18:19 +01:00
Gunnar Beutner d99671ba0e Implement TimePeriod::RemoveSegment(). 2013-03-14 07:29:53 +01:00
Gunnar Beutner 442a2dbc7d Implement timeperiods. 2013-03-13 16:04:53 +01:00
Gunnar Beutner 67fe31c78b Fix type definitions (rename alias to display_name). 2013-03-13 11:25:38 +01:00
Gunnar Beutner 5b662b3c76 Fix: Deleting downtimes doesn't work
Fixes #3825
2013-03-12 22:49:11 +01:00
Gunnar Beutner 5608b3c0d3 Fix the REMOVE_SVC_ACKNOWLEDGEMENT command. 2013-03-12 22:00:35 +01:00
Gunnar Beutner 98ab009b91 Cleaned up VS project files. 2013-03-12 19:49:24 +01:00
Gunnar Beutner c594ee7c30 Fix compiler warnings on Windows. 2013-03-12 18:56:13 +01:00
Gunnar Beutner 98f7515eee Fix writing the PID file if there is no previous PID file. 2013-03-12 16:02:35 +01:00
Gunnar Beutner 5fcdc51e3c Windows build fix. 2013-03-12 15:35:51 +01:00
Gunnar Beutner 62cb4e14a6 Make mode variable const. 2013-03-12 14:50:40 +01:00
Gunnar Beutner 9ea0cb4353 Truncate the PID file before writing the new PID. 2013-03-12 14:06:59 +01:00
Gunnar Beutner fc337a51e7 Add missing default implementation for DynamicObject::Stop(). 2013-03-12 14:01:11 +01:00
Gunnar Beutner d7492ab823 Remove libpopen_noshell. 2013-03-12 14:01:01 +01:00
Gunnar Beutner 69a2842d4e Implement DynamicObject::Stop(). 2013-03-12 13:48:37 +01:00
Gunnar Beutner 3c363499bb Eliminate the Component class.
Fixes #3832
Fixes #3840
2013-03-12 13:45:54 +01:00
Gunnar Beutner 91c82263a5 Fix some deadlocks in the TlsStream class. 2013-03-12 11:56:14 +01:00
Gunnar Beutner 4b2d828b99 Refactor the init script and remove the -d option.
Fixes #3666
2013-03-12 11:48:45 +01:00
Gunnar Beutner 412a44e697 Windows build fix. 2013-03-11 14:08:55 +01:00
Gunnar Beutner d8edd98e41 Add more information to exceptions. 2013-03-11 13:47:17 +01:00
Gunnar Beutner 0029bc30b7 Fix null pointer dereference in ConfigItem::Commit(). 2013-03-11 13:07:21 +01:00
Gunnar Beutner 4bb808e0fa ConfigType: Use ConfigItem::IsAbstract() to check if items are abstract. 2013-03-11 13:05:32 +01:00
Gunnar Beutner 6f51230a79 Don't instantiate abstract objects.
Fixes #3669
2013-03-11 12:04:10 +01:00
Gunnar Beutner c728e85c8c Implement attribute filters. 2013-03-10 15:11:32 +01:00
Gunnar Beutner 98ba1424b5 Implement proper support for JSON arrays. 2013-03-10 09:08:59 +01:00
Gunnar Beutner a38263b3c8 Implement livestatus commands. 2013-03-10 05:10:51 +01:00
Gunnar Beutner 27505536f9 Add livestatus component. 2013-03-10 03:09:01 +01:00
Gunnar Beutner 375746d710 Fix deadlocks in the Socket/Stream classes. 2013-03-09 15:56:56 +01:00
Gunnar Beutner 5a861b0de0 Fix race condition in Process::WorkerThreadProc. 2013-03-09 15:41:07 +01:00
Gunnar Beutner bac7495f49 Check for invalid value type. 2013-03-09 12:57:26 +01:00
Gunnar Beutner 84fcf24fa3 Add missing return value. 2013-03-09 12:57:07 +01:00
Gunnar Beutner 56dc7c4e0a Add missing "*/". 2013-03-09 12:56:40 +01:00
Gunnar Beutner 9b44a5c35d Fixed incorrect macro name. 2013-03-09 12:53:04 +01:00
Gunnar Beutner cf4397873c Fix another deadlock. 2013-03-08 16:36:26 +01:00
Gunnar Beutner 4371649064 Fix deadlock when adding/removing acknowledgements. 2013-03-08 16:32:29 +01:00
Gunnar Beutner 16b0722cbc Added more templates. 2013-03-08 16:02:33 +01:00
Gunnar Beutner c7f9a78f4d Revert "Remove redundant check for valid task object."
This reverts commit 8337795ff7.
2013-03-08 14:56:23 +01:00
Gunnar Beutner 4668e458ce Update validator for services dictionary. 2013-03-08 14:44:03 +01:00
Gunnar Beutner fb82b73bc9 Fix: Set last state/state type before executing service checks. 2013-03-08 14:43:48 +01:00
Gunnar Beutner 8337795ff7 Remove redundant check for valid task object. 2013-03-08 14:43:28 +01:00
Gunnar Beutner 13436cb536 Catch exceptions in EventQueue::QueueThreadProc. 2013-03-08 14:43:07 +01:00
Gunnar Beutner 756d465ca9 Use TLS for last exception stack trace. 2013-03-08 14:42:41 +01:00
Gunnar Beutner cada2abeb3 Implement automated stacktraces for exceptions. 2013-03-07 19:44:39 +01:00
Gunnar Beutner e2416b5b54 Check return values of SymGetLineFromAddr64 and SymFromAddr. 2013-03-07 16:00:10 +01:00
Gunnar Beutner 4595e4ce5f Fixed retention timer interval 2013-03-07 15:19:26 +01:00
Gunnar Beutner e54604c0e3 *NIX build fix. 2013-03-07 15:16:01 +01:00
Gunnar Beutner fa3f01667f Implemented stacktrace support for Windows. 2013-03-07 15:00:26 +01:00
Gunnar Beutner 5a166f83d7 Move pidfile and command pipe to /var/run/icinga2 rather than /var/run
Fixes #3670
2013-03-07 12:23:43 +01:00
Gunnar Beutner 02be9010e7 Implemented LAST*STATE* macros. 2013-03-07 12:04:20 +01:00
Gunnar Beutner 68bd651195 Improve check latency. 2013-03-07 09:48:00 +01:00
Gunnar Beutner d2a27eb521 Fixed some more compiler warnings. 2013-03-07 09:47:51 +01:00
Gunnar Beutner 97dd87ab96 Fixed compiler warnings. 2013-03-07 08:14:55 +01:00
Gunnar Beutner 659fcf8fa3 Fix cppcheck warnings. 2013-03-06 15:41:13 +01:00
Gunnar Beutner 6f7b553acd Bugfixes for the *:Invalidate*Cache() calls. 2013-03-06 13:01:51 +01:00
Gunnar Beutner 70fa21dfbc Various bugfixes. 2013-03-06 11:04:20 +01:00
Gunnar Beutner be95f3171d Even more code refactoring. 2013-03-04 15:52:42 +01:00
Gunnar Beutner a6d26a2dc1 Windows build fix. 2013-03-02 14:21:13 +01:00
Gunnar Beutner 4cecbfa01e Fixed deadlock in ConfigItem::Commit(). 2013-03-02 14:11:12 +01:00
Gunnar Beutner 48485c5f26 More lock refactoring. Yay. 2013-03-02 09:07:47 +01:00
Gunnar Beutner 572a477da3 Refactored object locking code. 2013-03-01 12:07:52 +01:00
Gunnar Beutner 959b7fa16a Implement support for deserializing JSON arrays. 2013-02-28 14:06:30 +01:00
Gunnar Beutner 3a99842f90 Implement the PerfdataWriter class. 2013-02-28 11:45:47 +01:00
Gunnar Beutner 5228d7f10b Implemented compat support for users and user groups. 2013-02-28 10:50:20 +01:00
Gunnar Beutner b674d46557 Implemented the LONGDATETIME, SHORTDATETIME, DATE and TIME macros. 2013-02-28 10:27:33 +01:00
Gunnar Beutner 5300bf8473 Added missing object locks in the MacroProcessor class. 2013-02-28 10:27:20 +01:00
Gunnar Beutner ee4c8a5755 Fixed incorrect lock in Notification::BeginExecuteNotificationHelper(). 2013-02-28 10:26:53 +01:00
Gunnar Beutner cb907f4f3b Fix crash in Service::IsReachable(). 2013-02-28 10:26:33 +01:00
Gunnar Beutner e9d32eeada Implemented user groups. 2013-02-27 21:49:03 +01:00
Gunnar Beutner 6bf086dc91 Implemented notification_interval attribute for hosts. 2013-02-27 18:15:01 +01:00
Gunnar Beutner 39b0806778 Fixed reachability calculation for host checks. 2013-02-27 17:20:22 +01:00
Gunnar Beutner a960237139 Fixed recovery notifications (again). 2013-02-27 16:57:06 +01:00
Gunnar Beutner e98fd3e3eb Bug fixes for the new cache code. 2013-02-27 16:04:49 +01:00
Gunnar Beutner d666960fa0 Refactor the cache code... again. 2013-02-27 15:23:25 +01:00
Gunnar Beutner e9648f35bc Make the services/notifications caches thread safe.
Send notifications based on the notification_interval setting.
2013-02-27 12:44:51 +01:00
Gunnar Beutner 3a74316aab Fixed notifications for hard recoveries. 2013-02-27 06:52:13 +01:00
Gunnar Beutner 163f0a9f5c Implemented support for disabling notifications. 2013-02-26 12:37:25 +01:00
Gunnar Beutner f47e1991f2 External commands: Implemented some commands for host checks. 2013-02-26 11:18:03 +01:00
Gunnar Beutner 2189c1639c Fix deadlock in Service::BeginExecuteCheck(). 2013-02-26 10:58:59 +01:00
Gunnar Beutner 45f8bfb730 Checker: Use Ptrs rather than WeakPtrs.
Fixes #3732
2013-02-26 10:58:32 +01:00
Gunnar Beutner f027f1681b Windows build fix. 2013-02-26 10:57:44 +01:00
Gunnar Beutner 35c79a76c1 Make attribute lookups O(1). 2013-02-26 10:13:54 +01:00
Gunnar Beutner 0a0bb967a4 Make sure we don't block on write() while holding locks. 2013-02-24 12:47:24 +01:00
Gunnar Beutner d011f09f32 Windows build fixes. 2013-02-24 08:52:09 +01:00
Gunnar Beutner 022be22fa2 Added some missing files. 2013-02-24 08:27:00 +01:00
Gunnar Beutner 77affd3ad6 Implemented the User class. 2013-02-24 08:26:10 +01:00
Gunnar Beutner 2ef255b9f6 Fine-grained locks (WIP, Part 9). 2013-02-24 01:10:34 +01:00
Gunnar Beutner 404b1807e6 Removed PCH support (as it's clearly not working properly). 2013-02-22 08:12:43 +01:00
Gunnar Beutner 4306c6c07a Fine-grained locks (WIP, Part 8). 2013-02-21 16:12:50 +01:00
Gunnar Beutner 5e91f6c54d Fine-grained locks (WIP, Part 7). 2013-02-20 19:52:25 +01:00
Gunnar Beutner 997ca3a77a Fine-grained locks (WIP, Part 6). 2013-02-19 23:02:08 +01:00
Gunnar Beutner 1daeb8c010 Fine-grained locks (WIP, Part 5). 2013-02-19 12:17:31 +01:00
Gunnar Beutner ecc95b3dc0 Fine-grained locks (WIP, Part 4). 2013-02-19 07:26:52 +01:00
Gunnar Beutner 3dace35cf1 Fine-grained locks (WIP, Part 3). 2013-02-18 23:44:24 +01:00
Gunnar Beutner a4c7052a6e Fine-grained locks (WIP, Part 2). 2013-02-18 14:40:24 +01:00
Gunnar Beutner c63c28dd9c Fine-grained locks (WIP, Part 1). 2013-02-17 19:14:34 +01:00
Gunnar Beutner 8ca8486d5b Config: Implement here-document strings. 2013-02-16 22:49:13 +01:00
Gunnar Beutner c1db593b62 Implemented escape characters in the config lexer. 2013-02-16 19:12:56 +01:00
Gunnar Beutner c1a98d66be Fix PythonLanguage::ExceptionInfoToString(). 2013-02-16 12:47:52 +01:00
Gunnar Beutner efb62f4b5c Python: Add missing NULL sentinel in PyObject_CallFunctionObjArgs() call. 2013-02-16 12:36:37 +01:00
Gunnar Beutner 7cb67afaae Python: Fix --disable-shared. 2013-02-16 12:36:25 +01:00
Gunnar Beutner d0f263abb1 Print backtrace for Python exceptions. 2013-02-16 11:28:34 +01:00
Gunnar Beutner df79e4c2dc Remove method validator. 2013-02-16 11:28:16 +01:00
Gunnar Beutner 22913c96bf Redesign how templates are specified for slave services/notifications
Fixes #3706
2013-02-16 09:28:05 +01:00
Gunnar Beutner 2952cc8afb Implement an alias for "abstract object".
Fixes #3707
2013-02-16 09:18:34 +01:00
Gunnar Beutner 544c9ac662 Python: Implement support for dictionaries. 2013-02-16 08:58:23 +01:00
Gunnar Beutner acf4e746c0 Exception handling for Python function calls. 2013-02-16 08:08:51 +01:00
Gunnar Beutner 79bf945868 Implement calling Python functions. 2013-02-16 07:49:36 +01:00
Gunnar Beutner 172938b19d Bugfix: Unlock thread mutex while waiting for events. 2013-02-16 07:27:45 +01:00
Gunnar Beutner d0481ea578 Remove support for type hints. 2013-02-15 18:35:40 +01:00
Gunnar Beutner 4998563a74 Implemented calling ScriptFunctions from Python. 2013-02-15 16:34:33 +01:00
Gunnar Beutner a022be9de2 Implemented Value::GetType(). 2013-02-15 14:39:26 +01:00
Gunnar Beutner d13017ef60 Removed some more native:: prefixes (oops). 2013-02-15 12:49:14 +01:00
Gunnar Beutner efd108982a Removed the native:: prefix for built-in functions. 2013-02-15 12:41:32 +01:00
Gunnar Beutner 3ee1dbc94c Implement event for registering/unregistering script functions.
Fixes #3704
2013-02-15 10:10:41 +01:00
Gunnar Beutner 2e7e0c6473 Make ScriptFunction::GetFunctions() public. 2013-02-15 09:59:04 +01:00
Gunnar Beutner 4e03b916ff Bugfix: Set main EventQueue's owner as early as possible. 2013-02-15 09:58:38 +01:00
Gunnar Beutner 023d17c675 Implement per-thread event queues. 2013-02-15 06:48:30 +01:00
Gunnar Beutner 2faca52744 Bug fixes for script function calls. 2013-02-15 05:04:38 +01:00
Gunnar Beutner 2485a04694 Properly shut down the interpreter when the Script object is being destroyed. 2013-02-14 19:00:46 +01:00
Gunnar Beutner 8e672167dc Added missing lock() call. 2013-02-14 18:48:31 +01:00
Gunnar Beutner 8f2ce8e703 Implemented rudimentary function call forwarding for ScriptInterpreter objects. 2013-02-14 16:47:36 +01:00
Gunnar Beutner d3928a7e69 Pass argc and argv to the Python interpreter. 2013-02-14 16:18:58 +01:00
Gunnar Beutner 4a89f69990 Clear current thread state before destroying the thread state object. 2013-02-14 16:02:43 +01:00
Gunnar Beutner 413f81c29d Bugfixes: Finalizing the interpreter might crash. 2013-02-14 15:51:50 +01:00
Gunnar Beutner d4afb4087d Properly shut down instances of the ScriptInterpreter class. 2013-02-14 15:39:53 +01:00
Gunnar Beutner 74b122d430 Implemented the 'Script' type. 2013-02-14 14:58:26 +01:00