| 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 |
| |