An open API service indexing awesome lists of open source software.

https://github.com/jeremywildsmith/filetransfer

Network Programming Class for BTech, implementing a TCP filetransfer client & server
https://github.com/jeremywildsmith/filetransfer

Last synced: 2 months ago
JSON representation

Network Programming Class for BTech, implementing a TCP filetransfer client & server

Awesome Lists containing this project

README

        

# TCP File Transfer Application

A TCP Client and Server implementation where the client is able to upload files to the remote server.

## Compiling

With build-essentials installed, the makefile can be invoked to produce a build using the following commands:

```
make all
```

This will produce the server and client in the `bin/server/server` and `bin/client/client` directories respectively.

## Usage

1. Host a server, this is the endpoint which will recieve files in an upload operation.

`server -p -d `

2. Initial a file transfer from a client instance

`client -p -s ... `

## Running Test Cases
Application is tested with various black-box tests imlemetned via BATS. You can run the tests with the following command:

`make test`

**NOTE: You must have BATS installed on your machine. Refer to BATS directory for installation instructions**

https://github.com/bats-core/bats-core

**Must have BATS 1.2. or later available on machine via command `bats`**

## Demo

Below screen-shot shows the client and server instances interacting.

![Demo Image Here](example/e1.png?raw=true "Title")

## License

All code is MIT Licensed.