Commit Graph

2555 Commits

Author SHA1 Message Date
Gunnar Beutner 9344ae30d0 Build fix 2015-02-15 13:09:53 +01:00
Jean Flach cc5a8da6e8 CLI: Add 'troubleshoot collect' command
By calling `icinga2 troubleshoot collect [--console]` a small file
containing basic application information and a tail of all found logs
and the latest crash report will be created [or displayed].
It does not collect config files at the moment.

refs #3446
2015-02-15 12:38:28 +01:00
Michael Friedrich 4a64d4991b DB IDO: Fix {host,service}checks command_line value is "Object of type 'icinga::Array'"
fixes #8438
2015-02-15 00:24:05 +01:00
Michael Friedrich 7a93cf8cce Don't attempt to restore program state from non-existing state file
fixes #8444
2015-02-14 23:39:10 +01:00
Gunnar Beutner 8903c7e379 Close TLS connections more aggressively
refs #6109
2015-02-14 19:14:45 +01:00
Gunnar Beutner 1c7a0d03a1 Fix a case where NetString::ReadStringFromStream might incorrectly return StatusEof
refs #6109
2015-02-14 18:48:33 +01:00
Gunnar Beutner 9e936cbea4 Fix unit tests for the Stream class
refs #6109
2015-02-14 17:40:29 +01:00
Gunnar Beutner f097e48889 Don't use separate threads for each ApiClient object
fixes #6109
2015-02-14 16:34:36 +01:00
Gunnar Beutner e0bbfb175c Move most of the socket I/O to a separate thread
fixes #8300
fixes #8243
2015-02-14 09:42:11 +01:00
Michael Friedrich 2ed78e82a8 Validate configured TimePeriod ranges
Requires re-throwing the hidden exceptions inside the existing
timeperiod code and validating the configured time range
strings then.

fixes #7576
2015-02-13 17:10:58 +01:00
Michael Friedrich 2cab6fbb9d Make the argments for the stats functions const-ref
fixes #8433
2015-02-13 11:29:15 +01:00
James Pharaoh 9fe52d0dc1 Make checks using 'command_endpoint' work inside HA zones
Previously there was no local processing of the executed
check result, which is mandatory inside a HA cluster.

Additionally this patch splits the command execution and
check result processing into more logical parts, executing
local checks, checks on the same command endpoint, and
remote checks.

More details in the referenced issue.

fixes #8249

Signed-off-by: Michael Friedrich <michael.friedrich@netways.de>
2015-02-12 17:53:50 +01:00
Michael Friedrich 8c8e80bbb0 Don't spam the log with reminder notifications not being sent
fixes #7731
2015-02-12 14:51:17 +01:00
Michael Friedrich 1c4501da19 DB IDO: Require schema version 1.13.0
refs #8425
2015-02-12 14:22:24 +01:00
Michael Friedrich 37bf9d4819 DB IDO: Fix header in sql files 2015-02-12 13:59:19 +01:00
Michael Friedrich 48fa1a1418 DB IDO: Fix duplicate entries in scheduleddowntime table
fixes #8425
2015-02-12 13:19:27 +01:00
Michael Friedrich 9d97094390 DB IDO: Fix duplicate entries in {host,service}depencencies table
fixes #7765
2015-02-12 13:19:27 +01:00
Michael Friedrich 2ae06b7a52 Implement {EN,DIS}ABLE_HOST_SVC_NOTIFICATIONS commands
fixes #7784
2015-02-11 16:45:52 +01:00
Michael Friedrich 24852e05c7 Move ValidateMacroString into the MacroProcessor class
refs #7311
2015-02-11 16:14:59 +01:00
Michael Friedrich 0d18b96c39 Resolve macros in dictionary values
refs #7311
2015-02-11 15:58:59 +01:00
Michael Friedrich 2cd5f3516d Fix compiler warning 2015-02-11 15:58:07 +01:00
Gunnar Beutner cb6f1043e1 Replace if( with if ( 2015-02-11 15:47:45 +01:00
Michael Friedrich 8ca57cba03 Add macro config validator for command args, env, custom attr, perfdata templates
fixes #7311
2015-02-11 15:32:10 +01:00
Gunnar Beutner c95d2f14a3 Fix a crash in yyerror()
refs #8133
2015-02-10 15:53:20 +01:00
Gunnar Beutner 43595515eb Fix off-by-one mistake for error reporting
refs #8133
2015-02-10 15:40:37 +01:00
Gunnar Beutner 9570b9d262 Improve error reporting for "icinga2 console"
refs #8133
2015-02-10 13:58:35 +01:00
Gunnar Beutner 0490fe73f7 Implement line continuation for "icinga2 console"
fixes #8133
2015-02-10 13:27:02 +01:00
Gunnar Beutner 2de89fe8d4 Allow funcs in the 'env' dictionary
refs #7564
2015-02-10 10:59:08 +01:00
Gunnar Beutner b0f7a29212 Add missing spaces in some error messages
refs #7995
2015-02-10 08:57:54 +01:00
Gunnar Beutner 9de7da4d2a Update validators for CustomVarObject
fixes #7542
2015-02-10 08:53:15 +01:00
Gunnar Beutner 898e385891 Implement argument auto-completion for short options
fixes #8185
2015-02-10 08:35:56 +01:00
Michael Friedrich cdfd4d6da8 node update-config: Check node name against blacklist too
fixes #8211
2015-02-09 18:56:17 +01:00
Gunnar Beutner f07fb97264 Fix timestamp format for the .timestamp file
fixes #8313
2015-02-09 15:22:55 +01:00
Gunnar Beutner 438e6dcd09 console: Don't repeat line when we're reporting an error for the last line
fixes #8099
2015-02-09 15:15:26 +01:00
Gunnar Beutner 96aa503dbe Disable flapping detection by default
fixes #6868
2015-02-09 14:23:09 +01:00
Gunnar Beutner 61684891a0 Set LC_NUMERIC=C for all processes on *NIX
fixes #6857
2015-02-09 14:21:42 +01:00
Michael Friedrich c219687121 Create certificate backups in 'node setup'
fixes #8399
2015-02-09 14:19:26 +01:00
Michael Friedrich 278c6ae52b Build fix for Windows
fixes #8260
2015-02-09 14:04:00 +01:00
Gunnar Beutner 97fc5bb10b Implement additional attributes for the Host class
refs #7564
2015-02-09 08:50:17 +01:00
Gunnar Beutner bb12704a31 Implement the Json.encode and Json.decode methods
fixes #8393
2015-02-09 08:14:06 +01:00
Gunnar Beutner 67e50a3d47 Config sync: Open config files in binary mode
fixes #8390
2015-02-09 07:44:45 +01:00
Gunnar Beutner e456cfd99c Relax the validator for Notification::users/Notification::user_groups a bit
fixes #8067
2015-02-08 11:03:10 +01:00
Michael Friedrich b23d58dccc Add host/service runtime macro downtime_depth
fixes #8195
2015-02-08 00:15:38 +01:00
Michael Friedrich 34b5a4d9b4 Trigger added downtimes immediately if checkable is Not-OK
fixes #8389
2015-02-08 00:08:12 +01:00
Michael Friedrich 21f86b9061 Fix authoritative zones in config sync
fixes #8388
refs #8256
2015-02-07 23:41:43 +01:00
Michael Friedrich 19c374040e Fix missing persistent_comment, notify_contact columns for acknowledgement table
fixes #7871
refs #8298
2015-02-07 23:24:16 +01:00
Michael Friedrich db9c55835f Require at least one user for notification objects (user or as member of user_groups)
fixes #8067
2015-02-07 23:04:01 +01:00
Michael Friedrich 9302a6d03c StatusDataWriter: Fix wrong host notification filters
fixes #8387
refs #8192
2015-02-07 22:46:34 +01:00
Michael Friedrich ea2ac81003 Remove name and return value for stats functions
fixes #6171
2015-02-07 22:36:17 +01:00
Michael Friedrich 9ce061a8c4 Fix User::ValidateFilters isn't being used
fixes #8111
2015-02-07 21:57:49 +01:00
Michael Friedrich 29093f2a2f Improve error message on missing included config files
fixes #8179
2015-02-07 21:50:14 +01:00
Michael Friedrich a1f04992f3 Fix notify flag is ignored in ACKNOWLEDGE_*_PROBLEM commands
fixes #8298
2015-02-07 21:39:19 +01:00
Michael Friedrich d67679c0ec icinga2 node wizard: Create backups of certificates
fixes #8260
2015-02-07 20:44:25 +01:00
Michael Friedrich 1d4065ba94 Add file mode support for NodeUtility::CreateBackupFile()
refs #8260
2015-02-07 20:41:04 +01:00
Michael Friedrich 289ca2ec24 Improve error messages on Endpoint not belonging to a zone or multiple zones
fixes #8372
2015-02-07 20:07:34 +01:00
Michael Friedrich bb2338631f Fix last_hard_state missing in StatusDataWriter
fixes #8383
2015-02-07 19:37:35 +01:00
Gunnar Beutner 20d999e275 Add timestamp support for Graphite
fixes #8374
2015-02-06 08:53:06 +01:00
Michael Friedrich d868930525 Livestatus: Fix case-insensitive comparison operator
fixes #8289

Signed-off-by: Michael Friedrich <michael.friedrich@netways.de>
2015-02-05 18:06:10 +01:00
Gunnar Beutner 0605b76e7a Report failed agent checks to the master
fixes #8257
2015-02-05 15:36:17 +01:00
Gunnar Beutner 2d5112c878 Send check result even when accept_commands is not set
fixes #8333
2015-02-05 15:17:56 +01:00
Gunnar Beutner 4896428c06 Add path information for objects in objects file
fixes #8371
2015-02-05 15:05:07 +01:00
Gunnar Beutner 423b2777d4 Update the ZoneName constant in "node wizard"
fixes #8162
2015-02-05 10:33:40 +01:00
Gunnar Beutner 700b7c1c48 Remove single quote in "node wizard" output
fixes #8368
2015-02-05 10:30:30 +01:00
Michael Friedrich 06a262f7db Schedule a host downtime for command SCHEDULE_HOST_SVC_DOWNTIME
fixes #8299
2015-02-04 21:19:47 +01:00
Gunnar Beutner 1a23ae94f9 Implement support for updating the program_end_time column
fixes #6923
2015-02-04 15:25:10 +01:00
Gunnar Beutner e3dcc8a610 Implement a unit test for nullary lambdas
fixes #7805
2015-02-03 14:02:32 +01:00
Gunnar Beutner 3b3a65c9ae Document operator precedence
fixes #7816
2015-02-02 12:48:20 +01:00
Gunnar Beutner 1bff5eb706 Fix missing files in the Windows package
fixes #8200
2015-02-02 10:36:58 +01:00
Gunnar Beutner fec8e15d9e Implement the Array#join method
fixes #8322
2015-02-02 08:39:16 +01:00
Gunnar Beutner 173f5241c4 Improve error message for non-matching apply rules
fixes #8323
2015-01-30 15:51:22 +01:00
Gunnar Beutner ce00081a57 Add enable_event_handlers attribute in status.dat
fixes #8321
2015-01-30 15:24:40 +01:00
Gunnar Beutner ac959a72aa Don't allow comparison of strings and numbers
fixes #8305
2015-01-30 10:30:31 +01:00
Gunnar Beutner aeb579d2a0 Implement another syntax for nullary lambdas
refs #7564
2015-01-30 09:49:57 +01:00
Gunnar Beutner c01fb97337 Don't escape macros for the macro() function
refs #7564
2015-01-29 16:52:04 +01:00
Gunnar Beutner e0be9cd743 Improve error message for failed casts
refs #6070
2015-01-29 16:51:47 +01:00
Gunnar Beutner d713a6c940 Fix incorrect return value for ConfigItem::ActivateItems
refs #8309
2015-01-29 14:40:49 +01:00
Gunnar Beutner 2f44581f14 Validate timeperiod segments
fixes #8309
2015-01-29 14:14:56 +01:00
Gunnar Beutner a3e0c9d898 Add missing mutex for AddNotification/RemoveNotification
fixes #8311
2015-01-29 13:21:22 +01:00
Gunnar Beutner fb323ee215 Evaluate apply filters in the for loop
fixes #7610
2015-01-29 12:38:25 +01:00
Gunnar Beutner 88788685d3 Make sure the Livestatus listener thread terminates after SIGTERM
fixes #8295
2015-01-29 11:39:06 +01:00
Gunnar Beutner 03a509f419 Fix setting global variables with --define
fixes #8307
2015-01-29 11:06:08 +01:00
Gunnar Beutner dd4a7ab240 Update validators for command arguments
refs #7564
2015-01-29 10:30:02 +01:00
Gunnar Beutner 7b4f1e217a Implement support for functions in set_if
refs #7564
2015-01-29 10:09:53 +01:00
Gunnar Beutner ea3c3e0c3e Fix incorrectly resolved macros
refs #7564
2015-01-28 15:48:08 +01:00
Gunnar Beutner 235c7348f4 Implement accessor functions for hosts, services, etc.
refs #7564
2015-01-28 14:18:27 +01:00
Gunnar Beutner 4ad4c314ae Implement the 'macro' function for dynamic custom vars
refs #7564
2015-01-28 14:14:48 +01:00
Tobias von der Krone 201883ff70 Add OpenTSDB perfdata plugin
refs #7256

Signed-off-by: Gunnar Beutner <gunnar@beutner.name>
2015-01-28 12:39:01 +01:00
Gunnar Beutner eb2f2dd8a2 Implement get_object() and get_objects()
fixes #7564
2015-01-28 08:36:17 +01:00
Gunnar Beutner 88e1aadbf2 Use a separate thread for TLS connection attempts
fixes #8295
2015-01-28 08:35:36 +01:00
Gunnar Beutner 091d79ea4a Don't execute DB updates for agent host objects
fixes #8296
2015-01-27 15:11:45 +01:00
Gunnar Beutner fb44744680 Implement support for using functions in custom attributes
refs #7564
2015-01-27 13:40:05 +01:00
Gunnar Beutner 13917e07b0 Implement validator support for function objects
fixes #8291
2015-01-27 10:55:14 +01:00
Gunnar Beutner a11cdbdc39 Replace spaces with tabs 2015-01-27 10:50:15 +01:00
Gunnar Beutner e7938c9374 Fix crash in DbConnection::ProgramStatusHandler
fixes #8288
2015-01-27 09:53:07 +01:00
Gunnar Beutner b858a05f15 Make operators &&, || behave like in JavaScript
fixes #8290
2015-01-27 08:40:19 +01:00
Stephan Platz 2d393eab28 Add macro "check_source" for hosts and services to use them in notification mails
fixes #8277

Signed-off-by: Gunnar Beutner <gunnar@beutner.name>
2015-01-25 16:04:36 +01:00
Gunnar Beutner 01d3be8820 Implement the while statement
fixes #8269
2015-01-23 15:54:27 +01:00
Michael Friedrich 78bfd0204c Update copyright year 2015-01-22 12:00:23 +01:00
Gunnar Beutner 981d645028 Update documentation 2015-01-21 08:48:38 +01:00
Gunnar Beutner 363f23b1d8 Rename ScriptFunction to Function
fixes #8258
2015-01-21 08:48:38 +01:00
Gunnar Beutner 604b080c59 Implement the Array#sort method
refs #8069
2015-01-20 16:56:08 +01:00
Gunnar Beutner 310278344c Make sure we don't include zones.d directories for zones which were removed
fixes #8256
2015-01-20 13:18:40 +01:00
Tobias von der Krone d5e406db85 Fix hardcoded host notifications_options value in compat statusdatawriter
Use the function from CompatUtility to retrieve the value.

fixes #8192
2015-01-19 12:58:57 +01:00
Gunnar Beutner 848d076090 Implement the "globals" and "locals" keyword
fixes #8244
2015-01-16 13:04:34 +01:00
Gunnar Beutner b4c74efde0 Implement some more utility functions
refs #8169
2015-01-16 10:35:20 +01:00
Gunnar Beutner 4e96d48e87 Fix incorrect source line info in the CLI console
fixes #8240
2015-01-16 10:07:11 +01:00
Gunnar Beutner 76fefaf9e2 Make argument for the return keyword optional
fixes #8237
2015-01-16 08:41:27 +01:00
Gunnar Beutner a1734e3051 Fix deadlock in VMOps::For
fixes #8236
2015-01-16 08:40:19 +01:00
Gunnar Beutner 1952d7c844 Disallow spaces in T_STRING_ANGLE
fixes #8230
2015-01-15 14:50:07 +01:00
Gunnar Beutner 6bb054caa8 Implement the Function#callv helper function
refs #8169
2015-01-15 12:52:23 +01:00
Gunnar Beutner 5d8356f6d2 Implement more utility functions
refs #8169
2015-01-15 12:34:50 +01:00
Gunnar Beutner c0a5ed81f4 Improve argument validation for the String#substr and String#find methods
refs #8169
2015-01-14 17:03:56 +01:00
Gunnar Beutner dd1cbb6fe7 Fix incorrect exception type
refs #81659
2015-01-14 15:57:48 +01:00
Gunnar Beutner 2ef798f378 Implement missing Type::SetField method
refs #8169
2015-01-14 13:34:52 +01:00
Gunnar Beutner 688e64ce40 Add missing meta type class for the Type class
refs #8169
2015-01-14 09:51:44 +01:00
Gunnar Beutner 9c36f40656 Implement more methods for the String class
fixes #8169
2015-01-14 09:08:31 +01:00
Gunnar Beutner d0abc11c08 Implement the call() method for functions
refs #8169
2015-01-14 07:36:59 +01:00
Gunnar Beutner a20d168340 Remove libreadline support
fixes #8168
2015-01-13 14:45:38 +01:00
Jean Flach 75682dc8e8 Fix single global options not working correctly on non-Linux systems
fixes #8196
2015-01-13 14:05:28 +01:00
Gunnar Beutner 82a31c9b20 Rename the "repl" command to "console"
fixes #8167
2015-01-12 14:31:33 +01:00
Gunnar Beutner 5db8dd7361 Verify array bounds
fixes #7812
2015-01-12 14:19:35 +01:00
Gunnar Beutner 9080ca2867 Fix some more compiler warnings
refs #8175
2015-01-12 14:19:20 +01:00
Gunnar Beutner 1df13c792b Fix compiler warnings
fixes #8175
2015-01-12 12:36:49 +01:00
Gunnar Beutner 5e9d9aea74 Change return type for 'set' expressions to Empty
fixes #8172
2015-01-12 08:55:16 +01:00
Gunnar Beutner 9a6a84d9d9 Implicitly convert filter values to bool for object rules
fixes #8184
2015-01-12 08:38:14 +01:00
Michael Friedrich 2069fb6400 Fix wrong host/node name in update-config blacklist
fixes #8181
2015-01-09 14:25:45 +01:00
Michael Friedrich 123f7fd552 Fix crash in node update-config
fixes #8182
2015-01-09 14:11:36 +01:00
Gunnar Beutner b17fc34a84 Disable Application::SetResourceLimits on non-Linux systems
fixes #8178
2015-01-09 11:44:20 +01:00
Michael Friedrich effb834d3f Increase DB IDO query queue limit
fixes #8152
2015-01-09 11:23:29 +01:00
Gunnar Beutner 0d4e92015c Fix error messages in LivestatusListener::ServerThreadProc
fixes #8176
2015-01-09 09:53:43 +01:00
Michael Friedrich 0eb6e174c8 Incorrect ticket number shouldn't cause "node wizard" to terminate
fixes #8125
2015-01-08 17:09:31 +01:00
Michael Friedrich ff3ee32d92 Fix DebugInfoRange for ApplyExpression in config parser
fixes #8173
2015-01-08 17:00:13 +01:00
Michael Friedrich 6ae9685cee Fix sending notifications for volatile checks on OK->OK changes
volatile checks make state changes behave like HARD state changes.
Though OK -> OK transitions must not be notified.

Increased log information for notifications too.

fixes #8063
2015-01-08 16:20:44 +01:00
Gunnar Beutner 7075607773 Use @$ instead of DebugInfoRange 2015-01-08 15:01:13 +01:00
Gunnar Beutner 493620a0ac Deactivate Livestatus listener before writing the state file
fixes #7660
2015-01-08 14:03:43 +01:00
Gunnar Beutner 79b0c13dfb Remove unnecessary default rules 2015-01-08 11:39:06 +01:00
Gunnar Beutner f02c87b14c Fix missing command arguments
fixes #8144
2015-01-08 11:38:09 +01:00
Gunnar Beutner 093be8b5c9 Allow side-effect-free expressions in a limited number of cases
refs #6570
2015-01-08 10:33:45 +01:00
Gunnar Beutner 0091c70c41 Disallow side-effect-free r-value expressions in expression lists
fixes #6570
2015-01-08 09:34:32 +01:00
Gunnar Beutner acbf916506 Fix ambiguity when parsing include_recursive
fixes #8166
2015-01-07 17:22:29 +01:00
Gunnar Beutner f3e0c5f113 Fix escape sequence for double quotes
refs #8164
2015-01-07 13:06:02 +01:00
Gunnar Beutner 2cb9f3011d Fix escape sequence for backslashes
fixes #8164
2015-01-07 08:56:52 +01:00
Gunnar Beutner 1073f031c8 Build fix for Windows 2014-12-22 14:14:16 +01:00
Gunnar Beutner 407f88e185 Fix incorrect week day calculation in LegacyTimePeriod::ParseTimeSpec
fixes #6943
2014-12-20 22:04:24 +01:00
Gunnar Beutner 9f6b90cd2d Don't show stack traces for known exception types
refs #6070
2014-12-20 15:41:31 +01:00
Gunnar Beutner c433284d27 Improve error reporting
fixes #8136
refs #6070
2014-12-20 15:29:04 +01:00
Gunnar Beutner ee5f4fb7e3 Improve error reporting for the import keyword
fixes #8061
2014-12-20 11:09:21 +01:00
Gunnar Beutner e03e143177 Report error for invalid escape sequences
fixes #7910
2014-12-20 09:48:18 +01:00
Gunnar Beutner cb5e6c1c6d Fix integer overflow in len()
fixes #8041
2014-12-20 09:36:35 +01:00
Gunnar Beutner 1ddab493e1 Make sure that Value::IsEmpty() returns true for empty strings
fixes #8018
2014-12-20 09:31:55 +01:00
Gunnar Beutner 6fddec0dd3 Improve error message for invalid field accesses
fixes #8079
2014-12-20 09:17:02 +01:00
Gunnar Beutner 3e64b642ca Make sure that "feature enable" uses relative paths for the symlinks
fixes #8121
2014-12-20 08:39:12 +01:00
Gunnar Beutner 6c53c7f192 Fix debug info for indexer
fixes #8132
2014-12-19 16:53:44 +01:00
Gunnar Beutner f280452b6d Make sure the livestatus module works when the compat module is disabled
refs #7794
2014-12-19 16:42:20 +01:00
Gunnar Beutner 4e5649f0d7 Disable vfork() on OS X
fixes #8131
2014-12-19 16:04:34 +01:00
Gunnar Beutner a3ea72c4ca Implement the __commit function
refs #8127
2014-12-19 13:08:46 +01:00
Gunnar Beutner 978aeed741 Implement the __get_objects function
refs #8127
2014-12-19 13:08:31 +01:00
Gunnar Beutner b78a8b6c77 Allow relative paths for the UNIX socket
refs #7805
2014-12-19 12:33:51 +01:00
Gunnar Beutner 97168378e8 Rename _DEBUG to I2_DEBUG
fixes #7767
2014-12-19 12:19:28 +01:00
Gunnar Beutner 28d7051aed Fix a deadlock in TlsStream::Read / TlsStream::Close
fixes #8124
2014-12-19 12:07:06 +01:00
Gunnar Beutner 06052c0539 Fix validation for service names in Notification, Dependency and ScheduledDowntime objects
fixes #8122
2014-12-19 11:44:31 +01:00
Gunnar Beutner cb7f93dc19 Implement CMake options for some of the modules
fixes #7794
fixes #7795
2014-12-19 09:46:41 +01:00
Gunnar Beutner 6383da1f2f Replace spaces with tabs 2014-12-18 17:06:00 +01:00
Gunnar Beutner 9f18211ada Remove obsolete code
refs #7709
2014-12-18 15:57:30 +01:00
Gunnar Beutner 873e294158 Refactor the WorkQueue class to make error reporting easier
refs #7709
2014-12-18 15:11:57 +01:00
Gunnar Beutner c3cf7682b9 Clean up the DebugInfo class
refs #7709
2014-12-18 12:58:46 +01:00
Gunnar Beutner 82a9a8f0cf Fix crash in ConfigCompilerContext::WriteObject
fixes #8106
2014-12-18 12:46:35 +01:00
Michael Friedrich a0359799bd Compat: Fix event_handler_enabled dump based on enable_event_handler attribute
fixes #8105
2014-12-18 11:22:15 +01:00
Gunnar Beutner 28734daa06 Fix crash when accessing invalid fields
fixes #8104
2014-12-18 11:21:11 +01:00
Gunnar Beutner c90c8919ca Fix the dependency nightmare that is libreadline
refs #8091
2014-12-17 10:24:13 +01:00
Gunnar Beutner 3436dbc697 Fix incorrect package name for SLES/openSUSE
refs #8091
2014-12-17 09:30:54 +01:00
Gunnar Beutner 92eb6a2f45 Update documentation for libreadline requirement
fixes #8091
2014-12-17 09:07:05 +01:00
Gunnar Beutner 9eeb64a780 Update livestatus and statusdata to properly support booleans
fixes #8100
2014-12-17 08:54:28 +01:00
Gunnar Beutner 5dd0bbfe31 Fix another problem with boolean values in SQL queries
refs #8100
2014-12-16 21:43:03 +01:00
Gunnar Beutner aa795c1b81 Build fix for Windows
refs #7805
2014-12-16 21:28:16 +01:00
Gunnar Beutner 5e1182a5c7 Fix incorrect SQL values for boolean fields
fixes #8100
2014-12-16 21:28:13 +01:00
Gunnar Beutner 96626f4eca Increase the timeout for "repl" sessions
refs #7805
2014-12-16 19:51:33 +01:00
Gunnar Beutner f800630c10 Implement Livestatus support for the "repl" command
refs #7805
2014-12-16 19:28:46 +01:00
Gunnar Beutner 9011c9fa67 Fix crash when accessing invalid fields on objects which don't have prototypes 2014-12-16 18:15:47 +01:00
Gunnar Beutner d82defe6a9 Add readline support for the "repl" command
fixes #8091
2014-12-16 13:26:26 +01:00
Gunnar Beutner 27db75fbe6 Add version output to the "repl" command
refs #7805
2014-12-16 10:36:59 +01:00
Gunnar Beutner 23a556c7ce Make sure that operator % throws an exception when the ride-hand-side argument is 0
fixes #8089
2014-12-16 08:52:32 +01:00
Gunnar Beutner 8ef8316ca6 Fix location info for strings
fixes #8081
2014-12-16 06:18:39 +01:00
Gunnar Beutner d72bd4fec2 Add another unit test for expressions
refs #8074
2014-12-15 17:23:18 +01:00
Gunnar Beutner b9831f0be4 Add unit tests for the "var" keyword
refs #8074
2014-12-15 16:42:34 +01:00
Gunnar Beutner 77806b9de7 Get rid of the local/global keywords
refs #8074
2014-12-15 16:09:17 +01:00
Michael Friedrich 938ae083cd Cli: "node wizard" shouldn't crash when SaveCert fails
fixes #7707
2014-12-15 13:08:30 +01:00
Gunnar Beutner 252f3205cb Fix incorrect variable scoping
refs #8074
2014-12-15 12:58:55 +01:00
Gunnar Beutner 55b7f00382 Remove unnecessary includes 2014-12-15 10:16:06 +01:00
Gunnar Beutner c7d9c415eb Disable impersonation for the "repl" command
refs #7805
2014-12-15 08:38:03 +01:00
Gunnar Beutner 8c9fdb537f Remove unused code
refs #8074
2014-12-15 06:03:13 +01:00
Gunnar Beutner 343d46bcbe Make sure IcingaApplication::GetVars returns a default value
refs #8074
2014-12-15 06:02:59 +01:00
Gunnar Beutner 262bfb7fc9 Allow if/else in rterms
refs #8074
2014-12-14 14:08:41 +01:00
Gunnar Beutner b40e95d9b6 Only implicitly convert strings to indexers
refs #8074
2014-12-14 11:55:44 +01:00
Gunnar Beutner 1cb0231c05 Refactor how variable scopes work
refs #8074
2014-12-14 11:33:45 +01:00
Gunnar Beutner 461cf8dbc1 Make sure Serialize() doesn't fail for objects which don't have a registered type
fixes #7895
2014-12-13 21:42:39 +01:00
Gunnar Beutner 83058d1123 Backport i2tcl's error reporting functionality into "icinga2 repl"
fixes #8078
2014-12-13 21:16:55 +01:00
Gunnar Beutner dd4c04aa9b Implement the 'global' keyword to differentiate between variable scopes
refs #8074
2014-12-13 17:48:58 +01:00
Gunnar Beutner c0f6d65b66 Fix operator precedence for =>
refs #8030
2014-12-13 14:06:19 +01:00
Gunnar Beutner 54ab4dd924 Implement support for lambdas
refs #8030
2014-12-13 13:50:47 +01:00
Gunnar Beutner 1275847d5a Improve error messages for failed expressions
fixes #8076
2014-12-12 21:21:30 +01:00
Gunnar Beutner 05485ea2d6 Disallow calling strings as functions
fixes #8040
2014-12-12 20:45:11 +01:00
Michael Friedrich d11286e9a5 DB IDO: Update child object reachability if parentchanges to !{OK,UP}
fixes #7683
2014-12-12 16:12:05 +01:00
Gunnar Beutner b8e7c5bc40 Fix the prototype for the Object class
refs #8065
2014-12-12 15:47:51 +01:00
Gunnar Beutner 0a4c461caa Fix the clone() methods for the Array and Dictionary class
refs #8065
2014-12-12 15:38:06 +01:00
Gunnar Beutner cfd775c948 Move the VMFrame class to libbase
refs #8065
2014-12-12 15:33:56 +01:00
Gunnar Beutner aa38dde1fc Implement prototype functions
fixes #8065
2014-12-12 15:22:37 +01:00
Michael Friedrich 868d403a8a DB IDO: Missing last_hard_state column update in {host,service}status tables
fixes #8058
2014-12-12 13:25:10 +01:00
Gunnar Beutner a94b26ff47 Add missing DebugInfo for field accesses
refs #8062
2014-12-12 08:58:39 +01:00
Gunnar Beutner b016003eb5 Implement string indexers
fixes #8062
2014-12-12 06:54:38 +01:00
Gunnar Beutner 4d401a7cc5 Fix if for non-boolean arguments
fixes #8072
2014-12-11 21:31:30 +01:00
Gunnar Beutner a9e2bc4b40 Implement a way to call methods on objects
fixes #8071
2014-12-11 21:12:34 +01:00
Gunnar Beutner 7ac6347d6a Update error message to use the correct lexer token name
refs #7883
2014-12-11 15:07:21 +01:00
Michael Friedrich ebc0845853 Cli: Don't parse node repository files twice in 'node update-config'
refs #7917
2014-12-11 14:47:46 +01:00
Gunnar Beutner e86b36f8d7 Remove the __ prefix from some of the lexer tokens
fixes #7883
2014-12-11 13:12:35 +01:00
Gunnar Beutner 364f1daff8 Fix another crash in ThreadPool::Stop
refs #8059
2014-12-11 09:45:57 +01:00
Gunnar Beutner 874970db9e Fix crash in ThreadPool::Stop
fixes #8059
2014-12-11 09:34:57 +01:00
Gunnar Beutner a5a45ae891 Improve error reporting when libmysqlclient or libpq are missing
fixes #7882
2014-12-11 08:52:13 +01:00
Michael Friedrich eb4de1884c Cli: Make sure to check for removed nodes only once in 'node update-config'
fixes #7917
2014-12-10 18:48:35 +01:00
Gunnar Beutner 0f496c0b55 Fix set_if for non-numeric boolean values
fixes #8049
2014-12-10 16:49:00 +01:00
Gunnar Beutner 2720333d6e Fix missing location information for included files
fixes #7927
2014-12-10 15:06:09 +01:00
Gunnar Beutner c1ac548a77 Escape special characters in repository file names
fixes #7618
2014-12-10 13:20:16 +01:00
Gunnar Beutner 705447ce18 Make ConfigCompiler::HandleInclude return an inline dictionary
fixes #8047
2014-12-10 11:30:42 +01:00
Gunnar Beutner d88856a994 Fix failing unit tests
refs #8043
2014-12-10 11:25:20 +01:00
Gunnar Beutner 2a2460ae67 Fix crash in RepositoryUtility::AddObject
refs #7822
2014-12-10 10:35:18 +01:00
Gunnar Beutner c70623ec7c Add log message for heartbeat timeouts
refs #7745
2014-12-10 09:57:08 +01:00
Gunnar Beutner 89a0fc006e Implement a boolean sub-type for the Value class
fixes #8043
2014-12-10 09:05:16 +01:00
Gunnar Beutner 9e01f6d8b9 Fix operator precedence for %, |, ^, &, in and !in in combination with <
fixes #8029
2014-12-09 20:51:19 +01:00
Gunnar Beutner 291b000e09 Allow modifying the name attribute
fixes #8033
2014-12-09 20:37:20 +01:00
Gunnar Beutner 44b87aeff6 Fix typeof() for numbers
fixes #8028
2014-12-09 16:43:09 +01:00
Gunnar Beutner 4a81dbb6fc Build fix for Windows 2014-12-09 15:07:49 +01:00
Gunnar Beutner 98375df4d7 Fix config validation in RepositoryUtility::AddObject
refs #7701
2014-12-09 14:55:29 +01:00
Gunnar Beutner 4d657163c3 Implement heartbeat messages for the cluster
fixes #7745
2014-12-09 13:17:27 +01:00
Gunnar Beutner be4166b99e Fix incorrect brace placement 2014-12-08 11:43:33 +01:00
Gunnar Beutner a2bd3a9576 Add missing Flush() call in the CompatLogger class
fixes #7511
2014-12-08 09:55:40 +01:00
Gunnar Beutner cf2b6e7ccc Improve output of ToString for type objects
fixes #8020
2014-12-08 09:12:40 +01:00
Gunnar Beutner 57f84741b9 Register type objects as global variables
fixes #8019
2014-12-08 08:49:32 +01:00
Gunnar Beutner 04ca634a16 Fix typeof incorrectly returning null for arrays and dictionaries
fixes #8002
2014-12-08 08:36:03 +01:00
Gunnar Beutner b5c7e2de4e Make the ThreadPool spawn fewer threads 2014-12-06 19:23:27 +01:00
Gunnar Beutner 3cb2afd454 Fix minor memory leak in the config parser 2014-12-06 10:23:25 +01:00
Michael Friedrich b81035e352 Livestatus: Fix missing host downtimes/comments
fixes #7064
2014-12-05 16:32:14 +01:00
Michael Friedrich 9f66587d84 Rename static timer variables 2014-12-05 16:32:14 +01:00
Gunnar Beutner cefa469ee6 ScriptUtils: Make sure arguments aren't null
fixes #8003
2014-12-05 14:59:12 +01:00
Gunnar Beutner ec99efbc28 Implement validator for the check_interval attribute
fixes #7591
2014-12-05 13:00:41 +01:00
Michael Friedrich cc8fe684fe Execute checks locally if command_endpoint == local endpoint
fixes #7863
2014-12-05 11:35:00 +01:00
Gunnar Beutner 7d93788650 Fix crash in the unit tests
fixes #7769
2014-12-04 21:50:22 +01:00
Michael Friedrich d21b3aba52 cli: Fix node update-config errors
* fix hosts not created if config and inventory.index are missing.
* fix segfault if host already exists in inventory
* fix that newly listed node hosts are not added to the config repo
* fix repository removal of remove host/services on remote nodes
* fix missing/wrong locks for dictionaries
* fix missing directory create/chown

fixes #7518
fixes #7878
fixes #7917
fixes #7891

Conflicts:
	lib/cli/objectlistcommand.cpp
2014-12-04 17:56:28 +01:00
Gunnar Beutner fc42cb575c Add missing validator for the socket_path attribute
refs #7901
2014-12-02 13:43:36 +01:00
Gunnar Beutner 078125bdec Implement socket_path attribute for the IdoMysqlConnection class
fixes #7901
2014-12-02 08:42:53 +01:00
Gunnar Beutner a5c206cbe2 Fix problem with macro arguments which are not separated by whitespace
fixes #7314
2014-12-01 15:53:23 +01:00
Michael Friedrich 06e79fe6fd Don't execute built-in commands on the master in remote command execution mode
fixes #7708
2014-12-01 13:19:56 +01:00
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