#include <sys/socket.h>
#include <netinet/in.h>
#include <string.h>
#include <stdio.h>
main()
{
int sock1, sock2;
struct sockaddr_in addr;
int on = 1;
int option = 4;
memset(&addr, 0, sizeof(addr));
addr.sin_port = htons(666);
addr.sin_family = AF_INET;
sock1 = socket(PF_INET, SOCK_DGRAM, IPPROTO_UDP);
setsockopt(sock1, SOL_SOCKET, SO_REUSEADDR, &on, sizeof(on));
addr.sin_addr.s_addr = INADDR_ANY;
if (bind(sock1, (struct sockaddr *)&addr, sizeof(addr)))
perror("bind1");
#if 0
if (setsockopt(sock1, IPPROTO_UDP, 100,
&option, sizeof(option)) != 0)
{
perror("setsockopt");
fprintf(stderr, "UDP encap. reception will be disabled\n");
}
#endif
sock2 = socket(PF_INET, SOCK_DGRAM, IPPROTO_UDP);
setsockopt(sock2, SOL_SOCKET, SO_REUSEADDR, &on, sizeof(on));
addr.sin_addr.s_addr = (192<<0)|(168<<8)|(0<<16)|(200<<24); /* or htonl(0x7f000001); */
if (bind(sock2, (struct sockaddr *)&addr, sizeof(addr)))
perror("bind2");
sleep(2000);
}