Re: [PATCH 1/5] vsprintf/Documentation: Add X to %*ph extension to output upper case hex

From: Andy Shevchenko
Date: Fri Aug 27 2021 - 03:48:47 EST


On Thu, Aug 26, 2021 at 11:43:01AM -0700, Joe Perches wrote:
> A few sysfs output uses of hex arrays are uppercase and are nominally ABI.
>
> Add a mechanism to the existing vsprintf %*ph hex output extension to
> support upper case hex output.

...

> + The preferred output is lowercase
> %*ph 00 01 02 ... 3f
> %*phC 00:01:02: ... :3f
> %*phD 00-01-02- ... -3f
> %*phN 000102 ... 3f
> + Formats with X are uppercase, used for backwards compatibility
> + %*phX 00 01 02 ... 3F
> + %*phCX 00:01:02: ... :3F
> + %*phDX 00-01-02- ... -3F
> + %*phNX 000102 ... 3F

Why not using %*pH...?

...

> + char locase = 0x20; /* ASCII OR'd for lower case see: number() */

If you use h vs H, you may derive this from (fmt[...] & SMALL).

--
With Best Regards,
Andy Shevchenko