Commit Graph

1142 Commits

Author SHA1 Message Date
Gunnar Beutner eb2f2dd8a2 Implement get_object() and get_objects()
fixes #7564
2015-01-28 08:36:17 +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 b4c74efde0 Implement some more utility functions
refs #8169
2015-01-16 10:35:20 +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 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 b17fc34a84 Disable Application::SetResourceLimits on non-Linux systems
fixes #8178
2015-01-09 11:44:20 +01:00
Gunnar Beutner 1073f031c8 Build fix for Windows 2014-12-22 14:14:16 +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 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 978aeed741 Implement the __get_objects function
refs #8127
2014-12-19 13:08:31 +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 cb7f93dc19 Implement CMake options for some of the modules
fixes #7794
fixes #7795
2014-12-19 09:46:41 +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 9eeb64a780 Update livestatus and statusdata to properly support booleans
fixes #8100
2014-12-17 08:54:28 +01:00
Gunnar Beutner f800630c10 Implement Livestatus support for the "repl" command
refs #7805
2014-12-16 19:28:46 +01:00
Gunnar Beutner d82defe6a9 Add readline support for the "repl" command
fixes #8091
2014-12-16 13:26:26 +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 77806b9de7 Get rid of the local/global keywords
refs #8074
2014-12-15 16:09:17 +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 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 05485ea2d6 Disallow calling strings as functions
fixes #8040
2014-12-12 20:45:11 +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
Gunnar Beutner a94b26ff47 Add missing DebugInfo for field accesses
refs #8062
2014-12-12 08:58:39 +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 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 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 d88856a994 Fix failing unit tests
refs #8043
2014-12-10 11:25:20 +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 44b87aeff6 Fix typeof() for numbers
fixes #8028
2014-12-09 16:43:09 +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
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 7d93788650 Fix crash in the unit tests
fixes #7769
2014-12-04 21:50:22 +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 ab63fca3d5 Make the config parser thread-safe
fixes #7822
2014-11-28 06:48: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 c220a99f2d Implicitly convert Number argument to string for operator +
fixes #7823
2014-11-25 12:33:08 +01:00
Gunnar Beutner fddead5303 Fix some compiler warnings
fixes #7826
2014-11-24 18:25:08 +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 16cf274efc Improve test coverage for the array class 2014-11-23 09:50:11 +01:00
Gunnar Beutner f5766f9118 Refactor the stack frame handling for scripts
fixes #7748
2014-11-22 19:24:03 +01:00
Gunnar Beutner 334e61037a Split DynamicObject::OnConfigLoaded into two separate events
refs #7780
2014-11-21 18:31:37 +01:00
Gunnar Beutner 80e6854ce6 Fix incorrect return type for ScriptSignal::Invoke
refs #7744
2014-11-20 19:43:50 +01:00
Gunnar Beutner 5321bc4643 Don't validate strings in the JSON parser
fixes #7730
2014-11-20 10:09:13 +01:00
Gunnar Beutner 6cadde82bd Avoid rebuilding libbase when the version number changes
fixes #7647
2014-11-20 10:02:34 +01:00
Gunnar Beutner f84cc8de39 Implement support for signals
fixes #7744
2014-11-20 06:54:48 +01:00
Gunnar Beutner 77b746841a Provide a specialized function overload for Convert::ToDouble(const Value&) 2014-11-17 14:00:13 +01:00
Gunnar Beutner 1d16875b95 Comment out InitializeProcThreadAttributeList (for now)
fixes #7681
2014-11-17 09:45:35 +01:00
Gunnar Beutner 9386a58bf2 Implement an experimental variable to limit the number of threads 2014-11-16 13:14:42 +01:00
Gunnar Beutner 814589ac17 Use Array::Contains in InExpression/NotInExpression 2014-11-15 08:22:32 +01:00
Gunnar Beutner 0324cbff7c Fix crash in StreamLogger::~StreamLogger 2014-11-13 20:12:23 +01:00
Gunnar Beutner 8e4148d33c Use Application::Exit to implement the exit() script function 2014-11-13 15:59:40 +01:00
Gunnar Beutner 7321e45abc Implement support for executing remote commands
fixes #7559
2014-11-13 14:54:55 +01:00
Gunnar Beutner f20d9010c0 Fix deadlock in ThreadPool::Stop 2014-11-13 10:00:49 +01:00
Gunnar Beutner 02fef3f84a Remove unions from the DebugInfo class 2014-11-13 09:02:43 +01:00
Gunnar Beutner e692ca16cd Add missing Stop call in the Logger class
fixes #7652
2014-11-13 09:02:23 +01:00
Gunnar Beutner a14928ec10 Improve error messages for the Process class 2014-11-13 08:53:12 +01:00
Gunnar Beutner 6ef4e313d9 Remove obsolete mutex profiling code
refs #7622
2014-11-13 06:13:18 +01:00
Gunnar Beutner f592a13481 Make sure all threads are dead before calling fork()
fixes #7653
2014-11-12 21:27:36 +01:00
Gunnar Beutner e5bd573756 Implement the __get_object function 2014-11-12 19:08:36 +01:00
Gunnar Beutner 4f417b4912 Add release barrier in ObjectLock::Unlock
refs #7648
2014-11-12 13:18:34 +01:00
Gunnar Beutner 1c0102ff9b Fix incorrect field name
refs #7648
2014-11-12 12:46:33 +01:00
Gunnar Beutner a2c5887e51 Fix crash when daemonizing Icinga
refs #7648
2014-11-12 12:44:14 +01:00
Gunnar Beutner c5a5d1833b Add missing barriers for Object::m_LockOwner
refs #7648
2014-11-12 12:32:14 +01:00
Gunnar Beutner dfd24e6359 Fix _DEBUG define on *NIX 2014-11-12 11:34:59 +01:00
Gunnar Beutner 02c559eff9 Fix crash in the unit tests
fixes #7648
2014-11-12 09:33:13 +01:00
Gunnar Beutner e4bfb5f922 Fix static initializers for Utility::AddDeferredInitializer
fixes #7646
2014-11-12 08:00:56 +01:00
Gunnar Beutner 83a2e4c350 Allow thin mutex calls to be inlined
refs #7622
2014-11-12 06:50:52 +01:00
Gunnar Beutner 02a7d97b17 Allow locks to be inlined
refs #7622
2014-11-12 06:33:20 +01:00
Gunnar Beutner ecd31b86ad Remove debug code
refs #7622
2014-11-12 00:06:51 +01:00
Gunnar Beutner 2d7ce62438 Add missing default arguments
refs #7622
2014-11-11 23:48:17 +01:00
Gunnar Beutner ca75584d88 Allow String class members to be inlined 2014-11-11 23:46:06 +01:00
Gunnar Beutner 36d108528f Allow Value class members to be inlined 2014-11-11 23:28:53 +01:00
Gunnar Beutner ee980a788b Clean up the code a bit 2014-11-11 23:06:47 +01:00
Gunnar Beutner 9932f60522 Fix _DEBUG define
refs #7634
2014-11-11 16:40:27 +01:00
Gunnar Beutner a5a869f390 Enable ASSERT() for *NIX debug builds
refs #7634
2014-11-11 16:36:20 +01:00
Gunnar Beutner 11710ef683 Fix static initializers
refs #7634
2014-11-11 13:24:44 +01:00
Gunnar Beutner 65be09215f Avoid unnecessary type lookups
refs #7622
2014-11-10 20:07:07 +01:00
Gunnar Beutner 478f03b49a Replace boost::shared_ptr with boost::intrusive_ptr
refs #7622
2014-11-09 16:54:41 +01:00
Gunnar Beutner 187d443447 Implement support for thin mutexes
refs #7622
2014-11-09 16:54:33 +01:00
Gunnar Beutner e1c95d4fa0 Improve config compiler's memory usage 2014-11-08 13:21:51 +01:00
Gunnar Beutner ade12dc27a Remove unused attributes 2014-11-07 21:43:00 +01:00
Gunnar Beutner 9e2aa4c5ed Fix problem with unresolved symbols
refs #7561
2014-11-07 18:37:28 +01:00
Gunnar Beutner 266b1754c7 Speed up type lookups
refs #7561
2014-11-07 12:39:32 +01:00
Gunnar Beutner 3cf08ad050 Properly report errors when CreateProcess() fails
fixes #7599
2014-11-07 10:01:44 +01:00
Gunnar Beutner 61e090595e Fix build problem on Windows
fixes #7597
2014-11-06 14:21:22 +01:00
Gunnar Beutner 064407d3c9 Fix dynamic_cast problem
fixes #7586
2014-11-06 09:05:12 +01:00
Gunnar Beutner 9e16e1d395 Remove some obsolete references to cJSON
refs #7452
2014-11-05 16:47:11 +01:00
Gunnar Beutner cfc418c9eb Fix operator shared_ptr<T> for the Value class
fixes #7586
2014-11-05 16:09:22 +01:00
Gunnar Beutner a6f20c7a22 Implement support for arbitrarily complex indexers
fixes #7566
2014-11-04 15:20:33 +01:00
Gunnar Beutner 6cafce5d7e Build fix for RHEL 5 2014-11-04 11:18:35 +01:00
Gunnar Beutner 19a6a65aad Implement the random() function 2014-11-03 17:21:33 +01:00
Gunnar Beutner aa94563eb5 Implement the keys() function
fixes #7557
2014-11-03 13:05:14 +01:00
Gunnar Beutner 60859043c8 Fix non-unity builds 2014-11-03 07:07:54 +01:00
Gunnar Beutner 170c5a59e4 Implement typeof() function 2014-11-03 00:45:14 +01:00
Gunnar Beutner 4677014b6d Implement support for arrays in custom variables
fixes #6544
2014-11-02 07:27:50 +01:00
Michael Friedrich bc83c9a698 CLI Commands: Remove timestamp prefix when logging output
fixes #7376
2014-10-31 22:01:36 +01:00
Gunnar Beutner 6f160eda47 Remove static_cast optimization for Value's operator shared_ptr<T> 2014-10-31 14:34:28 +01:00
Gunnar Beutner 3fc3f05bb4 Implement field attribute to hide fields in command auto-completion
fixes #7403
2014-10-31 08:53:25 +01:00
Gunnar Beutner 9f7c97051e Hide attributes in command auto-completion which cannot be set
refs #7403
2014-10-31 08:49:14 +01:00
Michael Friedrich 3709ec73ea Add Utility::SetFileOwnership() on Linux
refs #7476
2014-10-30 19:52:22 +01:00
Gunnar Beutner ff12522a62 Fix operator== for Value and String comparisons
refs #7472
2014-10-30 13:04:00 +01:00
Michael Friedrich 4fe486c4dd Cli: Fix overwriting api.conf; Move black/whitelist functionality into AgentUtility class
refs #7253
fixes #7481
2014-10-29 19:21:52 +01:00
Gunnar Beutner ceca27e25b Fix Utility::GetFQDN() on OS X
fixes #7495
2014-10-29 16:54:33 +01:00
Gunnar Beutner 8251a60044 Make sure that OnStateLoaded is called for all objects
fixes #7482
2014-10-29 11:14:32 +01:00
Gunnar Beutner 7cca2d275f Fix incorrect #ifdef
refs #7454
2014-10-28 08:12:54 +01:00
Gunnar Beutner b0179cc1fe 64-bit build fix for YAJL < 2.0
refs #7454
2014-10-28 06:33:40 +01:00
Gunnar Beutner 65e2e636ea Fix compatibility with older versions of the YAJL library
refs #7454
2014-10-28 05:59:29 +01:00
Gunnar Beutner 3f032692ce Implement agent settings for "agent set" and "agent list"
refs #7248
2014-10-27 15:12:19 +01:00
Gunnar Beutner 05d642f69d Use system-provided version of YAJL where available
fixes #7454
2014-10-27 12:42:57 +01:00
Gunnar Beutner 196bd89c7a Use OpenSSL's default algorithms for certificate signatures
fixes #7434
2014-10-27 11:32:39 +01:00
Gunnar Beutner 8ce4b3f122 Implement support for serial files
fixes #7393
2014-10-27 10:52:07 +01:00
Gunnar Beutner 8b339a6cd5 Throw saved exception in JSON decoder
refs #7452
2014-10-27 09:28:32 +01:00
Gunnar Beutner f05ccd07f9 Build fix for GCC
refs #7452
2014-10-27 05:17:23 +01:00
Gunnar Beutner 8a2afae83b Fix incorrect include path
refs #7452
2014-10-26 20:05:38 +01:00
Gunnar Beutner 7559273359 Replace cJSON with YAJL
fixes #7452
2014-10-26 20:00:35 +01:00
Gunnar Beutner 315c84eb4a Fix problems with the serializer when using 'type' as an attribute
fixes #7372
2014-10-25 09:14:56 +02:00
Gunnar Beutner e80fd0fbfa Update the constants.conf file for "agent setup"
refs #7423
2014-10-23 15:05:25 +02:00
Michael Friedrich 9227d990dc Add Utility::CopyFile()
refs #7423
2014-10-22 19:25:29 +02:00
Gunnar Beutner 9c7d97b8bc Update the Windows agent wizard
refs #7241
2014-10-21 16:07:39 +02:00
Gunnar Beutner 2972c6bfe8 Implement the "variable" CLI command
fixes #7370
2014-10-20 21:14:56 +02:00
Gunnar Beutner 26b9c5a81b Move clicommand.{cpp,hpp} to lib/cli
refs #7246
2014-10-20 14:06:21 +02:00
Gunnar Beutner b96e9d26a9 Improve error messages for CLI commands
fixes #7395
2014-10-20 13:40:17 +02:00
Gunnar Beutner 06ba435cdd Make warning and critical log messages bold on terminals 2014-10-20 13:15:37 +02:00
Gunnar Beutner 9368ff0e03 Update some more log messages 2014-10-20 10:09:57 +02:00
Gunnar Beutner 3653058bd3 Remove unnecessary prototype for Log() 2014-10-19 18:01:09 +02:00
Gunnar Beutner 2d5e9514a5 Refactor logging code 2014-10-19 17:52:17 +02:00
Gunnar Beutner 739cb43289 Rename qstring.{cpp,hpp} to string.{cpp,hpp} 2014-10-19 14:52:07 +02:00
Gunnar Beutner b18f57a745 Remove logger_fwd.hpp 2014-10-19 14:50:39 +02:00
Gunnar Beutner eb77b1534a Add color code for LogDebug
fixes #7416
2014-10-19 02:39:45 +02:00
Michael Friedrich b0d7d8dabc Build fix for RHEL 2014-10-19 00:15:42 +02:00
Gunnar Beutner 29bf22f324 Fix: Don't use VT100 color codes in log files
refs #7396
2014-10-18 00:34:15 +02:00
Gunnar Beutner 088efc3c69 Avoid unnecessary Poll() calls 2014-10-18 00:29:39 +02:00
Gunnar Beutner 2c8f766200 Fix another deadlock in TlsStream 2014-10-17 20:56:22 +02:00
Gunnar Beutner 8cc6368954 Implement generic color support for terminals
fixes #7396
2014-10-17 20:44:17 +02:00
Gunnar Beutner 92896311f3 Implement support for C/C++ comments in the TI compiler
fixes #5018
2014-10-17 19:44:31 +02:00
Gunnar Beutner 152846ee38 Build fix for non-unity builds 2014-10-17 18:55:34 +02:00
Gunnar Beutner d16670c4b7 Improve auto-completion suggestions for the repository command
refs #7255
2014-10-17 16:04:11 +02:00
Gunnar Beutner 7db8588980 Implement auto-completion for positional arguments
refs #7255
2014-10-17 15:54:46 +02:00
Gunnar Beutner 4632b93b89 Add "repository <type> <add/remove/list>" commands
refs #7255
2014-10-17 14:21:35 +02:00
Gunnar Beutner 8e7fd1f40d Implement auto-completion support for type fields
fixes #7401
2014-10-17 13:03:01 +02:00
Gunnar Beutner 5c8dbb9552 Build fix for Rune 2014-10-16 15:33:03 +02:00
Gunnar Beutner d414149f74 Fix compiler warning
refs #7244
2014-10-16 14:21:33 +02:00
Gunnar Beutner 97cf93089b Build fix for FreeBSD 2014-10-16 13:36:25 +02:00
Gunnar Beutner f67a11c183 Don't log error messages when TLS connections are closed
refs #7244
2014-10-16 13:11:14 +02:00
Gunnar Beutner f433679b13 Implement the "pki request" and "pki ticket" commands
refs #7244
2014-10-16 12:27:34 +02:00
Gunnar Beutner fd6fe82606 Fix unauthenticated TLS connections
refs #7244
2014-10-16 09:58:01 +02:00
Gunnar Beutner 311cce5d41 Allow TLS connections with unverified certificates
refs #7244
2014-10-16 09:01:18 +02:00
Gunnar Beutner 575a9eb849 Implement error handling for the "pki sign-csr" command
refs #7247
2014-10-15 18:23:49 +02:00
Gunnar Beutner c1b92756b5 Implement the "pki sign-csr" command
refs #7274
2014-10-15 16:01:15 +02:00
Gunnar Beutner 65579942ad Fix another problem with auto-completing arguments
refs #7378
2014-10-15 09:41:54 +02:00
Gunnar Beutner ce6f7ace89 Replace spaces with tabs
refs #7250
2014-10-15 08:48:01 +02:00
Gunnar Beutner 14d8366d05 Fix incorrect auto-completion suggestions
fixes #7378
2014-10-15 08:32:46 +02:00
Gunnar Beutner 2a60ce8625 Improve auto-completion for arguments
fixes #7375
2014-10-14 16:45:00 +02:00
Michael Friedrich d9f5409e8b CLI framework: Change unrecognized into positional options
refs #7371
2014-10-14 14:27:37 +02:00
Michael Friedrich 3513d1f2f9 CLI framework: Add support for unrecognized parameters
Required for feature enable command for example.

fixes #7371
2014-10-13 18:07:52 +02:00
Gunnar Beutner fab9d7eedf Set CA flag for new CA certificates
refs #7247
2014-10-13 13:58:18 +02:00
Gunnar Beutner a01fb6d6e6 Make sure we're using the right user/group for CLI commands
refs #7246
2014-10-13 13:44:45 +02:00
Gunnar Beutner 4ba3d74c0e Implement the "pki new-csr" command
refs #7247
2014-10-13 12:34:31 +02:00
Gunnar Beutner 14ac7dd974 Replace spaces with tabs 2014-10-13 09:47:05 +02:00
Gunnar Beutner 50a1b243ed Hide some of the internal command-line arguments
refs #7246
2014-10-10 11:08:24 +02:00
Gunnar Beutner 4c8d0b9283 Fix auto-completion for arguments
refs #7246
2014-10-10 10:07:56 +02:00
Gunnar Beutner 88742d6dca Make sure the 'autocomplete' variable is initialized
refs #7246
2014-10-08 15:46:29 +02:00
Gunnar Beutner a4081f1445 Implement support for CLI commands
fixes #7246
2014-10-08 15:33:10 +02:00
Gunnar Beutner 15358c6e95 Fix missing error messages (part 2)
refs #7331
2014-10-01 16:01:47 +01:00
Gunnar Beutner 879684efcd Fix problems with PNP4Nagios
fixes #7268
2014-09-17 15:38:39 +02:00
Gunnar Beutner ac32d4b382 Improve thread spawning behavior
fixes #7186
2014-09-11 11:45:21 +02:00
Gunnar Beutner 6bb35a0d52 Another Windows build fix 2014-09-10 15:45:47 +02:00
Gunnar Beutner dc4fe38d8f Fix crash in TlsStream::IsEof
refs #6862
2014-09-10 08:51:25 +02:00
Gunnar Beutner 092983d5ad Properly deal with closed TLS streams
fixes #6892
2014-09-09 15:28:55 +02:00
Gunnar Beutner 308ba45102 Improve error message for duplicate objects
refs #6070
2014-09-09 14:49:21 +02:00
Gunnar Beutner 8c4765c607 Add SUN_LEN compatibility macro for Haiku
refs #7115
2014-09-06 02:30:09 +02:00
Gunnar Beutner 666c92fa76 Check whether the nice() function is available
refs #7115
2014-09-06 02:20:25 +02:00
Gunnar Beutner 418e7bc417 Add #include for strings.h (strcasecmp)
refs #7115
2014-09-06 02:11:34 +02:00
Gunnar Beutner 9133c01f00 Fix spurious SSL errors
fixes #6981
2014-09-05 08:19:47 +02:00
Gunnar Beutner 039a13cf88 Implement support for systems where pipe2 returns ENOSYS
fixes #7065
fixes #6696
2014-09-03 08:10:55 +02:00
Gunnar Beutner 4da18d6de1 Build fix for GNU Hurd 2014-09-02 17:27:16 +02:00
Gunnar Beutner 6f2ea6bc08 Fix build problems with Oracle Solaris Studio
refs #6896
2014-09-02 13:09:17 +02:00
Gunnar Beutner 6ba0612644 Detect whether __COUNTER__ is available
fixes #7040
2014-08-31 11:01:37 +02:00
Gunnar Beutner eb091a87b0 Implement support for unity builds
fixes #7034
fixes #7035
2014-08-30 20:02:12 +02:00
Gunnar Beutner eaea65a366 Make props argument for NameComposer::MakeName constant 2014-08-29 16:46:46 +02:00
Gunnar Beutner 634ef772c3 Build fix for Boost 1.56
fixes #7001
2014-08-25 15:12:39 +02:00
Gunnar Beutner f7f8bd9b00 Use const-ref specifier when catching exceptions
refs #6070
2014-08-25 08:36:30 +02:00
Gunnar Beutner e31d520f6b Improve log messages for failed commands
fixes #6970
2014-08-21 11:26:43 +02:00
Gunnar Beutner 107a152a8f Improve TLS and cluster error messages
refs #6066
2014-08-20 14:07:23 +02:00
Gunnar Beutner 8485e0b94b Reword error messages a bit
refs #6070
2014-08-19 13:48:41 +02:00
Gunnar Beutner d4cdee6a1a Change log level for failed commands
fixes #6751
2014-08-19 12:58:55 +02:00
Gunnar Beutner 65bec9e904 Clean up some parts of the code 2014-08-17 17:57:41 +02:00
Gunnar Beutner 0443c85bf5 Implement support for writing the icinga2.debug file
refs #6702
2014-08-15 21:00:26 +02:00
Michael Friedrich f6c24f8964 DB IDO: Delay connection in HA RunOnce mode
refs #6827
refs #6203
2014-08-15 17:21:12 +02:00
Gunnar Beutner 39248dad42 Build fix for Windows 2014-08-07 14:23:20 +02:00
Gunnar Beutner a5d25871a1 Flush loggers in Application::Exit
fixes #6861
2014-08-07 08:34:38 +02:00
Michael Friedrich d20ee37196 Fix event command execution not calling finish handler
fixes #6856
2014-08-06 17:49:29 +02:00
Gunnar Beutner 8256638fde Use gai_strerror instead of Utility::FormatErrorNumber for getaddrinfo's error codes
fixes #6849
2014-08-06 10:43:41 +02:00
Gunnar Beutner 89b94ab8ab Make --no-stack-rlimit the first argument
fixes #6765
2014-08-06 10:35:27 +02:00
Michael Friedrich 53d3a4af5f Flush stdout before _exit()
fixes #6852
refs #6820
2014-08-05 13:52:24 +02:00
Michael Friedrich 87e63edb93 Use a local buffer for ERR_error_string()
refs #6724
refs #6682
2014-08-05 11:30:06 +02:00
Gunnar Beutner f3d55848f5 Add a missing lock in TlsStream::Close
fixes #6621
refs #6724
2014-08-05 09:35:28 +02:00
Gunnar Beutner da41725e5b Partially revert 3f647bb779
refs #6724
2014-08-05 08:41:52 +02:00
Michael Friedrich 9ae37bf109 Add verbose SSL error messages
refs #6682
2014-08-04 17:23:41 +02:00
Michael Friedrich fd233ae901 Use Application::Exit() for main app termination
refs #6682
2014-08-04 17:23:41 +02:00
Michael Friedrich 55c306796b Add Application::Exit()
refs #6682
2014-08-04 17:23:41 +02:00
Michael Friedrich 7b8dc1d97e Fix non-existing endpoint on ApiListener error
refs #6724
2014-08-04 17:23:41 +02:00
Gunnar Beutner 541dacb636 Build fix for Linux (oops) 2014-08-04 09:50:30 +02:00
Jan Andres 46dbe5a4f5 Fix incorrect usage of readdir_r
refs #6821

Signed-off-by: Gunnar Beutner <gunnar.beutner@netways.de>
2014-08-04 08:49:04 +02:00
Jan Andres 20fc8773b6 Build fix for Solaris
refs #6821

Signed-off-by: Gunnar Beutner <gunnar.beutner@netways.de>
2014-08-04 08:49:04 +02:00
Gunnar Beutner 0de728db64 Build fix for OS X. 2014-08-01 17:05:51 +02:00
Gunnar Beutner 3f647bb779 Fix OpenSSL errors during (re-)negotiation
fixes #6724
2014-08-01 15:23:07 +02:00
Gunnar Beutner 7610cc95fe Update formatting for the version message
refs #6783
2014-07-23 13:06:00 +02:00
Gunnar Beutner 4724869e1c Print application paths for --version
fixes #6783
2014-07-23 09:30:56 +02:00
Gunnar Beutner a49a598eef Make location of the /run directory configurable
fixes #6627
2014-07-22 13:26:37 +02:00
Gunnar Beutner 5dcf1a777b Fix stack rlimit problem
fixes #6450
2014-07-21 13:33:01 +02:00
Gunnar Beutner 4b157ac54f Change return type for Socket::Pool to bool
refs #6617
2014-07-04 09:31:43 +02:00
Gunnar Beutner 1723d97ed0 Revert "Fix deadlock in ApiClient::SendMessage"
This reverts commit 0ac6e97f32.
2014-07-01 08:57:54 +02:00
Gunnar Beutner 61ba2e647e Add some missing SSL flags
refs #6368
2014-06-30 15:44:08 +02:00
Gunnar Beutner 0ac6e97f32 Fix deadlock in ApiClient::SendMessage
fixes #6368
2014-06-30 12:52:43 +02:00
Gunnar Beutner 62896cb9a5 Increase default stack size
fixes #6588
2014-06-27 08:18:32 +02:00
Gunnar Beutner 96521ead10 Fix incorrect path in an error message
fixes #6492
2014-06-26 14:16:37 +02:00
Gunnar Beutner 3ece0cff4d Fix build warnings
fixes #6488
2014-06-26 14:12:37 +02:00
Gunnar Beutner ad1a11f882 Remove source line information from stacktraces
fixes #6576
2014-06-25 09:18:53 +02:00
Michael Friedrich 1eb77b0cd7 Replace recursive implementation with a forward loop in Utility::MkDirP()
That way we always move into the tree, but not start in the deepest
level and may limit the tree level too in the future, if required.

Solves the Win32 implementation by moving the general mkdir() call into
Utility::MkDir().

refs #6328
2014-06-13 09:10:35 +02:00
Michael Friedrich 2acf6a063e Fix syncing zones.d from etc/ to var/lib in a recursive manner
Missing mkdir -p basically. Introducing Utility::MkDirP() which still
requires Win32 implementation.

refs #6328
2014-06-12 23:28:46 +02:00
Michael Friedrich 09ad04b09a Error messages: Use strerror() for message formatting.
Refs #6070
2014-06-05 17:45:02 +02:00
Michael Friedrich 1064dc28fc Error messages: Gracefully handle PID file errors.
Refs #6070
2014-06-05 17:44:41 +02:00
Michael Friedrich 0c021d94cb Error Messages: Catch and log all Socket class exceptions.
Refs #6070
2014-06-05 16:17:53 +02:00
Michael Friedrich 6a080edf80 Error Messages: Catch boost::regex exceptions.
Refs #6070
2014-06-05 16:13:28 +02:00
Michael Friedrich a416987031 Error messages: Add logging to Socket class.
Refs #6070
2014-06-05 15:45:37 +02:00
Michael Friedrich 17668af2c2 Error messages: Fix Logger exceptions.
Refs #6070
2014-06-05 15:35:30 +02:00
Michael Friedrich 2989c00680 Error messages: Enable logging in TlsStream class.
Refs #6070
2014-06-05 15:34:54 +02:00
Michael Friedrich f1e77a0579 Error Messages: Deal with socket exceptions.
Refs #6070
2014-06-05 14:36:50 +02:00
Michael Friedrich 739c6d53a5 Remove unused member variable: DynamicObject::m_Privileges.
Fixes #6376
2014-06-02 11:32:00 +02:00
Gunnar Beutner 157de9f3bb Fix a situation where some threadpool work items are never executed.
Fixes #6349
2014-05-28 15:57:48 +02:00
Michael Friedrich 076d297931 Change log message identifier for libbase.
Refs #6346
2014-05-28 14:42:00 +02:00
Gunnar Beutner 33cf660c04 Fix missing timer events.
Fixes #6349
2014-05-28 13:46:39 +02:00
Gunnar Beutner 41a9b7d5c0 Remove thread names from log messages.
Fixes #6345
2014-05-28 11:46:47 +02:00
Gunnar Beutner e7c09dac97 Remove icinga::ErrorInformation.
Fixes #6333
2014-05-27 15:51:38 +02:00
Gunnar Beutner 7f5d8a36b4 Split Utility::GetHostName into two functions.
Fixes #6312
2014-05-27 10:20:33 +02:00
Gunnar Beutner 3f2df5b656 Make sure that Utility::GetHostName() returns an FQDN.
Fixes #6312
2014-05-26 17:32:18 +02:00
Gunnar Beutner f9512dd495 Make sure Application::InitializeBase() when RLIMIT_NOFILE is set to "unlimited".
Refs #6257
2014-05-26 07:40:47 +02:00
Gunnar Beutner 632026cd9f Rename C++ header files.
Fixes #6291
2014-05-25 16:27:14 +02:00
Gunnar Beutner 778b51ab6d Improve log messages for the Process class.
Refs #6070
2014-05-23 19:00:55 +02:00
Gunnar Beutner 16a2d36bdc Rename --debug to --log-level.
Refs #6276
2014-05-23 18:11:21 +02:00
Gunnar Beutner 4cf293837f Change the default number of threads for the ThreadPool class.
Fixes #6279
2014-05-23 12:35:18 +02:00
Michael Friedrich 5ec300f68e Add debug log severity for console logger.
Fixes #6276
2014-05-23 11:57:08 +02:00
Gunnar Beutner 2e18407270 Close inherited FDs.
Fixes #6257
2014-05-23 06:31:52 +02:00
Michael Friedrich 1df7518b35 Move more log messages to 'notice' severity.
Refs #6070
2014-05-22 23:47:03 +02:00
Gunnar Beutner 1bc1356fe6 Windows build fix. 2014-05-22 21:32:08 +02:00
Michael Friedrich 4296ec3987 Change the most chatting log messages to 'notice' severity.
Refs #6070
2014-05-22 16:07:57 +02:00
Michael Friedrich 0713918c5e Extract exception error info message.
Refs #6070
2014-05-22 16:07:57 +02:00
Michael Friedrich 7462c8320a Add 'notice' severity to *Logger.
Refs #6070
2014-05-22 16:07:57 +02:00
Gunnar Beutner 46165dbccf Make sort order for Utility::{Glob,GlobRecursive} deterministic.
Fixes #5854
2014-05-22 13:12:58 +02:00
Gunnar Beutner 2350593ef0 Fix logrotate config.
Fixes #6229
2014-05-22 11:22:30 +02:00
Michael Friedrich af951819bc Add MessageOrigin to OnVarsChanged.
Refs #6187
Refs #5219
2014-05-19 18:17:47 +02:00
Michael Friedrich 601e10cb46 Use CustomVarObject instead of DynamicObject for all libicinga objects.
Fixes #6187
2014-05-19 17:57:58 +02:00
Gunnar Beutner b814d89ce0 Fix command timeout.
Fixes #6232
2014-05-19 13:09:49 +02:00
Gerd von Egidy 541de0de78 Add Process::GetPID and make it work on Unix and Windows.
Refs #6118
2014-05-18 18:44:57 +02:00
Gerd von Egidy e0d4b9fb80 Unlink the pidfile when we really shutdown (not reload).
Refs #6118
2014-05-18 18:44:54 +02:00
Gerd von Egidy e93a22b440 Proof of concept how a real reload-handling with systemd could work.
Refs #6118
2014-05-18 18:39:35 +02:00
Gunnar Beutner 7310a254e8 Parallellize restoring objects from the state file.
Fixes #6226
2014-05-18 09:20:23 +02:00
Gunnar Beutner b2246f3af9 Build fix for Windows.
Refs# 6191
2014-05-17 08:38:28 +02:00
Gunnar Beutner 3a1ce23aeb Implicitly set zone attribute for files includes from zones.d.
Refs #6191
2014-05-13 14:40:12 +02:00
Gunnar Beutner 0d36cc8d5f Implement support for the zones.d config directory.
Refs #6191
2014-05-13 13:19:43 +02:00
Gunnar Beutner c58aa9e86f Improve error message when execvpe() fails.
Fixes #6160
2014-05-12 10:58:17 +02:00
Gunnar Beutner 9b7702195a Don't use colors for the whole log message.
Refs #6070
2014-05-12 10:27:01 +02:00
Gunnar Beutner 9c3e399188 Remove unnecessary includes.
Fixes #6189
2014-05-11 18:11:32 +02:00
Gunnar Beutner 6a8db4035d Fix another couple of compiler warnings.
Refs #5823
2014-05-11 08:36:51 +02:00
Gunnar Beutner 12c8814bd8 Fix some more compiler warnings.
Refs #5823
2014-05-11 06:43:01 +02:00
Gunnar Beutner c7b5e4c31e Fix some compiler warnings.
Refs #5823
2014-05-11 06:04:43 +02:00
Michael Friedrich d06d4f2540 Include monitoring plugin commands seperately.
Fixes #6130
2014-05-10 19:02:51 +02:00
Gunnar Beutner 0e34968e8f Implement for loops.
Fixes #6183
2014-05-10 11:26:56 +02:00