Commit Graph

2728 Commits

Author SHA1 Message Date
Gunnar Beutner 1b21faeb5d Move object name validation into ConfigItemBuilder class
fixes #9911
2015-08-15 20:07:11 +02:00
Gunnar Beutner ce2735f10b Fix validation errors when creating objects with the API
refs #9101
2015-08-15 20:07:11 +02:00
Gunnar Beutner e2290d5012 Implement support for unregistering objects
refs #9101
2015-08-15 20:07:11 +02:00
Gunnar Beutner f405a26052 Implement validation for modified attributes 2015-08-15 20:07:11 +02:00
Gunnar Beutner 16ddc12c06 Implement support for creating objects
refs #9101
2015-08-15 20:07:11 +02:00
Gunnar Beutner 3d78870339 Implement support for modified attributes in the API
refs #9081
2015-08-15 20:07:11 +02:00
Gunnar Beutner a092c13ace Implement support for persisting modified attributes
fixes #9093
2015-08-15 20:07:10 +02:00
Michael Friedrich d7970f5bb1 Implement modified attributes v2
refs #9081
refs #9093
2015-08-15 20:07:10 +02:00
Gunnar Beutner 1c657feea1 Fix warnings about invalid API function 'icinga::Hello'
fixes #9884
2015-08-11 14:19:20 +02:00
Gunnar Beutner 9b0375bed8 Use an empty dictionary for the 'this' scope when executing commands with Livestatus
fixes #9883
2015-08-11 13:58:31 +02:00
Gunnar Beutner d30d1d4dda Implement the Dictionary#keys method
fixes #9882
2015-08-11 13:58:29 +02:00
Gunnar Beutner 2e43c57d6b Make sure we're always creating the conf.d and zones.d directories
fixes #9879
2015-08-11 12:59:26 +02:00
Gunnar Beutner ec8cdcd554 Fix incorrect function name
refs #9876
2015-08-11 12:56:30 +02:00
Gunnar Beutner f600d75930 Fix crash during cluster log replay
fixes #9876
2015-08-11 12:09:17 +02:00
Gunnar Beutner 73b72544ee Fix URL handlers
refs #9768
2015-08-11 09:31:56 +02:00
Gunnar Beutner d7d16d3f36 Fix crash in ScriptFrame::~ScriptFrame in debug builds
fixes #9868
2015-08-11 07:12:49 +02:00
Gunnar Beutner 38d2464ab2 Remove color codes in the console prompt
fixes #9872
2015-08-11 07:05:55 +02:00
Gunnar Beutner aa00f4183a Get rid of code duplication in ConfigWriter/ConsoleCommand
refs #9099
2015-08-11 06:47:08 +02:00
Gunnar Beutner 930dc603af Build fix for Windows 2015-08-10 15:38:45 +02:00
Gunnar Beutner 7890e20da7 Implement reload functionality for Windows
fixes #7880
2015-08-10 15:28:31 +02:00
Gunnar Beutner 07f9df8b2d Build fix for Windows 2015-08-10 15:28:31 +02:00
Gunnar Beutner f541a62a34 Fix: Make sure we're continuously reading from child processes' pipes
fixes #9867
2015-08-10 15:28:30 +02:00
Gunnar Beutner 8f3396ae0d Implement support for attaching GDB to the Icinga process on crash
fixes #9866
2015-08-08 09:41:39 +02:00
Gunnar Beutner a7bfc5ef16 Fix: Dict initializer incorrectly re-initialized field that is set to an empty string
fixes #9835
2015-08-05 07:45:10 +02:00
Michael Friedrich fc1049fb68 Fix node wizard ignoring local zone name
fixes #9782
2015-08-03 16:23:59 +02:00
Michael Friedrich d7e8d8afc9 Fix cluster check w/ immediate parent and child zone endpoints
fixes #9262
2015-08-03 16:16:46 +02:00
Michael Friedrich 6f47c1badc Fix S_ISDIR on Windows
fixes #9813
2015-08-03 15:13:45 +02:00
Michael Friedrich 973db46d40 Implement support for writing configuration files
fixes #9099
2015-08-03 15:07:38 +02:00
Gunnar Beutner 276f491762 Fix: Operator + is inconsistent when used with empty and non-empty strings
fixes #9806
2015-08-01 04:38:12 +02:00
Jean Flach 60f86d01fe Implement /v1/actions/process-check-result
Requires error handling.

refs #9080
2015-07-31 17:18:49 +02:00
Michael Friedrich 0712a02d1b Add a warning if EventCommand is not found when using command_endpoint
fixes #9773
2015-07-31 16:04:03 +02:00
Michael Friedrich 766e2d73f4 Implement external command DEL_DOWNTIME_BY_HOST_NAME
Required by Classic UI 1.x, this will hopefully reduce
the noise on non-working commands with the old legacy stuff.

fixes #8979
2015-07-31 14:50:17 +02:00
Gunnar Beutner 1314cba61b Implement Dictionary#get and Array#get
fixes #9796
2015-07-30 20:58:52 +02:00
Gunnar Beutner 5bd46c2b38 Fix: ScriptFrame's 'Self' attribute gets corrupted when an expressions throws an exception
fixes #9795
2015-07-30 20:22:02 +02:00
Gunnar Beutner 9d098482dd Fix: Operator - should not work with "" and numbers
fixes #9793
2015-07-30 20:01:08 +02:00
Gunnar Beutner df6deb1b3e Fix: "" should not be equal to 0
fixes #9792
2015-07-30 19:58:22 +02:00
Jean-Marcel Flach 9b6ebbc69b Implement basic actions framework
refs #9080
2015-07-30 17:50:17 +02:00
Gunnar Beutner 625a7eafbe Fix URL parameters for filters
refs #9077
2015-07-30 08:30:39 +02:00
Gunnar Beutner 1634dbc6e4 Fix crash when trying to set field on a value that is not an object
fixes #9779
2015-07-30 08:28:07 +02:00
Gunnar Beutner a82c65692c Fix accessor for field 0 ("prototype")
fixes #9778
2015-07-30 08:23:43 +02:00
Gunnar Beutner f74148f157 Fix HTTP handlers
refs #9768
2015-07-29 13:39:58 +02:00
Jean Flach 2414dee602 Update url parser
fixes #9768
2015-07-29 13:14:43 +02:00
Gunnar Beutner 0b495d1858 Set correct X509 version for certificates
fixes #9769
2015-07-29 12:59:12 +02:00
Gunnar Beutner a97782b3e5 Implement support for limiting output attributes
refs #9077
fixes #9614
2015-07-28 17:12:51 +02:00
Gunnar Beutner 5fd7c42faf Fix incorrect URL for status queries
refs #9077
2015-07-28 14:54:16 +02:00
Gunnar Beutner 8fc1d6d0d0 Improve error messages a bit
refs #9077
2015-07-28 14:40:44 +02:00
Gunnar Beutner 15e5dbd151 Add support for implicit 'true' filter when filter parameter is missing
refs #9077
2015-07-28 14:33:09 +02:00
Gunnar Beutner 890694e629 Implement support for filters
fixes #9077
2015-07-28 13:57:59 +02:00
Michael Friedrich 0a1dad0a8f Fix broken cluster config sync w/ latest api changes
Apart from dropping the requirement of adding 'include_zones "etc", "zones.d"'
on upgrade to 2.4, we've forgotten to register the local zone directory into
the new ZoneFragment tree.

This fix adds a new function to register the local zones.d directory.
After that the config sync works again.

fixes #9735
2015-07-26 17:57:34 +02:00
Michael Friedrich fa3d380dff Fix a problem where invalid stage config could lead into broken stages
refs #9103
refs #9083
2015-07-24 16:05:13 +02:00
Michael Friedrich fca7a33aac Implement config file management for the API
refs #9083

fixes #9102
fixes #9103
fixes #9104

fixes #9705
2015-07-23 17:57:24 +02:00
Michael Friedrich 43ff15cf86 Fix problem with child nodes in http url registry
fixes #9703
2015-07-22 12:27:07 +02:00
Gunnar Beutner 6c3bafb722 Implement support for the X-HTTP-Method-Override HTTP header
fixes #9698
2015-07-22 08:28:15 +02:00
Michael Friedrich a786dfa2ca Add Array::FromVector() method
fixes #9693
2015-07-21 16:09:19 +02:00
Michael Friedrich 59b81168ff Add exceptions for Utility::MkDir{,P}
fixes #9689
2015-07-21 15:56:57 +02:00
Gunnar Beutner f1a95e3340 Fix incorrect filename in ApiListener::SyncZoneDir
refs #9083
2015-07-21 11:45:53 +02:00
Gunnar Beutner ccd63b9d15 Implement the include_zones directive
refs #9083
2015-07-21 09:32:17 +02:00
Michael Friedrich 4bc42281be Build fix for Linux
refs #9647
2015-07-20 17:21:27 +02:00
Gunnar Beutner e47d5006d2 Build fix for Windows
refs #9647
2015-07-20 13:41:58 +02:00
Tobias von der Krone 80d0d7dc7a Correct escaping of metric and tag names for OpenTSDB perfdata plugin
fixes #9665
2015-07-20 07:59:13 +02:00
Michael Friedrich 51d0e71a00 Don't allow "ignore where" for groups when there's no "assign where"
fixes #9554
2015-07-16 13:56:12 +02:00
Jean-Marcel Flach b9a4a64249 Move url handler to /lib/remote
fixes #9647
2015-07-16 13:35:32 +02:00
Michael Friedrich 69e6fc4811 DB IDO: Do not update endpointstatus table on config updates
fixes #9634
2015-07-16 13:25:11 +02:00
Jean-Marcel Flach aa16438298 Change decode - check order in path decoding
refs #9470
2015-07-15 15:36:17 +02:00
Gunnar Beutner afc5db1299 Build fix for Windows 2015-07-15 11:24:47 +02:00
Gunnar Beutner 26338c0fa6 Add missing lock in ScriptUtils::Union
fixes #9622
2015-07-15 08:26:58 +02:00
Gunnar Beutner d98f9a3c92 Fix failed assertion in ScriptUtils::Intersection
fixes #9621
2015-07-15 08:20:16 +02:00
Michael Friedrich dcef213c8f Fix overflow in freshness_threshold column (smallint) w/ DB IDO MySQL
fixes #9576
2015-07-14 18:20:08 +02:00
Michael Friedrich 769594fa4f Livestatus: Add zone object table w/ endpoint members
refs #9286
2015-07-14 18:09:24 +02:00
Michael Friedrich a788de679c DB IDO: Add zones, zonestatus tables
refs #9286
2015-07-14 18:09:24 +02:00
Michael Friedrich c8d129bf9f Enable -Wno-deprecated-register for Clang and AppleClang
refs #9414
2015-07-14 15:02:43 +02:00
Gunnar Beutner ceea8a24d3 Add missing HTTP response headers
refs #9594
2015-07-13 08:29:48 +02:00
Gunnar Beutner 8dedd47b89 Fix incorrect return value for the macro() function
fixes #9584
2015-07-13 08:25:19 +02:00
Michael Friedrich 269e79647f Rename HttpRequest.Url to HttpRequest.RequestUrl
Otherwise gcc will break with the Url class, clang works.

refs #9447
2015-07-09 17:32:19 +02:00
Michael Friedrich 8bf949852a API: Implement password- and certificate-based authentication
fixes #9086
fixes #9085
refs #9594
2015-07-09 15:27:14 +02:00
Michael Friedrich f8f86d89a4 Add ApiUser::GetByClientCN()
refs #9471
refs #9086
2015-07-09 15:25:51 +02:00
Michael Friedrich 58a3cd7fef Add Base64::{En,De]code()
fixes #9594
2015-07-09 15:20:47 +02:00
Michael Friedrich 9b469453a7 Fix compiler warnings
refs #9447
2015-07-09 12:46:04 +02:00
Michael Friedrich 14baa4a79b Build fix
refs #9447
2015-07-09 12:28:15 +02:00
Gunnar Beutner b357012ded Implement HTTP support
refs #9447
2015-07-09 11:42:34 +02:00
Michael Friedrich 84d83a4453 'node wizard/setup' should always generate new certificates
Unless an existing certificate is found. The configuration
(api feature, user) is always generated including a backup.

fixes #9590
2015-07-08 15:32:47 +02:00
Michael Friedrich f123c8218d Split ApiSetupUtility::SetupMaster() into multiple functions
refs #9590
2015-07-08 15:32:11 +02:00
Michael Friedrich 3fe6b56628 DB IDO: Don't clear endpoint* tables on start/reload
fixes #9586
2015-07-08 13:58:12 +02:00
Jean-Marcel Flach 65227e311b Fix path interpretion in URL parser
The URL parser incorrectly used to interpret the path
"/" as a path "/" instead of as empty.
Test cases were added.

refs #9470
2015-07-08 13:14:05 +02:00
Jean-Marcel Flach a98d2f585d Implement URL parser
fixes #9470
2015-07-07 15:33:19 +02:00
Jean-Marcel Flach 2560a9733d Add reverse_iterator to String 2015-07-07 15:33:19 +02:00
Michael Friedrich 2add0c7b3d Fix -Wno-deprecated-register flag w/ sles11sp3 (Unix/Darwin only)
This only applies to git master (target 2.4)

refs #8842
refs #9559
fixes #9414

Signed-off-by: Michael Friedrich <michael.friedrich@gmail.com>
2015-07-05 15:14:18 +02:00
Michael Friedrich f4aeb1999c Cli: Don't add empty host/port endpoint attributes in node wizard
refs #9205
refs #9536
2015-07-03 12:58:54 +02:00
Michael Friedrich ed3882ba33 Fix config parser ignoring forbidden "ignore" in template definition
fixes #9535
2015-07-02 17:53:34 +02:00
Michael Friedrich 184f316538 Fix wrong vars changed handler in api events
fixes #9547
2015-07-02 14:51:47 +02:00
Michael Friedrich 8596e2b3dc Add log message for discarded cluster events (e.g. from unauthenticated clients)
fixes #9489
2015-07-02 13:04:38 +02:00
Michael Friedrich 8450cb5d6c MAke ApiUser::CheckPassword() const
refs #9471
2015-07-02 09:26:43 +02:00
Michael Friedrich 2eaae1f733 Update documentation for ApiUser object & node wizard
fixes #9471
2015-06-25 18:03:00 +02:00
Michael Friedrich ee035ae001 Fix unity build
refs #9471
2015-06-25 17:20:23 +02:00
Michael Friedrich 3e3588b9fb Cli: Still ask for CN in 'node wizard'
refs #9471
2015-06-25 13:28:16 +02:00
Michael Friedrich ec3f1c6320 Cli: 'node setup' on the master uses 'api setup' if api feature is disabled
refs #9471
2015-06-25 11:00:25 +02:00
Michael Friedrich 5249e4af11 Cli: 'node wizard' on the master uses 'api setup' if api feature is disabled
refs #9471
2015-06-25 11:00:12 +02:00
Michael Friedrich 0d977b9d48 Allow to pass cn to ApiSetupUtility::SetupMaster()
refs #9471
2015-06-25 10:40:50 +02:00
Michael Friedrich 663f09e475 Only run 'api setup' if the feature was not enabled
It is safe to assume that the user either did run
'node wizard' or 'node setup' in >= 2.3.x before, or
manually enabled the api feature and deployed the
certificates (otherwise Icinga2 wouldn't start either).

In that case we'll skip the api setup to ensure that we
don't override any existing configuration at all.

refs #9471
2015-06-25 10:21:18 +02:00
Michael Friedrich 6f43162efa Add feature enable/disable helpers
refs #9471
2015-06-25 10:14:19 +02:00