Barra Ó Catháin
19fa527d73
Added queues.h
...
* source/server/queues.h (QUEUES_H): Defined the interface and structures for universal queues.
2024-04-17 14:06:45 +01:00
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