Commit graph

71 commits

Author SHA1 Message Date
eb3732a2cd Fix potential race condition. 2023-06-09 19:27:49 +00:00
a177c55c26 Make Memory use a recursive mutex.
This allows some additional operations to be performed inside the memory
hooks, although it's still a bad idea to allocate or free memory while
inside the hook.
2023-06-04 18:44:37 +00:00
bd1918ee05 Re-add memory bounds checking.
Also fixed a recursive lock error in some configurations, and replaced
a usage of strcpy() with strncpy().
2023-05-29 23:53:17 +00:00
a358ca795d Format code. 2023-05-27 18:22:38 +00:00
11a7b6653d Log a message stating that TLS is disabled if the config requests it. 2023-05-27 17:55:49 +00:00
c5cfdb9894 Show human-readable thread ID in log messages.
This helps debug some multithreading issues.
2023-05-27 17:10:07 +00:00
5694a609eb It appears that OpenSSL closes the socket descriptor for us.
When we close it again manually, we may actually be closing another thread's
file descriptor, which causes all kinds of problems.
2023-05-27 17:03:40 +00:00
a853c5670c Fix potential write out of bounds. 2023-05-26 23:47:36 +00:00
a7de0e4d16 Remove memory bound checking logic.
While this was nifty and impressive, it seems like it is too easy to mess
up, and is too platform-specific.
2023-05-26 23:10:00 +00:00
b02ad117c4 Fix SIGBUS on some platforms. Memory alignment matters!
This is a temporary fix; I'm not convinced it will work on all platforms,
so I will probably end up removing all of the memory boundary code
altogether.
2023-05-26 23:05:35 +00:00
0e60cd5195 Push Main return value into MainArgs.
This prevents weird things from happing on some architectures.
2023-05-26 21:05:06 +00:00
3a78e50044 Fix incorrect block size. 2023-05-25 00:03:17 +00:00
0c3ccb2c99 Don't log anything at the end of main; user may have redirected and closeed stream.
This would cause a segfault.
2023-05-24 23:32:53 +00:00
061d9df739 Add sane default memory hook to Cytoplasm, fix more leaks in json. 2023-05-23 22:43:37 +00:00
4b85d10983 Don't leak so much memory. 2023-05-23 17:53:19 +00:00
f44db5a712 Properly initialize and destroy logging mutex in LogConfigCreate() and
LogConfigFree(), respectively.
2023-05-23 17:42:08 +00:00
5975222246 Fix leak in HttpClient. 2023-05-21 13:55:49 +00:00
814bef932f Fix warning about integer size mismatch. 2023-05-21 13:35:56 +00:00
2aa74e3156 Add some basic heap memory bounds protection. 2023-05-21 13:24:00 +00:00
767c8728f7 Fix memory leaks in hdoc. 2023-05-15 22:38:52 +00:00
40eac30b5c Import new Cytoplasm library based off of code from Telodendria.
Telodendria doesn't use this library yet, but it will soon.
2023-05-13 17:30:09 +00:00