efi/printf: Drop %n format and L qualifier
authorArvind Sankar <nivedita@alum.mit.edu>
Mon, 18 May 2020 19:06:58 +0000 (15:06 -0400)
committerArd Biesheuvel <ardb@kernel.org>
Tue, 19 May 2020 08:30:52 +0000 (10:30 +0200)
%n is unused and deprecated.

The L qualifer is parsed but not actually implemented.

Signed-off-by: Arvind Sankar <nivedita@alum.mit.edu>
Link: https://lore.kernel.org/r/20200518190716.751506-7-nivedita@alum.mit.edu
Signed-off-by: Ard Biesheuvel <ardb@kernel.org>
drivers/firmware/efi/libstub/vsprintf.c

index bb62d37..52cf22d 100644 (file)
@@ -127,7 +127,7 @@ int vsprintf(char *buf, const char *fmt, va_list args)
        int field_width;        /* width of output field */
        int precision;          /* min. # of digits for integers; max
                                   number of chars for from string */
-       int qualifier;          /* 'h', 'l', or 'L' for integer fields */
+       int qualifier;          /* 'h' or 'l' for integer fields */
 
        for (str = buf; *fmt; ++fmt) {
                if (*fmt != '%') {
@@ -188,7 +188,7 @@ int vsprintf(char *buf, const char *fmt, va_list args)
 
                /* get the conversion qualifier */
                qualifier = -1;
-               if (*fmt == 'h' || *fmt == 'l' || *fmt == 'L') {
+               if (*fmt == 'h' || *fmt == 'l') {
                        qualifier = *fmt;
                        ++fmt;
                }
@@ -229,16 +229,6 @@ int vsprintf(char *buf, const char *fmt, va_list args)
                                     field_width, precision, flags);
                        continue;
 
-               case 'n':
-                       if (qualifier == 'l') {
-                               long *ip = va_arg(args, long *);
-                               *ip = (str - buf);
-                       } else {
-                               int *ip = va_arg(args, int *);
-                               *ip = (str - buf);
-                       }
-                       continue;
-
                case '%':
                        *str++ = '%';
                        continue;