icinga2/lib
Julian Brost e6300aacf9 InfluxdbCommonWriter: only flush from work queue
There is no explicit synchronization of access to m_DataBuffer which is fine if
it is only accessed from the single-threaded work queue. However, Stop() also
called Flush() in another thread, leading to concurrent write access to
m_DataBuffer which can result in a crash due to use after free/double free.

Changes in this commit:
* Flush() is renamed to FlushWQ() to show that it should only be called from
  the work queue. Additionally, it now asserts that it is running on the work
  queue.
* Visibility of some data members is changed from protected to private. No
  other classes have to access these at the moment. By this change, accidental
  concurrent access from derived classes in the future is prevented.
* Stop() now flushes by posting FlushWQ() to the work queue and joining it.
2022-01-03 12:24:26 +01:00
..
base Dictionary: Make sure underlaying map is ordered 2021-11-12 13:34:57 +01:00
checker Merge pull request #8601 from Icinga/feature/replace-std-boost-bind-with-lambdas-7006 2021-03-18 17:56:13 +01:00
cli Merge pull request #7874 from Icinga/feature/sd_notify-7329 2021-06-28 18:20:15 +02:00
compat Merge pull request #8447 from Icinga/feature/deprecated-relative-removal 2021-06-22 12:05:33 +02:00
config Rename silent parameter of ConfigItem::ActivateItems() 2021-06-21 16:07:36 +02:00
db_ido Merge pull request #8855 from Icinga/bugfix/inconsistent-ido-schema-versions-8852 2021-07-14 18:09:27 +02:00
db_ido_mysql Provide IDO MySQL schema version fix 2021-08-05 13:46:07 +02:00
db_ido_pgsql IDO PgSQL: always use regular string literals 2021-08-05 11:39:32 +02:00
icinga Set downtime trigger time deterministically 2021-12-08 14:15:50 +01:00
icingadb Merge pull request #9009 from Icinga/bugfix/icingadb-runtime-updates-delete-relationships 2021-11-12 17:52:59 +01:00
livestatus Merge pull request #8601 from Icinga/feature/replace-std-boost-bind-with-lambdas-7006 2021-03-18 17:56:13 +01:00
methods Replace std/boost::bind() function with lambda expression 2021-03-10 16:29:40 +01:00
mysql_shim account for adjusted interface of mysql8 (now utilizes c99 bools instead of my_bool labelled chars) 2019-04-29 00:18:15 +02:00
notification Notifications: Make sure not to send reminder notification, if problem notification has been suppressed 2021-03-30 15:32:49 +02:00
perfdata InfluxdbCommonWriter: only flush from work queue 2022-01-03 12:24:26 +01:00
pgsql_shim Replace Copyright header with a short version, part II 2019-02-25 15:09:36 +01:00
remote Adjust incosistent pki log messages (#8965) 2021-11-22 16:06:55 +01:00
CMakeLists.txt Rename ICINGA2_WITH_REDIS to ICINGA2_WITH_ICINGADB 2019-11-02 14:00:24 +01:00