#include #include #include #include #include #include #include main(int argc, char* argv[]) { int sock, i, l, on; struct sockaddr_in dst; sock = socket(AF_INET, SOCK_DGRAM, 0); if (sock < 0) { perror("err creating socket:"); exit(1); } on = 1; if (setsockopt(sock, SOL_SOCKET, SO_BROADCAST, &on, sizeof on) == -1) { perror("could not set SO_BROADCAST option:"); } if (setsockopt(sock, SOL_SOCKET, SO_REUSEADDR, &on, sizeof on) == -1) { perror("could not set SO_REUSEADDR option:"); } memset(&dst, 0, sizeof(struct sockaddr_in)); dst.sin_family = AF_INET; dst.sin_port = htons(2345); dst.sin_addr.s_addr = inet_addr("172.30.255.255"); l = sizeof(struct sockaddr_in); i = sendto(sock, argv[1], strlen(argv[1])+1, 0, &dst, l); if (i < 0) perror("erroare la send:"); else printf("am trimis broadcast %d octeti!\n", i); }