Book a Demo!
CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutPoliciesSign UpSign In
apsrcreatix
GitHub Repository: apsrcreatix/Socket-Programming-With-C
Path: blob/master/09-remote-command-execution-udp/client.c
137 views
1
/*
2
* Title : Remote command execution using UDP
3
* Name : Aditya Pratap Singh Rajput
4
* Subject : Network Protocols And Programming using C
5
*
6
Note : please consider the TYPOS in comments.
7
Thanks.
8
*/
9
10
#include <sys/types.h>
11
#include <sys/socket.h>
12
#include <stdio.h>
13
#include <unistd.h>
14
#include <netdb.h>
15
#include <netinet/in.h>
16
#include <string.h>
17
#include <arpa/inet.h>
18
#define MAX 1000
19
20
int main()
21
{
22
int serverDescriptor = socket(AF_INET, SOCK_DGRAM, 0);
23
char buffer[MAX], message[MAX];
24
struct sockaddr_in cliaddr, serverAddress;
25
socklen_t serverLength = sizeof(serverAddress);
26
27
bzero(&serverAddress, sizeof(serverAddress));
28
serverAddress.sin_family = AF_INET;
29
serverAddress.sin_addr.s_addr = inet_addr("127.0.0.1");
30
serverAddress.sin_port = htons(9976);
31
32
bind(serverDescriptor, (struct sockaddr *)&serverAddress, sizeof(serverAddress));
33
34
while (1)
35
{
36
printf("\nCOMMAND FOR EXECUTION ... ");
37
fgets(buffer, sizeof(buffer), stdin);
38
sendto(serverDescriptor, buffer, sizeof(buffer), 0, (struct sockaddr *)&serverAddress, serverLength);
39
printf("\nData Sent !");
40
recvfrom(serverDescriptor, message, sizeof(message), 0, (struct sockaddr *)&serverAddress, &serverLength);
41
printf("UDP SERVER : %s", message);
42
}
43
return 0;
44
}
45