2025-05-10 21:58:58 +08:00

181 lines
4.8 KiB
Diff

From 09f489c89c826293ff8cbd282cfc866ab56054c4 Mon Sep 17 00:00:00 2001
From: Laszlo Varady <laszlo.varady@protonmail.com>
Date: Sat, 20 Aug 2022 14:29:43 +0200
Subject: [PATCH 6/8] timeutils: name repeating constant
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
CVE: CVE-2022-38725
Upstream-Status: Backport
[https://github.com/syslog-ng/syslog-ng/commit/09f489c89c826293ff8cbd282cfc866ab56054c4]
Signed-off-by: László Várady <laszlo.varady@protonmail.com>
Signed-off-by: Yogita Urade <yogita.urade@windriver.com>
---
lib/timeutils/scan-timestamp.c | 54 ++++++++++++++++++----------------
1 file changed, 29 insertions(+), 25 deletions(-)
diff --git a/lib/timeutils/scan-timestamp.c b/lib/timeutils/scan-timestamp.c
index 4fbe94a36..d22d50973 100644
--- a/lib/timeutils/scan-timestamp.c
+++ b/lib/timeutils/scan-timestamp.c
@@ -34,41 +34,43 @@ scan_day_abbrev(const gchar **buf, gint *left, gint *wday)
{
*wday = -1;
- if (*left < 3)
+ const gsize abbrev_length = 3;
+
+ if (*left < abbrev_length)
return FALSE;
switch (**buf)
{
case 'S':
- if (strncasecmp(*buf, "Sun", 3) == 0)
+ if (strncasecmp(*buf, "Sun", abbrev_length) == 0)
*wday = 0;
- else if (strncasecmp(*buf, "Sat", 3) == 0)
+ else if (strncasecmp(*buf, "Sat", abbrev_length) == 0)
*wday = 6;
else
return FALSE;
break;
case 'M':
- if (strncasecmp(*buf, "Mon", 3) == 0)
+ if (strncasecmp(*buf, "Mon", abbrev_length) == 0)
*wday = 1;
else
return FALSE;
break;
case 'T':
- if (strncasecmp(*buf, "Tue", 3) == 0)
+ if (strncasecmp(*buf, "Tue", abbrev_length) == 0)
*wday = 2;
- else if (strncasecmp(*buf, "Thu", 3) == 0)
+ else if (strncasecmp(*buf, "Thu", abbrev_length) == 0)
*wday = 4;
else
return FALSE;
break;
case 'W':
- if (strncasecmp(*buf, "Wed", 3) == 0)
+ if (strncasecmp(*buf, "Wed", abbrev_length) == 0)
*wday = 3;
else
return FALSE;
break;
case 'F':
- if (strncasecmp(*buf, "Fri", 3) == 0)
+ if (strncasecmp(*buf, "Fri", abbrev_length) == 0)
*wday = 5;
else
return FALSE;
@@ -77,8 +79,8 @@ scan_day_abbrev(const gchar **buf, gint *left, gint *wday)
return FALSE;
}
- (*buf) += 3;
- (*left) -= 3;
+ (*buf) += abbrev_length;
+ (*left) -= abbrev_length;
return TRUE;
}
@@ -87,63 +89,65 @@ scan_month_abbrev(const gchar **buf, gint *left, gint *mon)
{
*mon = -1;
- if (*left < 3)
+ const gsize abbrev_length = 3;
+
+ if (*left < abbrev_length)
return FALSE;
switch (**buf)
{
case 'J':
- if (strncasecmp(*buf, "Jan", 3) == 0)
+ if (strncasecmp(*buf, "Jan", abbrev_length) == 0)
*mon = 0;
- else if (strncasecmp(*buf, "Jun", 3) == 0)
+ else if (strncasecmp(*buf, "Jun", abbrev_length) == 0)
*mon = 5;
- else if (strncasecmp(*buf, "Jul", 3) == 0)
+ else if (strncasecmp(*buf, "Jul", abbrev_length) == 0)
*mon = 6;
else
return FALSE;
break;
case 'F':
- if (strncasecmp(*buf, "Feb", 3) == 0)
+ if (strncasecmp(*buf, "Feb", abbrev_length) == 0)
*mon = 1;
else
return FALSE;
break;
case 'M':
- if (strncasecmp(*buf, "Mar", 3) == 0)
+ if (strncasecmp(*buf, "Mar", abbrev_length) == 0)
*mon = 2;
- else if (strncasecmp(*buf, "May", 3) == 0)
+ else if (strncasecmp(*buf, "May", abbrev_length) == 0)
*mon = 4;
else
return FALSE;
break;
case 'A':
- if (strncasecmp(*buf, "Apr", 3) == 0)
+ if (strncasecmp(*buf, "Apr", abbrev_length) == 0)
*mon = 3;
- else if (strncasecmp(*buf, "Aug", 3) == 0)
+ else if (strncasecmp(*buf, "Aug", abbrev_length) == 0)
*mon = 7;
else
return FALSE;
break;
case 'S':
- if (strncasecmp(*buf, "Sep", 3) == 0)
+ if (strncasecmp(*buf, "Sep", abbrev_length) == 0)
*mon = 8;
else
return FALSE;
break;
case 'O':
- if (strncasecmp(*buf, "Oct", 3) == 0)
+ if (strncasecmp(*buf, "Oct", abbrev_length) == 0)
*mon = 9;
else
return FALSE;
break;
case 'N':
- if (strncasecmp(*buf, "Nov", 3) == 0)
+ if (strncasecmp(*buf, "Nov", abbrev_length) == 0)
*mon = 10;
else
return FALSE;
break;
case 'D':
- if (strncasecmp(*buf, "Dec", 3) == 0)
+ if (strncasecmp(*buf, "Dec", abbrev_length) == 0)
*mon = 11;
else
return FALSE;
@@ -152,8 +156,8 @@ scan_month_abbrev(const gchar **buf, gint *left, gint *mon)
return FALSE;
}
- (*buf) += 3;
- (*left) -= 3;
+ (*buf) += abbrev_length;
+ (*left) -= abbrev_length;
return TRUE;
}
--
2.34.1