[COLOR=seagreen]/* Parameter: UDP/TCP Client Server-IPv4-Adresse Port */
/* Parameter: UDP/TCP Server Port */int main(int argc, char *argv[]) {
int port, size1=4096, size2=1024;
char *data = (char*)malloc(size1 * sizeof(char));
char *server_ip = (char*)malloc(size2 * sizeof(char));
if (data==NULL || server_ip==NULL) {
printf("Memory allocation failed!\n");
return -1;
}
if (argc==4) {
if ((strcmp(argv[1], "TCP")==0) && (strcmp(argv[2], "Server")==0)) {
port = atoi(argv[3]);
tcp_server(port);
} else if ((strcmp(argv[1], "UDP")==0) && (strcmp(argv[2], "Server")==0)) {
port = atoi(argv[3]);
udp_server(port);
}
} else if (argc==5) {
if ((strcmp(argv[1], "TCP")==0) && (strcmp(argv[2], "Client")==0)) {
server_ip = argv[3];
port = atoi(argv[4]);
printf("Please enter message: ");
fgets(data, size1, stdin);
tcp_client(data, port, server_ip);
} else if ((strcmp(argv[1], "UDP")==0) && (strcmp(argv[2], "Client")==0)) {
server_ip = argv[3];
port = atoi(argv[4]);
printf("Please enter message: ");
fgets(data, size1, stdin);
udp_client(data, port, server_ip);;
}
} else if (argc<4 || argc>5) {
printf("Missing or too many parameters!\n");
[COLOR=royalblue][B]free(data);
free(server_ip);[/B] return -1;
}
[COLOR=royalblue][B]free(data);
free(server_ip);[/B]
return 0;
}