Spring 2000
Your server should print (to stdout) out the port number it is running on as soon as it starts. Using a fixed port number may make it difficult for us to grade (and for you to debug), so we suggest you allow the operating system to assign you any available TCP port. The initial line printed by your program should include the port number and nothing else (not "Port = 3838\n", just "3838\n"). Your program will be run by an automated system that expects this output.
To keep track of all requests, your server should print one
line (to standard output) for each request serviced. The line should
include the host name or IP address of the client, and the original request-line sent by the
client
(not any of headers that accompanied the request). For example, the following
lines would be printed if the proxy received a GET request from a
client on monica.cs.rpi.edu asking for the web page
http://www.cs.rpi.edu/:
monica.cs.rpi.edu: GET http://www.cs.rpi.edu/
You should submit all files necessary to build your server. If you use a Makefile please include it, it not you need to include instructions on how to build your server. Your submission must also include a file named README that includes the following:
Please use your CS account (or your own personal computer) for this project. Do not use RCS for this project. We have been told that any student who knowingly or accidentally runs a program that consumes excessive resources (like a fork bomb) on a public workstation will lose their RCS account.
All questions should be sent to "netprog@cs.rpi.edu".
A Project 2 FAQ will be available at
http://www.cs.rpi.edu/~hollingd/netprog/projects.html
as we get
questions.
A sample proxy server will also be provided (executable that can be
run on monica.cs.rpi.edu).