Initial revision
authorroland <roland>
Tue, 10 Nov 1992 00:09:15 +0000 (00:09 +0000)
committerroland <roland>
Tue, 10 Nov 1992 00:09:15 +0000 (00:09 +0000)
manual/examples/inetcli.c [new file with mode: 0644]

diff --git a/manual/examples/inetcli.c b/manual/examples/inetcli.c
new file mode 100644 (file)
index 0000000..0fbe4ab
--- /dev/null
@@ -0,0 +1,56 @@
+#include <stdio.h>
+#include <errno.h>
+#include <stdlib.h>
+#include <unistd.h>
+#include <sys/types.h>
+#include <sys/socket.h>
+#include <netinet/in.h>
+#include <netdb.h>
+
+#define PORT           5555
+#define MESSAGE                "Yow!!! Are we having fun yet?!?"
+#define SERVERHOST     "churchy.gnu.ai.mit.edu"
+
+void 
+write_to_server (int filedes)
+{
+  int nbytes;
+
+  nbytes = write (filedes, MESSAGE, strlen (MESSAGE) + 1);
+  if (nbytes < 0)
+    {
+      perror ("write");
+      exit (EXIT_FAILURE);
+    }
+}
+
+
+int
+main (void)
+{
+  extern void init_sockaddr (struct sockaddr_in *name,
+                            const char *hostname, unsigned short int port);
+  int sock;
+  struct sockaddr_in servername;
+
+  /* Create the socket.  */
+  sock = socket (PF_INET, SOCK_STREAM, 0);
+  if (sock < 0)
+    {
+      perror ("socket (client)");
+      exit (EXIT_FAILURE);
+    }
+
+  /* Connect to the server.  */
+  init_sockaddr (&servername, SERVERHOST, PORT);
+  if (connect (sock, (struct sockaddr *) &servername, sizeof (servername)) < 0)
+    {
+      perror ("connect (client)");
+      exit (EXIT_FAILURE);
+    }
+
+  /* Send data to the server.  */
+  write_to_server (sock);
+  close (sock);
+  exit (EXIT_SUCCESS);
+}