This is the mail archive of the
libc-alpha@sourceware.cygnus.com
mailing list for the glibc project.
Re: [Various] libc/1616: core dump after changing buffer using setvbuf
- To: Andreas Schwab <schwab at suse dot de>
- Subject: Re: [Various] libc/1616: core dump after changing buffer using setvbuf
- From: Andreas Jaeger <aj at suse dot de>
- Date: 03 Mar 2000 13:56:16 +0100
- Cc: libc-alpha Mailinglist <libc-alpha at sourceware dot cygnus dot com>, r dot de dot vries at fokkerspace dot nl
- References: <u84saol5vy.fsf@gromit.rhein-neckar.de> <200003031245.NAA03717@hawking.suse.de>
>>>>> Andreas Schwab writes:
> Andreas Jaeger <aj@suse.de> writes:
> |> Hi glibc folks,
> |>
> |> we've received the appended bug report together with a patch that
> |> should fix the problem.
> |>
> |> Could somebody please check whether the fix is correct? Ulrich told
> |> me privatly that he thinks the problem should be elsewhere.
> That's correct.
> \begin{quote}[C9x-draft, 7.19.5.6]
> [#2] The setvbuf function may be used only after the stream
> pointed to by stream has been associated with an open file
> and before any other operation (other than an unsuccessful
> call to setvbuf) is performed on the stream.
> \end{quote}
> The program invokes undefined behaviour.
Thanks. In this case the man page is wrong since it states[1]:
The setvbuf function may be used at any time on any open
stream to change its buffer. The mode parameter must be
one of the following three macros:
We should also document this in our manual. Andreas, can you provide
a patch.
Andreas
Footnotes:
[1] I'll take care of the manpages.
--
Andreas Jaeger
SuSE Labs aj@suse.de
private aj@arthur.rhein-neckar.de