Features Added:
- Two window messaging in the client.
- Input sanitization to prevent server spam.
- Slow print text effect ported to Ncurses.
- Graceful handling of C-c.
Features Changed:
- Ncurses is now used in place of raw-terminal output.
- Sending and Receiving are now on their own threads.
- Makefile updated to add server linking variable.
- Control characters no longer cause server spam.
- Splash texts' version incremented.
- Makefile updated to link Ncurses.
Features Removed:
- None.
Squashed commit of the following:
commit 9411803942
Author: Barry Kane <bazzakane@gmail.com>
Date: Fri Sep 10 15:07:42 2021 +0100
Increment version message for merge.
Incremented the version number by 0.1 for the server.
Added version splash to the client.
commit 7047d0ee08
Author: Barry Kane <bazzakane@gmail.com>
Date: Fri Sep 10 15:03:02 2021 +0100
Added two-window messaging to the client.
Client now has two seperate Ncurses windows for sending and receiving.
Added SIGINT handler which sets a global boolean to gracefully exit and free memory.
Sending and Receiving are now on their own threads.
A pointer-to-struct is now passed to the threads.
The main thread will now wait to cancel the threads upon receiving SIGINT.
slowPrintNcurses now takes a window argument.
The server now doesn't check that a client receives the message that they sent, allowing for full chat history.
commit 33bc9bcda0
Author: Barry Kane <bazzakane@gmail.com>
Date: Fri Sep 3 18:47:11 2021 +0100
Adapted client to use Ncurses instead of raw terminal output:
Created "slowPrintNcurses", which is a version of "slowPrint" compatible with Ncurses screens.
Ncurses is now used in place of raw-terminal output.
The screen clears after inital start-up messages.
C-d no longer exits, and still doesn't spam.
Added Ncurses to the ld options of client in the Makefile.
Created ld options for server in the Makefile.
commit 849a80bd37
Author: Barry Kane <barry@omnimenu.ie>
Date: Thu Aug 19 23:07:58 2021 +0100
Basic input sanatization:
Created new library to deal with user input.
Implemented check in client to prevent C-d spamming the server.
C-d now exits.
Implemented check in client to prevent clients sending messages containing only newlines
to the server.
commit 2c093903a4
Author: Barry Kane <barry@omnimenu.ie>
Date: Tue Aug 17 18:57:56 2021 +0100
Git Sanity Check
Client now has two seperate Ncurses windows for sending and receiving.
Added SIGINT handler which sets a global boolean to gracefully exit and free memory.
Sending and Receiving are now on their own threads.
A pointer-to-struct is now passed to the threads.
The main thread will now wait to cancel the threads upon receiving SIGINT.
slowPrintNcurses now takes a window argument.
The server now doesn't check that a client receives the message that they sent, allowing for full chat history.
Created "slowPrintNcurses", which is a version of "slowPrint" compatible with Ncurses screens.
Ncurses is now used in place of raw-terminal output.
The screen clears after inital start-up messages.
C-d no longer exits, and still doesn't spam.
Added Ncurses to the ld options of client in the Makefile.
Created ld options for server in the Makefile.
Created new library to deal with user input.
Implemented check in client to prevent C-d spamming the server.
C-d now exits.
Implemented check in client to prevent clients sending messages containing only newlines
to the server.
Features Added:
- Server capable of receiving and sending messages to up to 64 clients.
- Client capable of sending and receiving messages from the server, multi-threaded.
- Text effect library with one effect.
Features Changed:
- None, initial release.
Features Removed:
- None, initial release.