update on test program
[ana-net.git] / opt / pflana.c
blobb879aa79f554154ce937c9d973be855cdc842814
1 #include <stdio.h>
2 #include <unistd.h>
3 #include <signal.h>
4 #include <sys/socket.h>
6 #define AF_LANA 27
8 static sig_atomic_t sigint = 0;
10 static void intr(int sig)
12 sigint = 1;
15 static inline void register_signal(int signal, void (*handler)(int))
17 sigset_t block_mask;
18 struct sigaction saction;
20 sigfillset(&block_mask);
21 saction.sa_handler = handler;
22 saction.sa_mask = block_mask;
23 saction.sa_flags = SA_RESTART;
25 sigaction(signal, &saction, NULL);
28 int main(void)
30 int sock;
31 register_signal(SIGINT, intr);
32 sock = socket(AF_LANA, SOCK_STREAM, 0);
33 if (sock < 0) {
34 perror("socket");
35 return 0;
38 printf("Worked! Abort with ^C\n");
39 while (!sigint);
41 close(sock);
42 return 0;