Michael Friedrich
438da67209
Merge pull request #7210 from Icinga/bugfix/boost-asio-deprecated
...
Quality: Replace deprecated get_io_service() with get_executor().context() for Boost ASIO
2019-05-29 15:40:19 +02:00
Michael Friedrich
99bb7fa99c
Merge pull request #7196 from Icinga/feature/network-cleanup
...
Cleanup old code (HTTP, Cluster)
2019-05-29 14:50:40 +02:00
Michael Friedrich
59b95ed1f0
Quality: Replace deprecated get_io_service() with get_executor().context() for Boost ASIO
...
refs #7041
2019-05-29 14:36:10 +02:00
Michael Friedrich
f5bc9b469c
Quality: Mark NetworkStream, TcpSocket & UnixSocket classes as deprecated
...
They're used inside the Livestatus feature which needs rework.
2019-05-29 14:17:36 +02:00
Michael Friedrich
ba44c3921c
Quality: Remove old MakeSSLContext() interface
2019-05-28 13:03:34 +02:00
Michael Insel
a6a0631e99
Unify copyright headers
...
Update (left over) copyright headers to generic copyright headers.
2019-05-24 16:25:32 +02:00
Michael Friedrich
5dbb6ad366
Quality: Remove old SocketEvent functionality
2019-05-24 15:50:43 +02:00
Michael Friedrich
c7a2fc556c
Quality: Purge old TlsStream functionality
2019-05-24 15:50:43 +02:00
Michael Friedrich
368383bedd
Merge pull request #7154 from Elias481/fix/serializer-object-locking-7003
...
Lock all kind of Objects during serialization
2019-05-10 14:39:27 +02:00
Elias Ohm
4c86c370bb
fixup errbuf length in the other files and avoid using the static buffer in one place (for thread safety and code consistency reasons)
2019-05-09 09:30:12 +02:00
Elias Ohm
e75f063552
bring some things in line
...
- account for documented buffer size openssl 1.1.x for error string (>=256 bytes)
- use nullptr instead of NULL
- fix/streamline null-checks
2019-05-09 00:22:24 +02:00
Jean Flach
9a0d894f10
Don't use deprecated RSA_generate_key
...
fixes #4635
2019-05-08 23:46:31 +02:00
Michael Friedrich
78e24c53f1
DB IDO: Do not deactivate objects during application reload/restart
...
This follows the same principle as with the shutdown handler,
and was introduced with the changed reload handling with 2.9.
Previously IsShuttingDown() was sufficient which got set at one
location.
SigUsr2 as handler introduced a new location where m_ShuttingDown
is not necessarily set yet. Since this handler gets called when
l_Restarting is enabled, we'll use this flag to avoid config update
events resulting in object deactivation (object->IsActive() always
returns false).
refs #5996
refs #6691
refs #6970
fixes #7125
2019-05-03 15:40:48 +02:00
Elias Ohm
cdd843a998
another small adjustment by the way just to ensure the object on stack ist the same as the one serialized further in case the object does not implement locking on mutation (besides it's mor efficient to not fetch the same value twice)
2019-05-01 12:09:24 +02:00
Elias Ohm
91296c2a25
Lock Objects during serialization
...
old behaviour was to only lock arrays, dictionaries and namespaces but not other objects
2019-04-28 22:13:19 +02:00
Michael Friedrich
3dc9927284
Merge pull request #7124 from Icinga/bugfix/namespace-thread-safe
...
Namespace: place ObjectLock in all methods
2019-04-26 08:26:59 +02:00
Michael Friedrich
0438c866f8
Merge pull request #7102 from Icinga/feature/boost-fs-7101
...
Replace self-written filesystem ops with boost.filesystem
2019-04-25 15:53:55 +02:00
Alexander A. Klimov
5afef1015d
Replace unlink() with boost::filesystem::remove()
...
refs #7101
2019-04-25 09:53:02 +02:00
Alexander A. Klimov
5a17722c1f
Replace _unlink() + rename() with boost::filesystem::rename()
...
refs #7101
2019-04-25 09:53:02 +02:00
Alexander A. Klimov
f1f7d0c4d6
Work around boost::filesystem::path bug on VS
...
refs #7101
2019-04-25 09:53:01 +02:00
Alexander A. Klimov
af78cd6050
Use Boost.Filesystem
...
refs #7101
2019-04-25 09:53:01 +02:00
Michael Friedrich
0d9d39c64b
Fix preprocessor macro comment
2019-04-25 08:25:28 +02:00
Alexander A. Klimov
ba842403ce
Fix circular #include
...
refs #6985
2019-04-25 08:25:28 +02:00
Alexander A. Klimov
5151f6567e
ThreadPool: use the Boost ASIO thread pool under the hood
2019-04-25 08:25:28 +02:00
Michael Friedrich
56894bea17
Buildfix
...
Obviously tired.
fixes #7138
fixes #7139
2019-04-24 12:10:57 +02:00
Michael Friedrich
df25b183cb
Add log message for log rotate; update docs
...
refs #6737
2019-04-24 11:53:27 +02:00
Alexander A. Klimov
7a8f8fd734
Timer::TimerThreadProc(): use C++11 lambda instead of bind()
...
refs #6737
2019-04-24 11:51:17 +02:00
Alexander A. Klimov
622f684124
StreamLogger#BindStream(): set #m_FlushLogTimer only if needed
...
refs #6737
2019-04-24 11:47:02 +02:00
Elias Ohm
52e3db279a
Fix for double-free (and possibly other memory-corruption related) crashes at logrotate time
...
this is a direct fix of the issue revealing the problem that leads to crash
verification done with a patched icinga2 where the execution-order of the code lines of counter-parts involved in re-incrementing/decrementing Timer:Ptr is forced to be the one that leads to the obeserverd segfaults
refs #6737
2019-04-24 11:42:54 +02:00
Michael Friedrich
856877d1fe
Merge pull request #7134 from Icinga/feature/boost-asio-influxdbwriter
...
Use new I/O engine in InfluxdbWriter
2019-04-23 14:31:42 +02:00
Michael Friedrich
0f804d126b
Merge pull request #7133 from Icinga/feature/boost-asio-pki
...
Use new I/O engine in PkiUtility::FetchCert() and PkiUtility::RequestCertificate()
2019-04-23 14:27:48 +02:00
Michael Friedrich
dee8fbf248
Merge pull request #7128 from Icinga/feature/re-write-objectlock-7123
...
Re-write ObjectLock's implementation details
2019-04-23 11:53:40 +02:00
Alexander A. Klimov
c1fa07899c
Introduce OptionalTlsStream
2019-04-23 11:25:26 +02:00
Alexander A. Klimov
d8c9fdf1d4
Make Object#m_Mutex std::recursive_mutex
...
refs #7123
2019-04-17 18:26:29 +02:00
Alexander A. Klimov
7e6868bc99
Make Object#m_LockOwner std::atomic<std: 🧵 :id>
...
refs #7123
2019-04-17 18:26:23 +02:00
Alexander A. Klimov
f9f998334d
ObjectLock: deduplicate constructors
...
refs #7123
2019-04-17 16:47:41 +02:00
Alexander A. Klimov
5afda77943
Namespace: place ObjectLock in all methods
2019-04-16 17:38:58 +02:00
Michael Friedrich
b906714254
Fix that MaxConcurrentChecks constant is overridden from 'checker' feature
...
Note: This drops the deprecated concurrent_checks setting from the checker feature
entirely and refactors the underlaying code handling.
Also affects ReloadTimeout which is new for 2.11.
fixes #7111
2019-04-16 15:04:57 +02:00
Michael Friedrich
c2f180395a
Merge pull request #7000 from Icinga/bugfix/goto-loop
...
Don't abuse goto for building simple loops
2019-04-03 09:46:17 +02:00
Alexander A. Klimov
cfd0d86b9b
Use C++11 atomics for our intrusive pointers
2019-04-02 13:54:30 +02:00
Alexander A. Klimov
f4a78380e9
Add non-async overloads for NetString::ReadStringFromStream() and NetString::WriteStringToStream()
2019-04-01 17:11:10 +02:00
Alexander A. Klimov
d1e87bdc45
Connect(): add non-async overload
2019-04-01 17:11:09 +02:00
Alexander A. Klimov
f2d9d91e83
Introduce UnbufferedAsioTlsStream#GetPeerCertificate()
2019-04-01 17:11:09 +02:00
Alexander A. Klimov
d428bdf384
Add missing includes
2019-04-01 13:31:16 +02:00
Alexander A. Klimov
bf23e5392b
UnbufferedAsioTlsStream: don't rely on *this in decltype()s for methods' return types
2019-04-01 13:31:16 +02:00
Alexander A. Klimov
7ec1e638a8
Turn shortcut UnbufferedAsioTlsStream::Parent into a base class
2019-04-01 13:31:16 +02:00
Alexander A. Klimov
e6d78bf361
Move some TCP/TLS logic out of ApiListener
...
... for re-using it
2019-04-01 13:31:16 +02:00
Alexander A. Klimov
79220ee647
io-engine.hpp: fix missing namespace
2019-04-01 13:31:16 +02:00
Alexander A. Klimov
8b3efe5759
Introduce AsioConditionVariable
2019-04-01 13:31:16 +02:00
Alexander A. Klimov
d3392d1579
Rename AsioTlsStreamHack to UnbufferedAsioTlsStream
2019-04-01 13:31:16 +02:00