[PATCH] libc_r bug: successful close(2) sets errno to ENOTTY

Poul-Henning Kamp phk at phk.freebsd.dk
Tue Nov 25 02:13:14 PST 2003

In message <004b01c3b33b$873a67a0$b9844051 at insultant.net>, "boyd, rounin" write
>From: "Stefan Farfeleder" <stefan at fafoe.narf.at>
>> > errno is meaningful for syscalls after an error (the original
>> > message).  The fact that other functions also dink with errno is not
>> > relevant to that statement.
>> I read boyd's statement as a contradiction to Jacques' one (only after
>> syscall error vs. after library call error).
>some libc functions do mangle errno, but only after an error.
>in my terse statement the intention was to affirm that errno is
>meaningless unless an error has ocurred (a syscall being the
>simplest case, while random other libc calls may behave in
>the same way).

Errno is undefined unless the relevant manual page states otherwise.

Poul-Henning Kamp       | UNIX since Zilog Zeus 3.20
phk at FreeBSD.ORG         | TCP/IP since RFC 956
FreeBSD committer       | BSD since 4.3-tahoe    
Never attribute to malice what can adequately be explained by incompetence.

More information about the freebsd-current mailing list