Commit graph

82 commits

Author SHA1 Message Date
31719c2cd6 Tell exactly where the leaked pointer is, so it can be grepped. 2022-10-13 12:46:41 -04:00
80366fc294 Fix a few more calls to free() 2022-10-13 12:27:24 -04:00
8cb86e8f67 Use new Memory API for all memory allocations. 2022-10-13 12:18:42 -04:00
945acd1adf Format source code 2022-10-13 09:09:26 -04:00
2df0cd9d26 Begin integrating new Memory API 2022-10-13 09:08:05 -04:00
1353fa6429 Remove chroot option; log into the data directory automatically. 2022-10-11 12:00:36 -04:00
5d9b0df0bf Remove the redundant chroot option. This simplifies the config a bit. 2022-10-11 11:38:34 -04:00
cfcef45c00 Make the log file message more visible. 2022-09-30 13:13:27 -04:00
45324ce77a Implement /_matrix/client/versions and /.well-known/matrix/client 2022-09-29 13:41:26 -04:00
b5d538f2ce Cleaned up argument parsing to match what was in the docs 2022-09-24 19:41:39 -04:00
4cd24a6e97 Finally getting into Matrix territory 2022-08-28 15:45:24 -04:00
43c46fd45c Fix compile and runtime errors 2022-08-26 20:15:27 -04:00
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
640e127ce5 Fix chroot() logic on non-OpenBSD platforms. 2022-08-24 16:10:34 -04:00
315589cd1b Accept #29 2022-08-21 12:35:16 -04:00
538412d1c2 Apply #26 2022-08-12 21:30:03 -04:00
30ae6586b2 Accept #28, with modifications. 2022-08-12 19:32:06 -04:00
af03988db7 Poll the socket for data events. 2022-08-11 21:19:52 -04:00
d9c944871a Abstract socket creation and binding behind the HttpServer API. 2022-08-11 20:13:10 -04:00
e94212b080 Bind to socket; HTTP server event thread; signal handling. 2022-08-11 19:40:13 -04:00
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
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
9ae05e84f2 Implement user validation. 2022-08-10 11:58:39 -04:00
cdd7808642 Prototype the configuration file parser.
Right now there's a nasty memory bug I need to fix. Will have to run this
through valgrind.
2022-08-09 20:05:41 -04:00
b3e71c32fd Update license text. 2022-07-28 12:00:52 -04:00
c991d93444 Add license headers to all source files. 2022-07-28 11:15:04 -04:00
bc849819d9 Make HashMap and Json conform to C89.
Clang on OpenBSD didn't catch this, but GCC on Linux did.
2022-07-27 09:47:22 -04:00
ace2682dec Rework HashMapIterate to be more flexible.
We now get the keys, and we don't have to operate within the confines
of a callback function.
2022-07-25 21:31:09 -04:00
3437c5db2c Format headers as well.
indent(1) does a weird thing with prototype functions, but it's good
enough for me, as long as it's consistent.
2022-07-25 15:25:06 -04:00
aabb2a0203 Run indent(1) on all C source files. 2022-07-25 15:18:35 -04:00
768430f614 Update link in log header. 2022-07-23 00:50:12 -04:00
d102ba8676 Initial revision 2022-07-22 20:19:12 -04:00