/************************************************************************* //Rip1Software.cpp //Russell Nava //Mike Chiek // EE175B RIP version 2 // Last revision: 05/31/01 //************************************************************************ //************************************************************************ // Program Description //************************************************************************ //This program monitors a computers serial port for RIP activity. //*************************************************************************/ //header files #include #include #include "stdafx.h" #include "smtp.h" #include "SerialPort.h" #include "messageData.h" //functions bool SendEmail(int); //***************************************************************************** //Function: Main //Parameters: None //Purpose: Runs program //Return: Zero if ok //Written By: Russell Nava //***************************************************************************** int main() { char rec; SerialPort communication; //Initialise sockets for sending email if (!AfxSocketInit()) { TRACE(_T("Failed to initialise the Winsock stack\n")); return FALSE; } //MAKING CONNECNTION TO SERIAL PORT //first tries to connect to com1 then tries com2 if( communication.init() == true ) { cerr << "Unable to initial to establish proper serial port connection." << endl; return(1); } //contiously monitors serial port while(1) { //monitors serial port //rec = communication.Monitor(true); rec = communication.SerialMonitor(); Sleep(200); //cout <<"\n"<> lookup; if(lookup == id) { infile.getline(line,MESSAGE_MAX,'\n'); found = true; break; } } } else { found = true ; } //if email with number received is found if( found == true ) { infile.getline(line,MESSAGE_MAX,'\n'); data.emailAdd = strdup(line); infile.getline(line,MESSAGE_MAX,'\n'); data.serverAdd = strdup(line); infile.getline(line,MESSAGE_MAX,'\n'); data.subject = strdup(line); infile.getline(line,MESSAGE_MAX,'\n'); data.message = strdup(line); infile.close(); } //if email with number not found else { infile.close(); return(temp); } //sending email LPCTSTR server = (LPCTSTR)data.serverAdd; LPCTSTR address = (LPCTSTR)data.emailAdd; LPCTSTR from = "RIPV2.0@doNotReply.com"; LPCTSTR subject = (LPCTSTR)data.subject; LPCTSTR body = (LPCTSTR)data.message; CSMTPConnection sender; CSMTPMessage mess; sender.Connect(server); mess.AddRecipient(CSMTPAddress(address)); mess.m_From = CSMTPAddress(from); mess.m_sSubject = subject; mess.AddBody(body); if( sender.SendMessage(mess) == false ) { temp = false; } else { temp = true; } sender.Disconnect(); if( temp == true ) { cout <<"\nEmail address: " << data.emailAdd; cout <<"\nEmail Message: " << data.message << endl << endl; } return(temp); }