You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
liam f51c51c095 Update 'README.md' 2 months ago
.zigzag-server.py.swo init commit 1 year ago
README.md Update 'README.md' 2 months ago
available-port.sh init commit 1 year ago
makefile init commit 1 year ago
project1.zip init commit 1 year ago
zigzag-client.c init commit 1 year ago
zigzag-client.h init commit 1 year ago
zigzag-client.out init commit 1 year ago
zigzag-server.py init commit 1 year ago
zigzag.png Added logo and updated README. 1 year ago

README.md

zigzag

A homegrown TCP chat system built with love.


QUICK START

python3 zigzag-server.py PORT
make && ./zigzag-client.out ADDRESS PORT

where ADDRESS is the IP address of the host running the server, and PORT is the port number that the server is running on.


EXTRA CREDIT

“Make it possible for either host to send at any time (while the connection is active) without “taking turns”.”


SERVER

To run the server, enter:

python3 zigzag-server.py PORT

where PORT is any open port on the host system.

A shell script — available-port.sh — is made available to the user so they do not have to guess an open port. It scans for open ports on the host system, and returns a random open port. This can be helpful on busy multiuser systems. To use it to run the server, enter:

chmod u+x available-port.sh
python3 zigzag-server.py `./available-port.sh`

Upon successful startup, the server will output the following, including the IP address and port number that may be used to connect a client to the server.

 ______     __     ______     ______     ______     ______
/\___  \   /\ \   /\  ___\   /\___  \   /\  __ \   /\  ___\
\/_/  /__  \ \ \  \ \ \__ \  \/_/  /__  \ \  __ \  \ \ \__ \
  /\_____\  \ \_\  \ \_____\   /\_____\  \ \_\ \_\  \ \_____\
  \/_____/   \/_/   \/_____/   \/_____/   \/_/\/_/   \/_____/

The server is ready to receive.
IP address: 192.168.169.36
port number: 12000

CLIENT

To run the client, enter:

make
./zigzag-client.out ADDRESS PORT

where ADDRESS is the IP address of the host running the server, and PORT is the port number that the server is running on.

Upon successful startup, the client will output the following, letting the user know that it has successfully connected to the server.

 _____
|_  (_)__ _ _____ _ __ _
 / /| / _` |_ / _` / _` |
/___|_\__, /__\__,_\__, |
      |___/        |___/

Connected to server.
Enter your nickname:

UNINSTALLATION

To delete the program and all associated files (including this README and the zip file), run:

make uninstall