client.cpp
#include "ace/OS.h"
#include "ace/SOCK_Dgram.h"
#include "ace/INET_Addr.h"
#include "ace/Log_Msg.h"
#define DATA_BUFFER_SIZE 1024
#define SIZE_DATA 100
int main(int argc, char *argv[]) {
char *data_buf;
ACE_INET_Addr remote_addr_;
ACE_INET_Addr local_addr_(6666,"168.192.1.213");
ACE_SOCK_Dgram local_(local_addr_);
data_buf="Hello World111111111111111111111111111111111111!";
remote_addr_.string_to_addr("168.192.1.213:5555");
int t=ACE_OS::strlen(data_buf)+1;
while(local_.send(data_buf,t,remote_addr_)!=-1)
{
char *data_buf1=new char[SIZE_DATA];
ACE_OS::sleep(1);
int count=0;
if((count=local_.recv(data_buf1,ACE_OS::strlen(data_buf1),remote_addr_))!=-1)
{
ACE_DEBUG((LM_DEBUG, "Data received from remote server %s was: %d,%s /n",remote_addr_.get_host_name(),count,data_buf1));
}else{
break;
}
}
return 0;
}
server.cpp
#include "ace/OS.h"
#include "ace/SOCK_Dgram.h"
#include "ace/INET_Addr.h"
#include "ace/Log_Msg.h"
#define DATA_BUFFER_SIZE 1024
#define SIZE_DATA 100
int main(int argc, char *argv[])
{
char *data_buf;
ACE_INET_Addr remote_addr_;
ACE_INET_Addr local_addr_(5555,"168.192.1.213");
ACE_SOCK_Dgram local_(local_addr_);
data_buf = new char[DATA_BUFFER_SIZE];
remote_addr_.string_to_addr("168.192.1.213:6666");
int byte_count=0;
while((byte_count=local_.recv(data_buf,SIZE_DATA,remote_addr_))!=-1)
{
data_buf[byte_count]=0;
ACE_DEBUG((LM_DEBUG, "Data received from remote %s was %s /n",remote_addr_.get_host_name(), data_buf));
ACE_OS::sleep(1);
ACE_OS::sprintf(data_buf,"Server says hello to you too");
if(local_.send(data_buf, ACE_OS::strlen(data_buf)+1,remote_addr_)==-1)
break;
}
return 0;
}