Re: [PATCH 1/3] auxdisplay: charlcd: fix hex literal ranges for graphics command

From: Miguel Ojeda
Date: Mon Feb 12 2018 - 08:56:46 EST


On Sat, Feb 10, 2018 at 10:41 AM, Miguel Ojeda
<miguel.ojeda.sandonis@xxxxxxxxx> wrote:
> On Sat, Feb 10, 2018 at 10:20 AM, Willy Tarreau <w@xxxxxx> wrote:
>> Hi Miguel,
>>
>> On Sat, Feb 10, 2018 at 09:58:44AM +0100, Miguel Ojeda wrote:
>>> On Sat, Feb 10, 2018 at 12:50 AM, Robert Abel <rabel@xxxxxxxxxxxxx> wrote:
>>> > The graphics command expects 16 hexadecimal literals, but would allow characters in range [0-9a-zA-Z] instead of [0-9a-fA-F].
>>> >
>>> > Signed-off-by: Robert Abel <rabel@xxxxxxxxxxxxx>
>>> > ---
>>> > drivers/auxdisplay/charlcd.c | 4 ++--
>>> > 1 file changed, 2 insertions(+), 2 deletions(-)
>>> >
>>> > diff --git a/drivers/auxdisplay/charlcd.c b/drivers/auxdisplay/charlcd.c
>>> > index 642afd88870b..324d02f9f1c5 100644
>>> > --- a/drivers/auxdisplay/charlcd.c
>>> > +++ b/drivers/auxdisplay/charlcd.c
>>> > @@ -441,9 +441,9 @@ static inline int handle_lcd_special_code(struct charlcd *lcd)
>>> > shift ^= 4;
>>> > if (*esc >= '0' && *esc <= '9') {
>>> > value |= (*esc - '0') << shift;
>>> > - } else if (*esc >= 'A' && *esc <= 'Z') {
>>> > + } else if (*esc >= 'A' && *esc <= 'F') {
>>> > value |= (*esc - 'A' + 10) << shift;
>>> > - } else if (*esc >= 'a' && *esc <= 'z') {
>>> > + } else if (*esc >= 'a' && *esc <= 'f') {
>>>
>>> Willy, Geert: this seems obvious, but do you know if the broader range
>>> was intended for some reason?
>>
>> No, I think it was simply a brain fart from me 14 years ago, as I can
>> find it as well in the original 0.9.0 patch for kernel 2.4!
>>
>> Ack from me on this patch.
>
> Thanks Willy for the quick answer! Then:
>
> Compile-tested.
>
> Signed-off-by: Miguel Ojeda <miguel.ojeda.sandonis@xxxxxxxxx>

To clarify, I have picked this one up (and the other two) in my queue
(sorry for any confusion!).

>
>>
>> Willy