blob: 74fdc1dbe64cf26919081a77c027a5c19a73c597 [file] [log] [blame]
From 7f11bde3143b21b40d8225ea1d641e0f83b5a01e Mon Sep 17 00:00:00 2001
From: Thomas Frauendorfer | Miray Software <tf@miray.de>
Date: Mon, 15 Feb 2021 13:40:16 +0100
Subject: [PATCH] kern/misc: Split parse_printf_args() into format parsing and
va_list handling
This patch is preparing for a follow up patch which will use
the format parsing part to compare the arguments in a printf()
format from an external source against a printf() format with
expected arguments.
Signed-off-by: Thomas Frauendorfer | Miray Software <tf@miray.de>
Reviewed-by: Daniel Kiper <daniel.kiper@oracle.com>
Signed-off-by: Stefan SΓΈrensen <stefan.sorensen@spectralink.com>
---
grub-core/kern/misc.c | 11 +++++++++--
1 file changed, 9 insertions(+), 2 deletions(-)
diff --git a/grub-core/kern/misc.c b/grub-core/kern/misc.c
index b02693b..50bf3ee 100644
--- a/grub-core/kern/misc.c
+++ b/grub-core/kern/misc.c
@@ -632,8 +632,7 @@ grub_lltoa (char *str, int c, unsigned long long n)
}
static void
-parse_printf_args (const char *fmt0, struct printf_args *args,
- va_list args_in)
+parse_printf_arg_fmt (const char *fmt0, struct printf_args *args)
{
const char *fmt;
char c;
@@ -789,6 +788,14 @@ parse_printf_args (const char *fmt0, struct printf_args *args,
break;
}
}
+}
+
+static void
+parse_printf_args (const char *fmt0, struct printf_args *args, va_list args_in)
+{
+ grub_size_t n;
+
+ parse_printf_arg_fmt (fmt0, args);
for (n = 0; n < args->count; n++)
switch (args->ptr[n].type)
--
2.14.2