int main( int argc, char* argv[]) { if ( argc != 3 ) { cout << "usage: " << argv[0] << " [localport] [remoteport]" << endl; return 1; } int localport = atoi( argv[1] ); int remoteport = atoi( argv[2] ); UdpSocket mySock; mySock.initialize( localport ); string msg = "herro!"; char msgrx[256]; memset( msgrx, 0, sizeof(msgrx) ); cout << "send returned " << mySock.send( "localhost", remoteport, (unsigned char*)msg.c_str(), msg.length() ) << endl; cout << "receive returned " << mySock.receive( (unsigned char*)msgrx, sizeof(msgrx) ) << endl; cout << "received "; cout << msgrx << endl; cout << endl; return 0; }
int my_receive() { printf("==== Receive\n"); UdpSocket receiver; DataBuffer buffer(4096); buffer.set_data_size(4096); YETI_Result result = receiver.bind(SocketAddress(IpAddress::Any, 9123)); if (YETI_FAILED(result)) { fprintf(stderr, "bind() failed (%d)\n", result); return result; } SocketAddress address; result = receiver.receive(buffer, &address); if (YETI_FAILED(result)) { fprintf(stderr, "receive() failed (%d)\n", result); return result; } String addr_string = address.get_ipaddress().to_string(); printf("received packet, size=%d, from %s:%d\n", (int)buffer.get_data_size(), (const char*)addr_string, (int)address.get_port()); return 0; }