public inbox for glibc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug libc/814] New: perror(3) generates an error
@ 2005-04-01 16:31 steelman at post dot pl
  2005-04-01 17:38 ` [Bug libc/814] " schwab at suse dot de
                   ` (5 more replies)
  0 siblings, 6 replies; 8+ messages in thread
From: steelman at post dot pl @ 2005-04-01 16:31 UTC (permalink / raw)
  To: glibc-bugs

The perror(3) function generates an error that "overwrites" errno value.

Try to compile and run the code below and you'll get:
open: Success
write: Illegal seek
close: Illegal seek

However manpage for errno(3) says that errno is meaningful only after an
errornous call, IMHO perror should not change it's value. I suggest
restoring the errno(3) value just befor return from perror(3).

As i watched the strace(1) output for the example programme there was an _lseek
call which returned an ESPIPE.

-----EXAMPLE CODE-----
#include <stdio.h>
#include <fcntl.h>

int main(int ac, char* av[]) {
        int fd;

        fd=open("/dev/null", O_WRONLY);
        perror("open");

        write(fd, "/dev/null", 10);
        perror("write");

        close(fd);
        perror("close");

        return 0;
}
-----EXAMPLE CODE------

-- 
           Summary: perror(3) generates an error
           Product: glibc
           Version: 2.3.4
            Status: NEW
          Severity: normal
          Priority: P2
         Component: libc
        AssignedTo: gotom at debian dot or dot jp
        ReportedBy: steelman at post dot pl
                CC: glibc-bugs at sources dot redhat dot com
 GCC build triplet: i486-slackware-linux
  GCC host triplet: i486-slackware-linux
GCC target triplet: i486-slackware-linux


http://sources.redhat.com/bugzilla/show_bug.cgi?id=814

------- You are receiving this mail because: -------
You are on the CC list for the bug, or are watching someone who is.


^ permalink raw reply	[flat|nested] 8+ messages in thread
[parent not found: <bug-814-131@http.sourceware.org/bugzilla/>]

end of thread, other threads:[~2014-12-11 19:02 UTC | newest]

Thread overview: 8+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2005-04-01 16:31 [Bug libc/814] New: perror(3) generates an error steelman at post dot pl
2005-04-01 17:38 ` [Bug libc/814] " schwab at suse dot de
2005-04-01 19:42 ` schwab at suse dot de
2005-04-01 19:43 ` schwab at suse dot de
2005-04-02 13:11 ` gotom at debian dot or dot jp
2005-04-02 13:12 ` gotom at debian dot or dot jp
2005-04-02 17:07 ` jakub at redhat dot com
     [not found] <bug-814-131@http.sourceware.org/bugzilla/>
2014-12-11 19:02 ` wjmelements at gmail dot com

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).