Skip to content

Commit 0d28c4b

Browse files
committed
improved remote execution
1 parent 3518454 commit 0d28c4b

File tree

2 files changed

+27
-25
lines changed

2 files changed

+27
-25
lines changed

09-remote-command-execution-udp/client.c

Lines changed: 7 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -20,22 +20,23 @@ Thanks.
2020

2121
int main()
2222
{
23-
int serverDescriptor;
23+
int serverDescriptor = socket(AF_INET, SOCK_DGRAM, 0);
2424
char buffer[MAX], message[MAX];
2525
struct sockaddr_in cliaddr, serverAddress;
2626
socklen_t serverLength = sizeof(serverAddress);
27-
bzero(&serverAddress, sizeof(serverAddress));
27+
28+
bzero(&serverAddress, sizeof(serverAddress));
2829
serverAddress.sin_family = AF_INET;
2930
serverAddress.sin_addr.s_addr = inet_addr("127.0.0.1");
3031
serverAddress.sin_port = htons(9976);
31-
serverDescriptor = socket(AF_INET, SOCK_DGRAM, 0);
32-
32+
3333
bind(serverDescriptor, (struct sockaddr *)&serverAddress, sizeof(serverAddress));
34+
3435
while (1)
3536
{
3637
printf("\nCOMMAND FOR EXECUTION ... ");
37-
fgets(buffer, 1024, stdin);
38-
sendto(serverDescriptor, buffer, sizeof(buffer), 0, (struct sockaddr *)&serverAddress,serverLength);
38+
fgets(buffer, sizeof(buffer), stdin);
39+
sendto(serverDescriptor, buffer, sizeof(buffer), 0, (struct sockaddr *)&serverAddress, serverLength);
3940
printf("\nData Sent !");
4041
recvfrom(serverDescriptor, message, sizeof(message), 0, (struct sockaddr *)&serverAddress, &serverLength);
4142
printf("UDP SERVER : %s", message);

09-remote-command-execution-udp/server.c

Lines changed: 20 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -16,29 +16,30 @@ Thanks.
1616
#include <sys/stat.h>
1717
#include <arpa/inet.h>
1818
#include <unistd.h>
19-
#define MAX 1000
20-
int main(int argc, char *argv[]){
19+
#define MAX 1000
20+
int main()
21+
{
2122

22-
int serverDescriptor = socket(AF_INET, SOCK_DGRAM, 0);
23-
int size;
24-
char buffer[MAX], message[]="Command Successfully executed !";
25-
struct sockaddr_in clientAddress, serverAddress;
23+
int serverDescriptor = socket(AF_INET, SOCK_DGRAM, 0);
24+
int size;
25+
char buffer[MAX], message[] = "Command Successfully executed !";
26+
struct sockaddr_in clientAddress, serverAddress;
2627

27-
socklen_t clientLength = sizeof(clientAddress);
28+
socklen_t clientLength = sizeof(clientAddress);
2829

29-
bzero(&serverAddress, sizeof(serverAddress));
30-
serverAddress.sin_family = AF_INET;
31-
serverAddress.sin_addr.s_addr = htonl(INADDR_ANY);
32-
serverAddress.sin_port = htons(9976);
30+
bzero(&serverAddress, sizeof(serverAddress));
31+
serverAddress.sin_family = AF_INET;
32+
serverAddress.sin_addr.s_addr = htonl(INADDR_ANY);
33+
serverAddress.sin_port = htons(9976);
3334

34-
bind(serverDescriptor, (struct sockaddr *)&serverAddress, sizeof(serverAddress));
35-
while (1)
36-
{
37-
bzero(buffer, sizeof(buffer));
38-
recvfrom(serverDescriptor, buffer, sizeof(buffer), 0, (struct sockaddr *)&clientAddress, &clientLength);
39-
system(buffer);
40-
sendto(serverDescriptor, message, sizeof(message), 0, (struct sockaddr *)&clientAddress, clientLength);
41-
printf("Command Executed ... %s ", buffer);
35+
bind(serverDescriptor, (struct sockaddr *)&serverAddress, sizeof(serverAddress));
36+
while (1)
37+
{
38+
bzero(buffer, sizeof(buffer));
39+
recvfrom(serverDescriptor, buffer, sizeof(buffer), 0, (struct sockaddr *)&clientAddress, &clientLength);
40+
system(buffer);
41+
printf("Command Executed ... %s ", buffer);
42+
sendto(serverDescriptor, message, sizeof(message), 0, (struct sockaddr *)&clientAddress, clientLength);
4243
}
4344
close(serverDescriptor);
4445
return 0;

0 commit comments

Comments
 (0)