rendered paste body/* main file */#include <iostream>#include <string>#include <unistd.h> //usleep#include "c_socket.h"#include "c_parser.h"#include "c_error.h"using namespace std;int main(int argc, char *argv[]){ c_socket Sock; c_parser Parsing; string identifiers = "NICK UBot\r\nUSER Co2SoFt 0 0 :UNDER Team\r\nJOIN :#under\r\n"; try { cout<<"*** socket's initialization... ***"<<endl; Sock.init(); cout<<"*** socket adress's definition... ***"<<endl; Sock.setAddress("irc.voila.fr"); cout<<"*** socket port's definition... ***"<<endl; Sock.setPort(6667); cout<<"*** socket's connection... ***"<<endl; Sock.connection(); cout<<"*** identifiers's sending... ***"<<endl; Sock.send(identifiers); cout<<endl<<"*** we are connected ! ***"<<endl<<endl; while(1) { usleep(100000); //1 tenth of a second if(Sock.recv()) { Parsing.setBuffer(Sock.getRecvBuffer()); Parsing.parse(); if(Parsing.getmsg().compare(0,5, "&quit")) { cout<<endl<<"*** socket's closing and quit... ***"<<endl; Sock.close(); break; } } } } catch(initError obj) { obj.error(); obj.solution(); } catch(addressError obj) { obj.error(); obj.solution(); } catch(portError obj) { obj.error(); obj.solution(); } catch(connectError obj) { obj.error(); obj.solution(); } catch(sendError obj) { obj.error(); obj.solution(); } catch(recvError obj) { obj.error(); obj.solution(); } catch(closeError obj) { obj.error(); obj.solution(); }return EXIT_SUCCESS;}