#include #include #include #include #include #include #include int socketUn; struct sockaddr_un addrUn; int lenUn; int size; char datagram[1]; int dgramCounter = 0; int maxFdToWatch; fd_set writeFdToWatch; void sockInit(); int main() { sockInit(); maxFdToWatch = socketUn + 1; while(1) { FD_ZERO(&writeFdToWatch); FD_SET(socketUn, &writeFdToWatch); select(FD_SETSIZE, NULL, &writeFdToWatch, NULL, NULL); sleep(1); if (FD_ISSET(socketUn, &writeFdToWatch)) { size = sendto(socketUn, &datagram, sizeof(datagram), 0, (struct sockaddr *)&addrUn, lenUn); if (size == -1) perror("sendto failed"); sleep(1); } dgramCounter++; FD_ZERO(&writeFdToWatch); } } void sockInit() { socketUn = socket(AF_UNIX, SOCK_DGRAM, 0); if (socketUn == -1) perror("socket failed"); addrUn.sun_family = AF_UNIX; strcpy(addrUn.sun_path, "/tmp/tempUn"); lenUn = strlen(addrUn.sun_path) + sizeof(addrUn.sun_family); }