[pmg-devel] [PATCH pmg-log-tracker] change case sensitive string match to case insensitive
Stoiko Ivanov
s.ivanov at proxmox.com
Wed Nov 11 18:50:42 CET 2020
Thanks for addressing this so quickly!
applied the patch and tested it on my setup - works as expected:
Reviewed-By: Stoiko Ivanov <s.ivanov at proxmox.com>
Tested-By: Stoiko Ivanov <s.ivanov at proxmox.com>
On Mon, 9 Nov 2020 15:18:46 +0100
Mira Limbeck <m.limbeck at proxmox.com> wrote:
> With the rewrite from C to Rust the search string match was changed to
> be case sensitive by accident. Fix this by comparing the lowercase values
> of both the input and the search string.
>
> Signed-off-by: Mira Limbeck <m.limbeck at proxmox.com>
> ---
> src/main.rs | 2 +-
> tests/tests_after_queue.rs | 23 +++++++++++++++++++++++
> tests/tests_before_queue.rs | 23 +++++++++++++++++++++++
> 3 files changed, 47 insertions(+), 1 deletion(-)
>
> diff --git a/src/main.rs b/src/main.rs
> index ce09f14..3495269 100644
> --- a/src/main.rs
> +++ b/src/main.rs
> @@ -1842,7 +1842,7 @@ impl Parser {
>
> self.string_match = false;
> if !self.options.string_match.is_empty()
> - && find(complete_line, self.options.string_match.as_bytes()).is_some()
> + && find_lowercase(complete_line, self.options.string_match.as_bytes()).is_some()
> {
> self.string_match = true;
> }
> diff --git a/tests/tests_after_queue.rs b/tests/tests_after_queue.rs
> index 42d0f6b..f6441fa 100644
> --- a/tests/tests_after_queue.rs
> +++ b/tests/tests_after_queue.rs
> @@ -114,3 +114,26 @@ fn after_queue_search_string() {
> let output_reader = BufReader::new(&output.stdout[..]);
> utils::compare_output(output_reader, expected_output);
> }
> +
> +#[test]
> +fn after_queue_search_string_case_insensitive() {
> + let output = Command::new(utils::log_tracker_path())
> + .arg("-vv")
> + .arg("-s")
> + .arg("1608302400")
> + .arg("-e")
> + .arg("1608303600")
> + .arg("-i")
> + .arg("tests/test_input_mixed")
> + .arg("-x")
> + .arg("reJECT")
> + .output()
> + .expect("failed to execute pmg-log-tracker");
> +
> + let expected_file = File::open("tests/test_output_after_queue_search_string")
> + .expect("failed to open test_output");
> +
> + let expected_output = BufReader::new(&expected_file);
> + let output_reader = BufReader::new(&output.stdout[..]);
> + utils::compare_output(output_reader, expected_output);
> +}
> diff --git a/tests/tests_before_queue.rs b/tests/tests_before_queue.rs
> index bd46e53..fb7a149 100644
> --- a/tests/tests_before_queue.rs
> +++ b/tests/tests_before_queue.rs
> @@ -114,6 +114,29 @@ fn before_queue_search_string() {
> utils::compare_output(output_reader, expected_output);
> }
>
> +#[test]
> +fn before_queue_search_string_case_insensitive() {
> + let output = Command::new(utils::log_tracker_path())
> + .arg("-vv")
> + .arg("-s")
> + .arg("1608300000")
> + .arg("-e")
> + .arg("1608302400")
> + .arg("-i")
> + .arg("tests/test_input_mixed")
> + .arg("-x")
> + .arg("reJECT")
> + .output()
> + .expect("failed to execute pmg-log-tracker");
> +
> + let expected_file = File::open("tests/test_output_before_queue_search_string")
> + .expect("failed to open test_output");
> +
> + let expected_output = BufReader::new(&expected_file);
> + let output_reader = BufReader::new(&output.stdout[..]);
> + utils::compare_output(output_reader, expected_output);
> +}
> +
> #[test]
> fn before_queue_exclude_greylist_ndr() {
> let output = Command::new(utils::log_tracker_path())
More information about the pmg-devel
mailing list