Write a simple active ftp server program

Assignment Help Programming Languages
Reference no: EM131184453

Socket programming - FTP server (Active Mode)

Requirements

Your main task is to write a simple Active FTP server program using windows sockets. The server must be able to process USER, PASS, LIST, RETR, STOR and QUIT command requests from an FTP client that is available in the Windows operating system.

- Your FTP server program must be RFC 959 protocol-, IPv4- and IPv6-compliant in terms of data structures used. Avoid data structures that work only on IPv4 addresses.

- Your server must be able to accept an optional ephemeral port to listen to, as one of its arguments (e.g. FTPserver 1155)

- If the port number is not specified, use port 1234 as default.

- It will be tested using a Windows 7 FTP user agent, using simple commands such as:
dir
get <filename>
put <filename>

- Assume that the files exchanged are text files only (ASCII encoding)

- For testing purposes, include one authorized user entry in your server with the user name: napoleon, and password: 334

Guidelines

Learn about the protocol commands and response messages that need to be issued. Refer to materials provided in the stream web site (i.e. RFC 959, lecture slides, sample codes). It is also highly recommended that you try to interact with a real ftp server (ftp.massey.ac.nz), to see how it actually responds to your requests.

Remember that the FTP protocol requires two parallel TCP connections: one in port 21 and a data connection in port 20. The machines in the lab may not allow users to bind applications on these ports. Therefore, your program should allow for any valid ephemeral port i.e. [1024, 65535] as an alternative port number.

Attachment:- Code.zip

Reference no: EM131184453

Questions Cloud

Are deductive arguments more or less valid : Are deductive arguments more or less valid? That is, are deductive argument valid to a degree? Or is there no middle ground between validity and invalidity, the way there is with inductive arguments which may be strong to a degree
Create a research hypothesis based on the information : Create a research hypothesis based on the information provided in each scenario. You will be given a data set with two sets of interval data (just the numbers, as you must decide what they represent, such as method A results or method B results)
Create robust interaction and dialogue : Classroom discussion in an online environment requires the active participation of students and the instructor to create robust interaction and dialogue.
Sketch the production delivery system : Sketch the production-delivery system used by CMAX.com-Sole mates, Inc., in providing custom tennis shoes.- Could this approach be applied to other consumer goods?
Write a simple active ftp server program : The server must be able to process USER, PASS, LIST, RETR, STOR and QUIT command requests from an FTP client that is available in the Windows operating system.
Compare forecasts using a three period moving average : Compare forecasts using a three-period moving average,  exponential smoothing with a  0.2, and linear regression. Using MADand MSE, which forecasting model is best?
Analyze the emerging security threats presented : Analyze the emerging security threats presented within the "Security Threat Report 2014" report. Analyze the major threats to mobile devices, and suggest at least two methods to mitigate the concerns.
What are some of the key tenets of existential psychology : What are some of the key tenets of existential psychology? The significant of Carl Rodger's contribution to the field of psychology. What is client-centered therapy
Analyze five google technologies that are under research : Analyze five Google technologies that are current under research and development, including the self-driving automobile and four other technologies of your choice.

Reviews

Write a Review

Programming Languages Questions & Answers

  Write a haskell program to calculates a balanced partition

Write a program in Haskell which calculates a balanced partition of N items where each item has a value between 0 and K such that the difference b/w the sum of the values of first partition,

  Create an application to run in the amazon ec2 service

In this project you will create an application to run in the Amazon EC2 service and you will also create a client that can run on local machine and access your application.

  Explain the process to develop a web page locally

Explain the process to develop a Web page locally

  Write functions

These 14 questions covers java class, Array, link list , generic class.

  Programming assignment

If the user wants to read the input from a file, then the output will also go into a different file . If the user wants to read the input interactively, then the output will go to the screen .

  Write a prolog program using swi proglog

Write a Prolog program using swi proglog

  Create a custom application using eclipse

Create a custom Application Using Eclipse Android Development

  Create a application using the mvc architecture

create a application using the MVC architecture. No scripting elements are allowed in JSP pages.

  Develops bespoke solutions for the rubber industry

Develops bespoke solutions for the rubber industry

  Design a program that models the worms behavior

Design a program that models the worm's behavior.

  Writing a class

Build a class for a type called Fraction

  Design a program that assigns seats on an airplane

Write a program that allows an instructor to keep a grade book and also design and implement a program that assigns seats on an airplane.

Free Assignment Quote

Assured A++ Grade

Get guaranteed satisfaction & time on delivery in every assignment order you paid with us! We ensure premium quality solution document along with free turntin report!

All rights reserved! Copyrights ©2019-2020 ExpertsMind IT Educational Pvt Ltd