From: Rasmus Villemoes
Sent: 28 April 2023 07:57
On 27/04/2023 13.51, Konrad Gräfe wrote:
The CDC-ECM specification requires an USB gadget to send the host MAC address as uppercase hex string. This change adds the appropriate modifier.
Thinking more about it, I'm not sure this is appropriate, not for a single user like this. vsprintf() should not and cannot satisfy all possible string formatting requirements for the whole kernel. The %pX extensions are convenient for use with printk() and friends where one needs what in other languages would be "string interpolation" (because then the caller doesn't need to deal with temporary stack buffers and pass them as %s arguments), but for single items like this, snprintf() is not necessarily the right tool for the job.
In this case, the caller can just as well call string_upper() on the result, or not use sprintf() at all and do a tiny loop with hex_byte_pack_upper().
Or snprintf with "%02X:%02X:%02X:%02X:%02X:%02X".
David
- Registered Address Lakeside, Bramley Road, Mount Farm, Milton Keynes, MK1 1PT, UK Registration No: 1397386 (Wales)