Commit Graph

35 Commits

Author SHA1 Message Date
Barra Ó Catháin ea76226760 Updated test to match new name for ListNode 2024-04-15 23:34:14 +01:00
Barra Ó Catháin 80dce61058 Renamed Node to ListNode
* source/server/lists.c (appendToList): String replaced Node with ListNode.
(deleteNodeFromList): String replaced Node with ListNode.
(deleteListNodeFromList): String replaced Node with ListNode.
(indexOfFromList): String replaced Node with ListNode.
(getFirstFromList): String replaced Node with ListNode.
(isInList): String replaced Node with ListNode.
(isPointerInList): String replaced Node with ListNode.
* source/server/lists.h: String replaced Node with ListNode.
2024-04-14 23:47:03 +01:00
Barra Ó Catháin 06b7f66f20 Added testing harness and test for lists
* Makefile.am (SilverMUDClient_SOURCES): Added testing into configuration.
* source/tests/lists-test.c: Initial list test.
* source/tests/tests.h (SILVERMUD_TESTS): Simple test harness.
2024-04-14 23:17:29 +01:00
Barra Ó Catháin cbec016039 Moved data type enum to own header
* source/server/data-type.h (DATATYPE_H): Moved from lists.h.
* source/server/lists.h (LISTS_H): Added include statement for data-type.h.
2024-04-14 23:16:10 +01:00
Barra Ó Catháin 9562cbfd21 Initial Implementation Of Lists
* lists.c (createList): Initial implementation.
(appendToList): Initial implementation.
(deleteNodeFromList): Initial implementation.
(indexOfFromList): Initial implementation.
(getFirstFromList): Initial implementation.
(isInList): Initial implementation.
(isPointerInList): Initial implementation.
* lists.h (LISTS_H): Defines the enum "DataType", and the structs "Node" and "List".
2024-04-14 23:08:37 +01:00
Barra Ó Catháin c282fb20ad Changed player names to allocated strings to be friendly to Scheme! 2024-03-30 22:47:01 +00:00
Barra Ó Catháin fa3df0cc69 Update C Codebase to use modules for Scheme primitives 2024-03-30 22:47:01 +00:00
Barra Ó Catháin 4d13547ae6 Update output queue to not pin the CPU (proper waiting) 2024-03-30 22:47:01 +00:00
Barra Ó Catháin 751a734016 Added independent output thread. 2024-03-30 22:47:01 +00:00
Barra Ó Catháin 258fd49653 Basic global messaging functions for Scheme 2024-03-30 22:47:01 +00:00
Barra Ó Catháin 89d520dc15 Initial test implementation of output message queuing. 2024-03-30 22:47:01 +00:00
Barra Ó Catháin 6fc2e4d2b9 Close client if connection breaks.
* source/client/receiving-thread.c (receivingThreadHandler): Exit the process if the connection to the server breaks.
* source/server/main.c (main): Minor formatting tweak.
2024-03-19 23:28:12 +00:00
Barra Ó Catháin 0a2d03fdaa Added environment variable handling.
* source/server/main.c (main):
- Added environment variable handling.
- Moved "Using" messages to after both command line arguments and enviroment variables are checked and applied.
- Command-line arguments override enviroment variables.
2024-03-19 23:20:08 +00:00
Barra Ó Catháin 9660fd4c60 Fix config.h.
* source/client/client-drawing.c: Change to correct include directive for config.h.
* source/client/main.c: Change to correct include directive for config.h.
2024-03-19 22:55:45 +00:00
Barra Ó Catháin 2d6b194c26 Added basic command-line options to server.
* source/server/main.c
(checkRequestedHostname): Added function to check if client SNI hostname is the same as specified by the server.
(main): Added command-line options for binding to ports, hostnames, and interfaces.
2024-03-18 03:14:50 +00:00
Barra Ó Catháin 24f8e2688a Added address iteration and graceful TLS failures.
* source/client/main.c (main):
- Added iteration through found addresses from getaddrinfo.
- Added graceful failures for TLS errors.
2024-03-18 03:10:59 +00:00
Barra Ó Catháin 03ea201716 Make client use getopts and getaddrinfo
* source/client/main.c (main):
  Added command-line option handler.
  Refactored socket creation make use of getaddrinfo.
2024-03-15 01:29:34 +00:00
Barra Ó Catháin 442a9319e8 Removed unneeded check, added temporary name command 2023-10-30 16:57:15 +00:00
Barra Ó Catháin a66a07c897 Properly remove disconnected players 2023-10-29 20:15:41 +00:00
Barra Ó Catháin 81fc72a1d7 Added system messages to client and added welcome message from server. 2023-10-29 17:20:14 +00:00
Barra Ó Catháin a1b1b80449 Removed now unneeded placeholders, added stubs for "rulebooks" in documentation. 2023-09-12 23:25:44 +01:00
Barra Ó Catháin 54b613befe Basic implementation of player lists and tying connections to players 2023-09-12 22:32:19 +01:00
Barra Ó Catháin 5a53e9f197 Added basic player type containing a name, and made the server echo messages with player name. 2023-09-10 17:24:46 +01:00
Barra Ó Catháin 3fc75ef30f Basic message receiver, server now echoes messages to all clients. 2023-08-31 01:44:17 +01:00
Barra Ó Catháin b292966588 Fixed window height calculations. 2023-08-28 02:53:31 +01:00
Barra Ó Catháin 50dcddfc56 Initial ncurses setup, and layout of client. 2023-08-28 02:29:21 +01:00
Barra Ó Catháin c043da64a2 Modify server and client to begin using ClientToServer messages. 2023-08-26 00:48:28 +01:00
Barra Ó Catháin 0104a11a7e Added basic client capable of connecting to the server. 2023-08-25 00:34:05 +01:00
Barra Ó Catháin 080e46fe99 Set up GNU Autotools as build system. 2023-08-24 00:12:27 +01:00
Barra Ó Catháin 0814e437cd Basic connection handling (using previous version of client) 2023-08-22 02:02:29 +01:00
Barra Ó Catháin 9801be3622 Renamed src back to source, because I liked it better 2023-08-19 16:00:57 +01:00
Barra Ó Catháin 32503cdbca Rename source/ to src/ for Autotools. 2023-08-14 03:15:37 +01:00
Barra Ó Catháin 2b488477f5 Added initial stubs for server.
- Server now launches a thread to initialize Scheme, and drops into a REPL.
2023-08-14 02:46:43 +01:00
Barra Ó Catháin 3189312340 Create placeholder files in client and server source. 2023-08-14 01:59:45 +01:00
Barra Ó Catháin 22e74ebfc1 Initial directory structure of rewrite.
Set up the initial directory structure for the rewrite of SilverMUD.
	- data/ - Stores any multi-media or binary assets.
	- documentation/ - Contains user-facing documentation for any programs in the repository.
	- lisp/ - Contains Scheme source files.
	- notes/ - Contains developer-facing documentation and design documents.
	- source/ - Contains C source files.
	- tests/ - Contains any tests for any programs in the repository.
2023-07-30 23:08:06 +01:00