Code Monkey home page Code Monkey logo

ftpserver's Introduction

CS372 Project 2 README.txt
Brian Metzger ([email protected])
Created: 2019-05-18
Last Modified: 2019-05-27

INSTRUCTIONS:
1. compile ftserve and add executable permission to ftclient.py using the provided makefile
	(run command "make" to create both or "make ftclient" for ftclient or "make ftserve" for ftserve)
2. run ftserve using command: ./ftserve [portnum]
	(I used flip2.engr.oregonstate.edu 54333 for my host and port number during testing. I also tested ftclient on flip3 while ftserve was on flip2)
3. run ftclient.py using command: ./ftclient.py [host] [control portnum] [data_port] [command] [optional file name]
4. use command '-l' in ftclient to get the directory listing from ftserve
5. use command '-g' with a file name to download a file from ftserve
	a. ftserve will return an error if the file does not exist
	b. ftserve will send the file if the file is found
5. when ftclient receives a file it will check that the file doesn't already exist before saving
	a. if the file does not exist, it will use the original name of the requested file
	b. if a file does exist, ftclient will prepend 'copy(#) - ' to the beginning of the file name
6. ftserve and ftclient will both close connections when they are not in use
7. ftserve will continue waiting for new connections after a connection is closed
	
NOTE:
"make clean" will remove the ftserve executable from the directory and remove the executable permission from ftclient.py
EXTRA CREDIT OPPORTUNITY: ftserve and ftclient can transfer any type of file (not just text files - I tested this by transferring an image.png file)

ftpserver's People

Contributors

metzgerb avatar

Stargazers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.