Re: [PATCH v3 0/4] Make sscanf() stricter

From: Andy Shevchenko
Date: Thu Jun 15 2023 - 07:24:11 EST


On Thu, Jun 15, 2023 at 08:06:46AM +0000, David Laight wrote:
> From: Demi Marie Obenour
> > Sent: 14 June 2023 21:09

...

> > > What sort of formats and data are being used?
> >
> > Base-10 or base-16 integers, with whitespace never being valid.
>
> In which case sscanf() really isn't what you are looking for.
>
> > > The "%s" format terminates on whitespace.
> > > Even stroul() (and friends) will skip leading whitespace.
> >
> > Yes, which is a reason that strto*l() are just broken IMO.
>
> They are not 'broken', that is what is useful most of the time.
> The usual problem is that "020" is treated as octal.
>
> > I’m trying to replace their uses in Xen with custom parsing code.
>
> Then write a custom parser :-)

Hmm... Usually we are against zillion implementations of the same with zillion
bugs hidden (each buggy implementation with its own bugs).

--
With Best Regards,
Andy Shevchenko