Hiroshi Yamaguchi / Mbed 2 deprecated SimpleSocketExamples 1.0

Dependencies:   EthernetNetIf SimpleSocket 1.0 mbed

Committer:
yamaguch
Date:
Wed Nov 02 12:16:51 2011 +0000
Revision:
33:39d9cdf99de8
Parent:
25:b3ab82301345
added examples

Who changed what in which revision?

UserRevisionLine numberNew contents of line
yamaguch 33:39d9cdf99de8 1 #include "EthernetNetIf.h"
yamaguch 15:ae9aff693b07 2 #include "SimpleSocket.h"
yamaguch 15:ae9aff693b07 3
yamaguch 33:39d9cdf99de8 4 void echoclient() {
yamaguch 33:39d9cdf99de8 5 EthernetNetIf eth;
yamaguch 33:39d9cdf99de8 6 eth.setup();
yamaguch 33:39d9cdf99de8 7
yamaguch 33:39d9cdf99de8 8 printf("Echo server => ");
yamaguch 33:39d9cdf99de8 9 char server[32];
yamaguch 33:39d9cdf99de8 10 scanf("%s", server);
yamaguch 33:39d9cdf99de8 11
yamaguch 33:39d9cdf99de8 12 ClientSocket socket(server, 1234);
yamaguch 15:ae9aff693b07 13
yamaguch 33:39d9cdf99de8 14 if (socket) {
yamaguch 33:39d9cdf99de8 15 char message[80] = {};
yamaguch 33:39d9cdf99de8 16 printf("Enter message => ");
yamaguch 33:39d9cdf99de8 17 int c = 0;
yamaguch 33:39d9cdf99de8 18 while (c < ' ' || 0x7E < c)
yamaguch 33:39d9cdf99de8 19 c = getc(stdin);
yamaguch 33:39d9cdf99de8 20 ungetc(c, stdin);
yamaguch 33:39d9cdf99de8 21 for (int i = 0; i < sizeof(message) - 1 && (c = getc(stdin)) >= ' '; i++)
yamaguch 33:39d9cdf99de8 22 message[i] = c;
yamaguch 15:ae9aff693b07 23
yamaguch 33:39d9cdf99de8 24 socket.printf("%s", message);
yamaguch 33:39d9cdf99de8 25
yamaguch 15:ae9aff693b07 26 // wait until data is received
yamaguch 15:ae9aff693b07 27 while (!socket.available())
yamaguch 15:ae9aff693b07 28 ;
yamaguch 15:ae9aff693b07 29 printf("Received: ");
yamaguch 15:ae9aff693b07 30
yamaguch 15:ae9aff693b07 31 while (socket.available()) {
yamaguch 15:ae9aff693b07 32 char buf[128];
yamaguch 15:ae9aff693b07 33 int len = socket.read(buf, sizeof(buf) - 1);
yamaguch 15:ae9aff693b07 34 buf[len] = '\0';
yamaguch 33:39d9cdf99de8 35 printf("%s", buf);
yamaguch 15:ae9aff693b07 36 }
yamaguch 33:39d9cdf99de8 37 printf("\nClosing...\n");
yamaguch 15:ae9aff693b07 38 socket.close();
yamaguch 15:ae9aff693b07 39 }
yamaguch 15:ae9aff693b07 40 printf("Done.\n");
yamaguch 14:c6f5c0833cee 41 }