5
static void SigAlrmHandler(int);
6
static void SigTermHandler(int);
8
static char FileName[128];
17
char *ContentGif = "Content-type: image/gif\r\n\r\n";
24
sa.sa_flags = SA_RESETHAND | SA_RESTART;
25
sa.sa_handler = SigAlrmHandler;
26
sigaction(SIGALRM, &sa, NULL);
28
sa.sa_handler = SigTermHandler;
29
sigaction(SIGTERM, &sa, NULL);
30
sigaction(SIGPIPE, &sa, NULL);
32
PidFile = (char *) getenv("QUERY_STRING");
34
sprintf(FileName, "TmpGifs/%s", PidFile);
36
if((pp = fopen(FileName, "r")) == NULL) {
39
sprintf(tmp_buff, "HTTP/1.0 204 Not Modified\n");
40
write(1, tmp_buff, strlen(tmp_buff));
41
sprintf(tmp_buff, "Server: %s\n", (char *) getenv("SERVER_SOFTWARE"));
42
write(1, tmp_buff, strlen(tmp_buff));
43
sprintf(tmp_buff, "MIME-Version: 1.0\n");
44
write(1, tmp_buff, strlen(tmp_buff));
45
write(1, ContentGif, strlen(ContentGif));
47
sprintf(tmp_buff, "HTTP/1.0 200 OK\r\n");
48
write(1, tmp_buff, strlen(tmp_buff));
49
sprintf(tmp_buff, "Server: %s\n", (char *) getenv("SERVER_SOFTWARE"));
50
write(1, tmp_buff, strlen(tmp_buff));
51
sprintf(tmp_buff, "MIME-Version: 1.0\r\n");
52
write(1, tmp_buff, strlen(tmp_buff));
53
write(1, ContentGif, strlen(ContentGif));
55
while ((bytes =fread(tmp_buff, 1, 256, pp)) >0)
56
write(1, tmp_buff, bytes);
61
static void SigAlrmHandler(int id)
65
char *ContentGif = "Content-type: image/gif\r\n\r\n";
67
sprintf(tmp_buff, "HTTP/1.0 204 Not Modified\n");
68
write(1, tmp_buff, strlen(tmp_buff));
69
sprintf(tmp_buff, "Server: %s\n", (char *) getenv("SERVER_SOFTWARE"));
70
write(1, tmp_buff, strlen(tmp_buff));
71
sprintf(tmp_buff, "MIME-Version: 1.0\n");
72
write(1, tmp_buff, strlen(tmp_buff));
73
write(1, ContentGif, strlen(ContentGif));
78
static void SigTermHandler(int id)