Documentation #3230
closed
EVE DNS logger defaults to version 2 instead of version when version not specified.
Added by Jason Ish about 5 years ago.
Updated about 5 years ago.
Description
To support backward configuration file compatibility, the EVE DNS logger should default to v1 style logging if the version parameter is not supplied.
This is true for 4.1.5 when compiled without Rust. But when compiled with Rust (and including 5.0rc1), it will default to v2 output. This is due to the Rust implementation not initially having v1 output support.
So this only shows in 4.1.x+rust (experimental) and 5.0rc (experimental)? Asking because if it already is in a supported version / build config, then changing it may have too many side effects.
Victor Julien wrote:
So this only shows in 4.1.x+rust (experimental) and 5.0rc (experimental)? Asking because if it already is in a supported version / build config, then changing it may have too many side effects.
Probably a game of numbers then.
Will we have more people who are on an upgrade path of 4.0, 4.1 (with Rust) to 5.0? These are the people that will be affected, if they didn't noticed already and haven't tweaked their config. They will silently drop back to v1. If they skipped 4.1, they won't notice.
Or will there be more people upgrading from 4.1.x w/Rust to 5.0? These people will be less affected. If they did a fresh install, they will have the version set and will never see this issue. Or they did not have the version set and didn't noticed.
Its tricky to balance, but defaulting to v2 should probably be considered a real bug. I'm just surprised it went unnoticed (unreported) for this long.
I'm lost now about who would be affected and in which case. Maybe its good to have a little table in here that maps between: old version, config version, new version, dns version in use as a result.
Hmm.. Its a bit of a matrix.
4.1.5 configuration users should NOT be affected. The version was explicitly set there, and v1 section removed from the default configuration.
4.0 configuration users who upgraded to 4.1 w/Rust --> affected, forced to v2 logging.
4.0 configuration users who upgraded to 4.1 wo/Rust -> not affected, stayed on v1 logging.
5.0 has the same result as 4.1 w/Rust.
Basically,
if version == 1:
set_log_version(1)
elif version == 2:
set_log_version(2)
else (undefined):
if rust:
set_log_version(2)
else:
set_log_version(1)
I think its worth keeping in mind that the original plan was to deprecate v1 output style when we dropped the non-Rust DNS implementation. But we added v1 logging to the Rust implementation to satisfy Debian packaging requirements.
- Tracker changed from Bug to Documentation
- Target version set to 5.0.0
- Status changed from Assigned to Closed
Also available in: Atom
PDF