lkml.org 
[lkml]   [2001]   [Apr]   [12]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectIncorect signal handling ?
Hi,

there is litlle programm:

#include <stdio.h>
#include <unistd.h>
#include <sys/types.h>
#include <signal.h>
#include <errno.h>
#include <sys/stat.h>
#include <fcntl.h>

static void empty(int sig)
{
printf ("hello\n");
return;
}

void main()
{
int fd, a;
char buf[512];

if (fd = open("/tmp/nic", O_RDONLY) < 0)
{
perror ("open");
exit(1);
}

signal (SIGALRM, empty);
alarm (1);

a = read(fd, buf, 511);

while (a && a != -1) a = read(fd, buf, 511);

if (a == -1)
{
perror ("read");
exit(1);
}
else printf ("EOF\n");

exit(0);
}

I open /tmp/nic and run compiled program.
There should be error EINTR in read, but isn't.
Why ?

--
Daniel Podlejski <underley@underley.eu.org>
... Here await the birth of the son
The seventh, the heavenly, the chosen one ...
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/

\
 
 \ /
  Last update: 2005-03-22 13:25    [W:0.059 / U:0.056 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site