#include #include #include #include #include #include #include void main () { int i, n, pid, fo; char buf[82] = ""; int *pip; static void ServerDown(int signo) { close(fo); close(pip[0]); printf("Server in down\n"); exit(0); } printf("\n"); signal(SIGCHLD, ServerDown); if ( pipe( pip ) < 0 ) { perror("pipe"); exit(1); } if ( ( pid = fork() ) < 0 ) { printf("fork"); exit(1); } if (pid == 0) { printf("Starting stantion\n"); close(pip[0]); printf("Exit : \".\" \n"); do { for (i=0; i 0) { if (write(fo, buf, n) !=n) { perror("write"); kill (pid, 9); close(fo); exit(1); } for (i=0; i