6327 Commits

Author SHA1 Message Date
Julian Brost
cf517050bc
Merge pull request #9711 from Icinga/connect-cancel
Connect(): don't try next DNS record if operation is canceled
2023-03-01 15:49:53 +01:00
Alexander A. Klimov
79f1e0666a Connect(): don't try next DNS record if operation is canceled
Instead return immediately to meet the caller's expectations.
2023-02-28 10:57:54 +01:00
Alexander A. Klimov
d3bb94fc39 Basic auth 2023-02-22 12:41:04 +01:00
Alexander A. Klimov
091927fc73 Revert "WIP"
This reverts commit 65dd6b088df32e4dce95c0e92c1d48a3c4a5c7e8.
2023-02-22 12:26:40 +01:00
Alexander A. Klimov
65dd6b088d WIP 2023-02-21 17:30:55 +01:00
Alexander A. Klimov
fd815dd234 WIP 2023-02-21 17:29:04 +01:00
Alexander A. Klimov
86d873a10a WIP 2023-02-21 17:26:31 +01:00
Alexander A. Klimov
fc48c9a8c1 WIP 2023-02-21 16:52:21 +01:00
Alexander A. Klimov
88a5ae8171 WIP 2023-02-21 16:50:02 +01:00
Alexander A. Klimov
a551131b4f WIP 2023-02-21 16:49:04 +01:00
Edgar Fuß
20d7e1b5e6 Fix use of std::unordered_map::insert() as pointed out by Nathaniel Wesley Filardo in GitHup Pull Request #8999 2023-02-21 16:23:40 +01:00
Edgar Fuß
5bba609e60 Add missing #include 2023-02-21 16:23:40 +01:00
Edgar Fuß
cfef9fdadc Introduce redundancy groups for Dependency Objects
Traditional behaviour was to regard all dependecies as cumulative (e.g., the parent considered unreachable if any one dependency is violated), commit ed5892238916ab667a4c9d904bd73acd3ed162f2 made all dependencies regarded redundant (e.g., the parent considered unreachable only if all dependency are violated). This may lead to unrelated services (or even hosts vs. services) inadvertantly regarded to be redundant to each other.

Most importantly, applying the explicit "disable-host-service-checks" dependency described in the "Monitoring Basics" chapter will defeat all other dependencies.

This commit introduces a new "redundancy_group" attribute for dependencies.
Specifying a redundancy_group causes a dependency to be regarded as redundant only inside that redundancy group.
Dependencies lacking a redundancy_group attribute are regarded as essential for the parent.

This allows for both cumulative and redundant dependencies and even a combination (cumulation of redundancies, like SSH depeding on both LDAP and DNS to function, while operating redundant LDAP servers as well as redundant DNS resolvers).

This commit lacks changes to the tests.
2023-02-21 16:23:36 +01:00
Alexander A. Klimov
5eda4142a3 WIP 2023-02-21 13:17:22 +01:00
Alexander A. Klimov
4373defef4 WIP 2023-02-20 17:43:41 +01:00
Alexander A. Klimov
073e28bc9f WIP 2023-02-20 17:35:30 +01:00
Alexander A. Klimov
b88b900b67 WIP 2023-02-20 17:31:35 +01:00
Alexander A. Klimov
95f3bbe023 WIP 2023-02-20 17:19:37 +01:00
Alexander A. Klimov
f9143cee9a WIP 2023-02-20 17:19:37 +01:00
Alexander A. Klimov
52f964f58e WIP 2023-02-20 17:19:37 +01:00
Alexander A. Klimov
d652d7daaa WIP 2023-02-20 17:19:37 +01:00
Alexander A. Klimov
0a387fd877 WIP 2023-02-20 17:19:37 +01:00
Alexander A. Klimov
589e45c4b4 WIP 2023-02-20 17:19:37 +01:00
Alexander A. Klimov
507c19f155 WIP 2023-02-20 17:19:37 +01:00
Alexander A. Klimov
ad9b581d43 WIP 2023-02-20 17:19:37 +01:00
Alexander A. Klimov
eac3ac97b3 WIP 2023-02-20 17:19:37 +01:00
Alexander A. Klimov
4c280320f9 WIP 2023-02-20 17:19:37 +01:00
Alexander A. Klimov
f5c6600ff3 WIP 2023-02-20 17:19:37 +01:00
Alexander A. Klimov
27ca87b803 WIP 2023-02-20 17:19:36 +01:00
Alexander A. Klimov
7f53d14580 WIP 2023-02-20 17:19:36 +01:00
Alexander A. Klimov
281edad995 WIP 2023-02-20 17:19:36 +01:00
Alexander A. Klimov
bdb315f1c2 WIP 2023-02-20 17:19:36 +01:00
Alexander A. Klimov
35708c8cf5 WIP 2023-02-20 17:19:36 +01:00
Alexander A. Klimov
99853adf57 WIP 2023-02-20 17:19:36 +01:00
Alexander A. Klimov
05fd34e2ee ITL: add CheckCommand icinga4win-api 2023-02-20 17:19:36 +01:00
Julian Brost
bda8be343b
Merge pull request #9662 from Icinga/Repair#9627
Repair DSL Namespace values being constant broken in #9627
2023-02-20 16:35:36 +01:00
Julian Brost
d9767cff3f
Merge pull request #9675 from Icinga/third-party/nlohmann_json
Update third-party/nlohmann_json to v3.9.1
2023-02-20 15:31:32 +01:00
Julian Brost
a84a0a3cee
Merge pull request #8302 from Icinga/bugfix/windows-systemroot-aliases-6259
Macros: support $env.ENV_VAR_NAME$
2023-02-20 13:09:15 +01:00
Alexander A. Klimov
f2974c07cf Centralise default icinga.* and env.* macros 2023-02-17 15:33:36 +01:00
Julian Brost
3023009804
Merge pull request #9653 from Icinga/9631
Setup all signal handlers with SA_RESTART flag
2023-02-14 17:55:09 +01:00
Alexander A. Klimov
34d0b942b9 Update third-party/nlohmann_json to v3.9.1
the latest version w/o Apache 2.0 licensed code which conflicts with GPL 2.
2023-02-14 16:19:44 +01:00
Alexander Aleksandrovič Klimov
fd5350d588
Fix typo 2023-02-13 13:00:28 +01:00
Julian Brost
e074e892ce
Merge pull request #9658 from Icinga/unfreeze
Dictionary#*(): remove bool overrideFrozen if unused
2023-02-10 19:42:00 +01:00
Julian Brost
213f3f9444
Merge pull request #8389 from Icinga/feature/forbid-dep-cycles
Forbid dependency cycles
2023-02-10 17:26:04 +01:00
Alexander A. Klimov
b2b49caf61 Macros: support $env.ENV_VAR_NAME$
refs #6259
2023-02-10 17:21:29 +01:00
Alexander A. Klimov
f3f2c943c7 ScriptGlobal::Set(): don't explicitly give Namespace#Set() its default values 2023-02-10 15:55:10 +01:00
Alexander A. Klimov
e61b380808 Call Namespace#Set(), not #SetFieldByName()
Namespace#SetFieldByName() calls #Set() anyway.
2023-02-10 15:53:30 +01:00
Alexander A. Klimov
683095a165 Make globals.Internal values non-const by default
That namespace is internal anyway.

Previous commit, icinga2 console:
Error: Constants must not be removed.

This commit fixes it.
2023-02-10 15:47:25 +01:00
Alexander A. Klimov
02df94a46a Repair DSL Namespace values being constant broken in #9627
master before #9627 (a0286e9c6):

<1> => namespace n { x = 42; x = 42 }
                             ^^^^^^
Constant must not be modified.
<2> =>

HEAD of #9627 (24b57f0d3):

<1> => namespace n { x = 42; x = 42 }
null
<2> =>
2023-02-10 15:43:01 +01:00
Julian Brost
0dd35bb960
Merge pull request #9657 from Icinga/shared_mutex-Dictionary
Use a shared_mutex for read `Dictionary` operations
2023-02-10 15:15:52 +01:00