diff options
author | Ben Burwell <bburwell1@gmail.com> | 2013-04-29 16:13:34 -0400 |
---|---|---|
committer | Ben Burwell <bburwell1@gmail.com> | 2013-04-29 16:13:34 -0400 |
commit | ca9e46c937e75df43d2f80f0d957fabb07892c29 (patch) | |
tree | 0d8ae2bc1d1e3e248c746586a5daf7cb58a79463 /online.h |
Init
Diffstat (limited to 'online.h')
-rw-r--r-- | online.h | 35 |
1 files changed, 35 insertions, 0 deletions
diff --git a/online.h b/online.h new file mode 100644 index 0000000..d0cbd19 --- /dev/null +++ b/online.h @@ -0,0 +1,35 @@ +/** + * Localchat + * Ben Burwell + * + * Send online broadcast + */ + +void send_online_broadcast() { + int client_sock; // Client socket descriptor + struct sockaddr_in server_addr; // Server Internet address + struct in_addr server_ip_addr; // Server IP Address + int addr_leng; // Internet address length + int retrncode; // Return code + int sOptVal; // Socket option value + int sOptLen; // Socket option length + char out_temp[10]; + + client_sock = socket(AF_INET, SOCK_DGRAM, 0); + + if (client_sock < 0) { + exit(-1); + } + + server_addr.sin_family = AF_INET; // Address family to use + server_addr.sin_port = htons(CMD_PORT); // Port num to use + server_addr.sin_addr.s_addr = inet_addr(BROADCAST_IP); // IP for Broadcast + sOptVal = 1; + sOptLen = sizeof(int); + setsockopt(client_sock, SOL_SOCKET, SO_BROADCAST, (void*)&sOptVal, sOptLen); + + strcpy(out_temp, "ONLINE"); + retrncode = sendto(client_sock, out_temp, (strlen(out_temp) + 1), 0, (struct sockaddr *)&server_addr, sizeof(server_addr)); + + return; +}
\ No newline at end of file |