removes unnecessary TCP stuff

This commit is contained in:
Brendan Haines 2015-02-09 11:13:34 -07:00
parent cbb7384889
commit e1ad02ec67
11 changed files with 0 additions and 278 deletions

View File

@ -1,12 +0,0 @@
all: TCPserver.o TCPserverExample
HDRS = TCPserver.h
CXXFLAGS = -Wall
TCPserver.o TCPserverExample.o: $(HDRS)
TCPserverExample: TCPserver.o TCPserverExample.o
$(CXX) $^ -o $@
clean:
rm TCPserver.o TCPserverExample.o TCPserverExample

Binary file not shown.

View File

@ -1,68 +0,0 @@
/**
* TCPclient.java
* Written by Brendan Haines
* Based on example from http://www.java-samples.com/showtutorial.php?tutorialid=1167
*/
import java.lang.*;
import java.io.*;
import java.net.*;
class TCPclient {
/** Socket at the server */
private Socket socket;
/** buffer to hold received info */
private BufferedReader buffer;
/**
* Connects to socket at server
* @param host - the server's IP
* @param port - the port number of the socket at the server
*/
public TCPclient( String host, int port ) {
try {
System.out.println( "setting up socket" );
socket = new Socket( host, port );
System.out.println( "socket set up\nsetting up buffer" );
buffer = new BufferedReader( new InputStreamReader( socket.getInputStream() ) );
System.out.println( "buffer set up" );
}
catch( Exception e ) {
System.out.println( "ERROR -- constructor" );
close();
}
}
/**
* reads one line from the receive buffer
* @return one line of the receive buffer on success, null on failure
*/
public String readLine() {
try{
if( buffer.ready() ) {
return buffer.readLine();
}
else {
return null;
}
}
catch( Exception e ) {
System.out.println( "Hmmm... it won't read" );
return null;
}
}
/**
* close connection
*/
public void close() {
try {
buffer.close();
socket.close();
}
catch( Exception e ) {
System.out.println( "SH*T! the connection won't close" );
}
}
}

Binary file not shown.

View File

@ -1,11 +0,0 @@
/**
* Written By Brendan Haines
*/
class TCPclientExample {
public static void main( String args[] ) {
TCPclient client = new TCPclient( "192.168.42.1", 51719 );
System.out.println( "Setup successful" );
client.close();
}
}

View File

@ -1,134 +0,0 @@
/*
* TCPserver.cpp
* Written by Brendan Haines
* Based heavily on example code found at http://www.linuxhowtos.org/C_C++/socket.htm
*/
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <unistd.h>
#include <sys/types.h>
#include <sys/socket.h>
#include <netinet/in.h>
#include <pthread.h>
#include "TCPserver.h"
TCPserver::TCPserver()
{}
// Constructor sets everything up and starts monitoring thread
TCPserver::TCPserver( int port )
{
portNumber = port;
setupSocket();
}
// Destructor closes sockets
TCPserver::~TCPserver()
{
close( connectionFD );
close( socketFD );
}
// a unified/consistent way of reporting errors
void TCPserver::handleError( const char* message )
{
perror( message ); // print message to stderror
}
// Returns true on success, false on failure
bool TCPserver::setupSocket()
{
// Create a new socket
// AF_INET: internet domain (not unix domain)
// SOCK_STREAM: stream (not datagram)
// 0: lets OS decide correct protocol (TCP)
socketFD = socket( AF_INET, SOCK_STREAM, 0 );
if( socketFD < 0 ) // error setting up socket
{
handleError( "Error setting up socket\n" );
return false;
}
// fill server_addr with zeroes
// NOTE: memset sets arg2 bytes following arg0 to arg1
// NOTE: sizeof returns the size of the passed type in bytes
memset( (char*) &server_addr, 0, sizeof( server_addr ) );
server_addr.sin_family = AF_INET; // just following the example (and its documentation)
server_addr.sin_port = htons( portNumber ); // assign the port number. NOTE: htons converts host byte order to network byte order
server_addr.sin_addr.s_addr = INADDR_ANY; // INADDR_ANY represents the IP address of the host
// bind: binds the socket to an address
if( bind( socketFD, (struct sockaddr*) &server_addr, sizeof( server_addr ) ) < 0 )
{
handleError( "Error binding socket" );
return false;
}
// listen for connections to socket (max 5 waiting)
listen( socketFD, 5 );
clientAddrLen = sizeof( client_addr );
// wait for client to connect
printf( "Waiting for client to connect\n" );
connectionFD = accept( socketFD, (struct sockaddr*) &client_addr, &clientAddrLen );
if( connectionFD < 0 )
{
handleError( "Error on accept" );
return false;
}
// empty buffer
memset( buffer, 0, sizeof( buffer ) );
return true; // setup successful
}
// returns a pointer to the buffer
char* TCPserver::getBuffer()
{
return buffer;
}
// returns the connection file descriptor
int TCPserver::getConnectionFD()
{
return connectionFD;
}
/*
void TCPserver::startMonitoringThread()
{
// create thread: ( thread, NULL = default values, function to run, parameter (void*) or NULL )
if( pthread_create( &monitorThread, NULL, monitoringThread, (void*) this ) )
{
// error creating thread
handleError( "Error creating thread" );
return;
}
}
void* TCPserver::monitoringThread( void* serverPointer )
{
int n; // contains the number of characters read
TCPserver server;
while( true )
{
// read from the socket and put in the buffer
n = read( server.getConnectionFD(), server.getBuffer(), 255 );
if( n < 0 )
{
server.handleError( "Error reading -- monitorThread " );
pthread_exit( NULL ); // exit this thread
}
}
}
*/

View File

@ -1,42 +0,0 @@
/*
* TCPserver.h
* Written by Brendan Haines
* Based heavily on example code found at http://www.linuxhowtos.org/C_C++/socket.htm
*/
#ifndef TCP_SERVER_H
#define TCP_SERVER_H
#include <netinet/in.h>
class TCPserver {
public:
TCPserver();
TCPserver( int port ); // Constructor
~TCPserver(); // Destructor
void handleError( const char* message );
char* getBuffer();
int getConnectionFD();
char buffer[ 256 ]; // buffer to store read data
private:
int socketFD; // file descriptor for the socket
int connectionFD; // file descriptor for the connection
int portNumber; // port number of the socket
socklen_t clientAddrLen; // stores the length of the client's address
struct sockaddr_in server_addr; // contains the server's address
struct sockaddr_in client_addr; // contains the client's address
//pthread_t monitorThread; // thread to monitor the socket and read to buffer
bool setupSocket();
//void startMonitoringThread();
//void* monitoringThread( void* );
};
#endif

Binary file not shown.

Binary file not shown.

View File

@ -1,11 +0,0 @@
/*
* TCPserverExample.cpp
*/
#include "stdio.h"
#include "TCPserver.h"
int main( int argc, char* argv[] )
{
TCPserver serv( 51719 );
}

Binary file not shown.