mirror of
https://github.com/falcosecurity/falco.git
synced 2025-10-22 03:49:36 +00:00
Remove the old use of the '-o' command line option, it wasn't being used. Allow any config file option to be overridden on the command line, via --option/-o. These options are applied to the configuration object after reading the file, ensuring the command line options override anything in the config file. To support this, add some methods to yaml_configuration that allows you to set the value for a top level key or key + subkey, and methods to falco_configuration that allow providing a set of command line arguments alongside the config file. Ensure that any fatal error is always printed to stderr even if stderr logging is not enabled. This makes sure that falco won't silently exit on an error. This is especially important when daemonizing and when an initial fatal error occurs first. As a part of this, change all fatal errors to throw exceptions instead, so all fatal errors get routed through the exception handler. Improve daemonization by reopening stdin/stdout/stderr to /dev/null so you don't have to worry about writing to a closed stderr on exit.