Giter Club home page Giter Club logo

simple-ftp's Introduction

#Simple FTP

##Information Version: 1.0

GitHub repository: https://github.com/fortesit/simple-ftp

Author: Sit King Lok

Last modified: 2014-09-30 22:11

##Description A simple FTP with the following features:

  1. List files (i.e. ls)
  2. Download file (i.e. get [FILENAME])
  3. Upload file (i.e. put [FILENAME])
  4. User login (i.e. auth [USER] [PASSWORD])
  5. Multi-thread(Multi-user) support
  6. Multi-platform support

##Required files: MakeFile

myftp.h

myftpclient.c

myftpserver.c

access.txt

##Usage(Server)

 mkdir filedir
 make all
 ./server_{linux|unix} [PORT]

##Usage(Client)

 make all
 ./client_{linux|unix}

##Platform Linux(e.g.Ubuntu)/SunOS

##Note You need to have a password file (access.txt) in order to login.

The sample file provided contain the test account.

User:alice

Password:pass1

##Example On server

sit@sit-laptop:~/Desktop/simple-ftp$ mkdir filedir
sit@sit-laptop:~/Desktop/simple-ftp$ make all
gcc -o client_linux myftpclient.c
gcc -D Linux -o server_linux myftpserver.c -lpthread
sit@sit-laptop:~/Desktop/simple-ftp$ ./server_linux 2525

On client

sit@sit-laptop:~/Desktop/simple-ftp$ echo "Hello World" > file.txt
sit@sit-laptop:~/Desktop/simple-ftp$ ./client_linux 
Client> open 127.0.0.1 2525
Server connection accepted.
Client> auth alice pass1
Authentication granted.
Client> ls
---- file list start ----
ObjC.pdf
---- file list end ----
Client> put file.txt
File uploaded.
Client> get ObjC.pdf
File downloaded.
Client> quit
Thank you
sit@sit-laptop:~/Desktop/simple-ftp$ ls ObjC.pdf
ObjC.pdf
sit@sit-laptop:~/Desktop/simple-ftp$ cat filedir/file.txt 
Hello World

simple-ftp's People

Contributors

fortesit avatar

Stargazers

 avatar

Watchers

James Cloos avatar  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.