diff options
Diffstat (limited to 'Semestr 4/sieci/pracownia2/udp_client.c')
-rwxr-xr-x | Semestr 4/sieci/pracownia2/udp_client.c | 12 |
1 files changed, 10 insertions, 2 deletions
diff --git a/Semestr 4/sieci/pracownia2/udp_client.c b/Semestr 4/sieci/pracownia2/udp_client.c index 5624484..4e7dce4 100755 --- a/Semestr 4/sieci/pracownia2/udp_client.c +++ b/Semestr 4/sieci/pracownia2/udp_client.c @@ -6,8 +6,13 @@ #include <unistd.h> #include <errno.h> -int main() +int main(int argc, char * argv[]) { + if (argc < 2) { + printf("Usage:\n\t%s [server ip]\n", argv[0]); + return -1; + } + int sockfd = socket(AF_INET, SOCK_DGRAM, 0); if (sockfd < 0) { fprintf(stderr, "socket error: %s\n", strerror(errno)); @@ -18,7 +23,10 @@ int main() bzero (&server_address, sizeof(server_address)); server_address.sin_family = AF_INET; server_address.sin_port = htons(54321); - inet_pton(AF_INET, "192.168.1.2", &server_address.sin_addr); + if (!inet_pton(AF_INET, argv[1], &server_address.sin_addr)) { + printf("Inavlid ip address\n"); + return -1; + } char* message = "Hello server!"; ssize_t message_len = strlen(message); |