Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
| Path | csiph.com!eternal-september.org!feeder.eternal-september.org!news.eternal-september.org!.POSTED!not-for-mail |
|---|---|
| From | Keith Thompson <kst-u@mib.org> |
| Newsgroups | comp.lang.c |
| Subject | Re: sscanf error checking |
| Date | Thu, 15 Dec 2016 11:26:41 -0800 |
| Organization | None to speak of |
| Lines | 37 |
| Message-ID | <lnbmwdm1se.fsf@kst-u.example.com> (permalink) |
| References | <o2rp71$3e7$1@dont-email.me> <k2c35ctbq4lg3bnllpfbt15lc8l2qsfodm@4ax.com> <77a15075-1f22-405c-a896-061dda988473@googlegroups.com> |
| Mime-Version | 1.0 |
| Content-Type | text/plain; charset=us-ascii |
| Injection-Info | mx02.eternal-september.org; posting-host="d13fb784dfa5b4f5223d68f3ab06c5fb"; logging-data="11406"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX1/gudlbnUOKCx/IZw2Cp00i" |
| User-Agent | Gnus/5.13 (Gnus v5.13) Emacs/23.1 (gnu/linux) |
| Cancel-Lock | sha1:/AlJwXn+CdW/RhunNPWJtVDiEog= sha1:Xdij/H0IEfoyKD10iqyu/YG4V8M= |
| Xref | csiph.com comp.lang.c:99550 |
Show key headers only | View raw
supercat@casperkitty.com writes:
> On Wednesday, December 14, 2016 at 2:52:04 PM UTC-6, robert...@yahoo.com wrote:
>> IMO, the *scanf() and ato*() functions are pretty much of no use
>> outside of toy problems, the lack of meaningful error handling being
>> the biggest issue. YMMV.
>
> Many programs are intended only for use upon validated input.
Many programs are poorly written. That's often why malware is able
to work.
> Unless
> an implementation decides to jump the rails when given invalid input
> (something which the Standard doesn't forbid, but which I don't think
> it ever intended to encourage) the semantics of scanf may be adequate
> for use in such contexts.
scanf() in particular reads only from standard input, which is
typically under the control of the user, not of the programmer.
Even sscanf() and fscanf() allow you to check for errors *other than*
numeric overflow, and users are routinely advised that they should
always check the value returned by any of the *scanf() functions
rather than assuming valid input. Why should there be no way to
detect or handle numeric overflow in particular?
I think the strto*() functions are probably newer than the *scanf()
functions. I speculate that checking for numeric overflow was
considered an excessive burden on implementers when the *scanf()
functions were first implemented and specified. It is my strong
opinion that that excuse no longer applies.
--
Keith Thompson (The_Other_Keith) kst-u@mib.org <http://www.ghoti.net/~kst>
Working, but not speaking, for JetHead Development, Inc.
"We must do something. This is something. Therefore, we must do this."
-- Antony Jay and Jonathan Lynn, "Yes Minister"
Back to comp.lang.c | Previous | Next — Previous in thread | Next in thread | Find similar | Unroll thread
sscanf error checking BartC <bc@freeuk.com> - 2016-12-14 15:42 +0000
Re: sscanf error checking John Gordon <gordon@panix.com> - 2016-12-14 15:58 +0000
Re: sscanf error checking Lew Pitcher <lew.pitcher@digitalfreehold.ca> - 2016-12-14 11:14 -0500
Re: sscanf error checking gazelle@shell.xmission.com (Kenny McCormack) - 2016-12-14 16:11 +0000
Re: sscanf error checking BartC <bc@freeuk.com> - 2016-12-14 17:51 +0000
Re: sscanf error checking gazelle@shell.xmission.com (Kenny McCormack) - 2016-12-14 18:09 +0000
Re: sscanf error checking Ben Bacarisse <ben.usenet@bsb.me.uk> - 2016-12-14 19:49 +0000
Re: sscanf error checking BartC <bc@freeuk.com> - 2016-12-14 20:43 +0000
Re: sscanf error checking Ben Bacarisse <ben.usenet@bsb.me.uk> - 2016-12-14 16:40 +0000
Re: sscanf error checking Keith Thompson <kst-u@mib.org> - 2016-12-14 09:34 -0800
Re: sscanf error checking Robert Wessel <robertwessel2@yahoo.com> - 2016-12-14 14:52 -0600
Re: sscanf error checking supercat@casperkitty.com - 2016-12-15 07:24 -0800
Re: sscanf error checking Keith Thompson <kst-u@mib.org> - 2016-12-15 11:26 -0800
Re: sscanf error checking Malcolm McLean <malcolm.mclean5@btinternet.com> - 2016-12-15 15:35 -0800
Re: sscanf error checking Keith Thompson <kst-u@mib.org> - 2016-12-15 16:28 -0800
Re: sscanf error checking Malcolm McLean <malcolm.mclean5@btinternet.com> - 2016-12-15 16:37 -0800
Re: sscanf error checking Robert Wessel <robertwessel2@yahoo.com> - 2016-12-26 17:25 -0600
Re: sscanf error checking supercat@casperkitty.com - 2016-12-15 16:38 -0800
Re: sscanf error checking raltbos@xs4all.nl (Richard Bos) - 2016-12-15 20:20 +0000
Re: sscanf error checking Keith Thompson <kst-u@mib.org> - 2016-12-15 12:33 -0800
sscanf error checking asetofsymbols@gmail.com - 2016-12-16 01:49 -0800
sscanf error checking asetofsymbols@gmail.com - 2016-12-16 01:53 -0800
csiph-web