1e7342d0f4
* Move certificate, key, DH parameters and configuration to heap (Documentation states that setting new configuration, e.g. during a rehash, is unsupported while connections using that configuration are active) This is the same approach as the fix for #186 Refcount these structures so as to not introduce a memory leak On rehash, it will use new structures only if there are no errors in constructing them * Make fingerprint generation work for TLS connections See the comments in the newly created file for an explanation * Fix memory leak when generating a fingerprint from a file * Add better error-reporting (strings in addition to numbers) where possible * Coalesce several connection memory allocations into one function * Reduce boilerplate where possible (Charybdis targets C99) * Support private key being in certificate file, and having no DH parameters file * Correct erroneous closing comment |
||
---|---|---|
.. | ||
include | ||
src | ||
acinclude.m4 | ||
autogen.sh | ||
configure.ac | ||
COPYING | ||
CREDITS | ||
install-sh | ||
librb.pc.in | ||
Makefile.am | ||
README.md | ||
TODO |
librb
This is based on libratbox, the common runtime support code in ircd-ratbox. It has significant modifications and is no longer compatible with libratbox itself (nor can be used as a dropin replacement), so we renamed it.
original libratbox notes
- Most of this code isn't anywhere near threadsafe at this point. Don't hold your breath on this either.
- The linebuf code is designed to deal with pretty much 512 bytes per line and that is it. Anything beyond that length unless in raw mode, gets discard. For some non-irc purposes, this can be a problem, but for ircd stuff its fine.
- The helper code when transmitting data between helpers, the same 512 byte limit applies there as we recycle the linebuf code for this.