diff options
Diffstat (limited to 'stacks/fstack/app/fstack_client.c')
-rw-r--r-- | stacks/fstack/app/fstack_client.c | 49 |
1 files changed, 49 insertions, 0 deletions
diff --git a/stacks/fstack/app/fstack_client.c b/stacks/fstack/app/fstack_client.c new file mode 100644 index 0000000..a4b378c --- /dev/null +++ b/stacks/fstack/app/fstack_client.c @@ -0,0 +1,49 @@ +// Client side C/C++ program to demonstrate Socket programming +#include <stdio.h> +#include <sys/socket.h> +#include <stdlib.h> +#include <netinet/in.h> +#include <string.h> +#include <arpa/inet.h> +#include <unistd.h> +#define PORT 8080 + +int +main (int argc, char const *argv[]) +{ + struct sockaddr_in address; + int sock = 0, valread; + struct sockaddr_in serv_addr; + char *hello = "Hello from client"; + char buffer[1024] = { 0 }; + if ((sock = socket (AF_INET, SOCK_STREAM, 0)) < 0) + { + printf ("\n Socket creation error \n"); + return -1; + } + + memset (&serv_addr, '0', sizeof (serv_addr)); + + serv_addr.sin_family = AF_INET; + serv_addr.sin_port = htons (PORT); + + // Convert IPv4 and IPv6 addresses from text to binary form + //if(inet_pton(AF_INET, "192.28.128.8", &serv_addr.sin_addr)<=0) + if (inet_pton (AF_INET, "172.28.128.13", &serv_addr.sin_addr) <= 0) + { + printf ("\nInvalid address/ Address not supported \n"); + return -1; + } + + if (connect (sock, (struct sockaddr *) &serv_addr, sizeof (serv_addr)) < 0) + { + printf ("\nConnection Failed \n"); + return -1; + } + send (sock, hello, strlen (hello), 0); + printf ("Hello message sent\n"); + valread = read (sock, buffer, 1024); + printf ("%s\n", buffer); + close (sock); + return 0; +} |