Commit Graph

856 Commits

Author SHA1 Message Date
Jordan Bancino 6721255512 Update references to POSIX 2022-09-06 12:36:12 -04:00
Jordan Bancino a8796e1bc6 Don't be so harsh with other homeserver implementations! 2022-09-06 12:02:10 -04:00
Jordan Bancino 1523794077 More weird site things. 2022-09-06 11:56:53 -04:00
Jordan Bancino 8b68bb089c Clean up some weird parts of the site. 2022-09-06 11:53:38 -04:00
Jordan Bancino c0474982a6 Fix compile warnings and errors on Linux 2022-08-28 16:05:11 -04:00
Jordan Bancino 7cc08e67fc Begin Matrix-specific work. 2022-08-28 15:55:48 -04:00
Jordan Bancino 47338fd001 Initialize the server response code 2022-08-28 15:48:58 -04:00
Jordan Bancino f12eaaaba8 Update to-dos 2022-08-28 15:48:38 -04:00
Jordan Bancino 4cd24a6e97 Finally getting into Matrix territory 2022-08-28 15:45:24 -04:00
Jordan Bancino 8ec6d6afb3 Add to-do items 2022-08-28 15:45:13 -04:00
Jordan Bancino d7d960b77d Parse HTTP requests and invoke the request handler. 2022-08-28 14:30:15 -04:00
Jordan Bancino d3e8886b69 Add some functions. 2022-08-26 21:02:53 -04:00
Jordan Bancino 43c46fd45c Fix compile and runtime errors 2022-08-26 20:15:27 -04:00
Jordan Bancino 1dc4261f6f Add Http.c 2022-08-26 11:11:15 -04:00
Jordan Bancino 275d06c127 Begin prototyping the HttpServer API 2022-08-26 11:07:54 -04:00
Jordan Bancino 2b72dd0dba Add a DCO 2022-08-25 07:16:07 -04:00
Jordan Bancino d8a89c4750 Free server when we're done with it.
This frees up a lot of memory, and closes the server socket so that the
operating system doesn't have to do it, because the operating system may
take a while to actually close the socket.
2022-08-24 19:36:29 -04:00
Jordan Bancino 9378a4d369 Implement basic thread pool with dummy 500 messages. 2022-08-24 19:31:28 -04:00
Jordan Bancino f950233dbc Add UtilSleepMillis() function. 2022-08-24 19:30:20 -04:00
Jordan Bancino 8657008e94 Format code. 2022-08-24 16:29:00 -04:00
Jordan Bancino de00c3cb37 Fix fdopen() file mode. 2022-08-24 16:28:50 -04:00
Jordan Bancino 640e127ce5 Fix chroot() logic on non-OpenBSD platforms. 2022-08-24 16:10:34 -04:00
Jordan Bancino 55a49e418f Fix logic error relating to the initial call to QueuePush() 2022-08-24 14:41:42 -04:00
Jordan Bancino 665da9d33e Fix port binding error. 2022-08-24 14:37:32 -04:00
Jordan Bancino 8801afaeb2 Properly initialize and destroy the mutex 2022-08-24 11:25:16 -04:00
Jordan Bancino 935f9db626 Remove the redundant -ansi flag.
It's identical to -std=c89, and not all compilers support it.
2022-08-24 11:22:56 -04:00
Jordan Bancino be001fb17a Make HttpServer utilize Queue. 2022-08-24 10:06:14 -04:00
Jordan Bancino ab4afe1587 Add basic Queue implementation. 2022-08-24 09:06:27 -04:00
Jordan Bancino b632411b61 Apply #30 2022-08-21 12:37:26 -04:00
Jordan Bancino 315589cd1b Accept #29 2022-08-21 12:35:16 -04:00
Jordan Bancino 30d055d570 Accept 29 2022-08-21 12:35:12 -04:00
Jordan Bancino 3bda6b89bb Use my $DISPLAY_NAME and $MXID in my messages as a signature. 2022-08-12 22:01:27 -04:00
Jordan Bancino 1d0fb32155 Add a run recipe. 2022-08-12 22:00:36 -04:00
Jordan Bancino 538412d1c2 Apply #26 2022-08-12 21:30:03 -04:00
Jordan Bancino 30ae6586b2 Accept #28, with modifications. 2022-08-12 19:32:06 -04:00
Jordan Bancino 33df5002e6 Accept #28 2022-08-12 19:08:41 -04:00
Jordan Bancino fb4458ef63 Allow me to add arbitrary messages to the accept and reject functions. 2022-08-12 19:08:27 -04:00
Jordan Bancino af03988db7 Poll the socket for data events. 2022-08-11 21:19:52 -04:00
Jordan Bancino d9c944871a Abstract socket creation and binding behind the HttpServer API. 2022-08-11 20:13:10 -04:00
Jordan Bancino e94212b080 Bind to socket; HTTP server event thread; signal handling. 2022-08-11 19:40:13 -04:00
Jordan Bancino 46cd0edaf8 Add verbose flag to LDFLAGS when in debug mode. 2022-08-11 19:32:47 -04:00
Jordan Bancino 9cf2266ece Make TelodendriaConfigParse() actually validate the listenPort.
I want to already have a valid port number by the time we need to bind
to it.
2022-08-11 11:50:35 -04:00
Jordan Bancino 4304a28302 TelodendriaConfigParse() doesn't modify the LogConfig.
Also pledge() and unveil() as soon as possible, to avoid the log file
breaking out.
2022-08-10 21:13:05 -04:00
Jordan Bancino 9ae05e84f2 Implement user validation. 2022-08-10 11:58:39 -04:00
Jordan Bancino e0a66ad58a Add DEBUG to td. 2022-08-10 10:49:17 -04:00
Jordan Bancino 2b9b6368ba Apply #25 2022-08-10 10:40:41 -04:00
Jordan Bancino 2324d9982f Format code. 2022-08-09 21:05:10 -04:00
Jordan Bancino d9e355edb9 Relocate free() in HashMap to a sensible location. 2022-08-09 21:02:57 -04:00
Jordan Bancino 560624ba98 Fix memory leak in HashMap 2022-08-09 20:23:25 -04:00
Jordan Bancino 76937a57a4 Check return value of fgets() in Json.c 2022-08-09 20:18:13 -04:00