757938b293
Fix segvault if no config file was specified.
2022-11-01 09:47:25 -04:00
82d460da6f
Fix some sneaky memory bugs and resource leaks.
2022-11-01 09:04:15 -04:00
63dbf9ae35
Fix a few more memory bugs. Still have some to tackle.
2022-10-31 19:52:37 -04:00
fd50fd83fb
Misc changes throughout the codebase during testing.
2022-10-31 08:12:42 -04:00
bcff59bacb
Store memory info in the allocated block, not as a separate block.
...
This will eventually enable us to get memory information in O(1) time.
Right now, we're still O(n) because MemoryInfoGet() still has to check to
see if the allocation is known or not.
2022-10-28 14:07:44 -04:00
f90b987218
Add a Db to the matrixArgs so that routes can access it.
2022-10-24 14:36:48 -04:00
624b080d47
Add max-cache option to the config file
2022-10-24 13:40:21 -04:00
648ce5c4cc
Remove NonPosix.h; it seems to be causing more trouble than it's worth.
2022-10-15 11:45:23 -04:00
bb93cae99a
Remove non-standard __FUNCTION__ use.
...
This cripples the Memory API just a little bit, but I'm sure we'll still
get useful enough information.
2022-10-15 09:34:47 -04:00
0c03c71081
Allow logging to the syslog
2022-10-14 20:55:15 -04:00
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