/////////////////////////////////////////////////////////////////////////////// // // (c) Digi International Inc. 2002. All Rights Reserved // // Digi provides this document "as is," without warranty of any kind, // either expressed or implied, including, but not limited to, the implied // warranties of fitness or merchantability for a particular purpose. Digi // may make improvements and/or changes in this document or in the product(s) // and/or the program(s) described in this document at any time. // // This document could include technical inaccuracies or typographical errors. // Changes are periodically made to the information herein; these changes may // be incorporated in new editions of the publication. // // Digi International Inc. // 11001 Bren Road East // Minnetonka, MN 55343, USA // Tel: +1 (952) 912-3444 // Fax: +1 (952) 912-4952 // http://www.digi.com/ // /////////////////////////////////////////////////////////////////////////////// // tcpclient.cpp // #include #include #include #include #include "hexdumpdata.h" #include "mysocket.h" int main(int argc, char* argv[]) { printf("Start\n"); printf("Creating socket ...\n"); int MySocket = MySocketOpen(SOCK_STREAM, 0); if (MySocket != -1) { struct sockaddr_in SockAddr = {0}; size_t SockAddrLength = sizeof(SockAddr); getsockname(MySocket, (struct sockaddr *)&SockAddr, &SockAddrLength); printf("Socket created on %s:%u\n", inet_ntoa(SockAddr.sin_addr), SockAddr.sin_port); // IMPORTANT! // // This is the IP Address and port number of the device to // which a connection attempt will be made. Modify these // values accordingly to match you device configuration. char * AddressToConnectTo = "10.0.0.1"; // Change this to be the IP address for your device unsigned short PortToConnectTo = 2101; // Default base port # for serial port 1 printf("Connecting to %s:%u\n", AddressToConnectTo, PortToConnectTo); if (MySocketConnect(MySocket, AddressToConnectTo, PortToConnectTo) == 0) { printf("Connection succeeded\n"); unsigned char SendData[] = { 'H', 'e', 'l', 'l', 'o', ' ', 'W', 'o', 'r', 'l', 'd', }; printf("Sending:\n"); HexDumpData(SendData, sizeof(SendData)); MySocketSend(MySocket, SendData, sizeof(SendData)); unsigned char RecvData[256] = {0}; int BytesReceived = MySocketRecv(MySocket, RecvData, sizeof(RecvData)); if (BytesReceived > 0) { printf("Received:\n"); HexDumpData(RecvData, BytesReceived); } printf("Closing socket\n"); MySocketClose(MySocket); printf("Finish\n"); } else { printf("Connection failed\n"); } } else { printf("Socket creation failed\n"); } return 0; }