0
0
Fork 0
mirror of https://github.com/matrix-construct/construct synced 2024-11-05 05:18:54 +01:00
Commit graph

1377 commits

Author SHA1 Message Date
Jason Volk
dd137d50e3 ircd::net: Move resolution constructor from ipport to remote. 2018-01-04 17:44:35 -08:00
Jason Volk
8ccdd8568f doc: Move conventions to STYLE; ircd: Add additional README related. 2018-01-04 17:44:34 -08:00
Jason Volk
1898cb307d ircd::net: Improve resolver interface. 2018-01-04 17:44:34 -08:00
Jason Volk
6f81d0c643 ircd::net: Minor simplify API. 2018-01-04 17:44:34 -08:00
Jason Volk
2bca92d85d ircd: We don't need this here; RocksDB has interface. 2018-01-04 17:44:34 -08:00
Jason Volk
26e04ecda4 ircd: buffer/net: Minor cleanup. 2018-01-04 17:44:34 -08:00
Jason Volk
acc73957f8 ircd::net: Socket interface package. 2018-01-04 17:44:34 -08:00
Jason Volk
9ad618a329 ircd::net: Move some string() / various cleanup. 2018-01-04 17:44:34 -08:00
Jason Volk
fa85596b6b ircd: Various minor cleanup. 2017-12-30 01:17:10 -07:00
Jason Volk
2606837044 ircd::net: Use fixed result stack buffer. 2017-12-29 23:03:35 -07:00
Jason Volk
c7d97eaf00 ircd::net: Minor cleanup/movement. 2017-12-29 23:03:35 -07:00
Jason Volk
126df4b54a ircd::net: Split resolve into file. 2017-12-29 22:44:15 -07:00
Jason Volk
35038f3d63 ircd::net: Reverse DNS resolution; various cleanup/related. 2017-12-29 22:38:00 -07:00
Jason Volk
8ec7c988a3 ircd::net: Add mass-resolution function. 2017-12-29 21:20:16 -07:00
Jason Volk
0eb16673ee ircd::net: Add resolve interface; Update remote interface. 2017-12-29 19:33:04 -07:00
Jason Volk
9871332957 fixup! Pin boost to 1.66.0. 2017-12-29 15:53:39 -07:00
Jason Volk
46482e61f2 ircd::net: Consistent nesting for null_remote to remote::null. 2017-12-28 15:26:19 -07:00
Jason Volk
01feeaab6e ircd::db: Provide len to elide the strlen(buf) on string_view{buf}. 2017-12-28 13:32:44 -07:00
Jason Volk
db24cef649 ircd::json: Minor cleanup/formatting. 2017-12-24 21:54:59 -07:00
Jason Volk
3d1a173358 ircd::net: Add extern null_remote. 2017-12-24 21:54:59 -07:00
Jason Volk
09d0c9b2d6 ircd: Respond with Allow header when 405'ing. 2017-12-24 21:54:59 -07:00
Jason Volk
36142718f6 ircd::http: Massage additional header related into response interface/stack. 2017-12-24 21:54:59 -07:00
Jason Volk
c20a2927d0 ircd: Minor reorg client/resource relationship. 2017-12-24 21:54:59 -07:00
Jason Volk
cd4586e780 ircd: Remove these extra flushes/clears. 2017-12-24 21:54:59 -07:00
Jason Volk
47293f2dc7 ircd: Simplify logger with stream_buffer. 2017-12-24 21:54:59 -07:00
Jason Volk
f4e85af4c2 ircd::log: Use reentrance_assertion; make principal buffer static. 2017-12-24 21:54:59 -07:00
Jason Volk
51ebd9c346 ircd::http: Update HTTP send-sides to write to stream_buffer. 2017-12-24 21:54:59 -07:00
Jason Volk
8178d96f64 ircd: Add iov size to client/server IO debug. 2017-12-24 21:54:59 -07:00
Jason Volk
3d5eea0ce3 ircd::net: Move these temp items here. 2017-12-24 21:54:58 -07:00
Jason Volk
f8d3fee8b6 ircd::client: Add comments; move around error handlers; related. 2017-12-24 21:54:58 -07:00
Jason Volk
40d6b6055b ircd::http: Remove the write_closure from the request parse object. 2017-12-24 21:54:58 -07:00
Jason Volk
eab178b97f ircd::net: Show a coarse io stat on disconnect for now. 2017-12-24 21:54:58 -07:00
Jason Volk
6b57387cc2 ircd::openssl: Add several suites of utils for OpenSSL/X.509/RSA/BIGNUM et al. 2017-12-24 21:54:58 -07:00
Jason Volk
bdf696b91f ircd::fs: Add these string_view overloads.
This is to not force string conversions in callerspace. Right now everything
gets converted to std::string internally but eventually string_view may be
preferable. Either way the overload finds the best behavior for now.
2017-12-24 20:25:40 -07:00
Jason Volk
27721860c2 ircd::fs: Add a file sizing suite. 2017-12-24 20:25:40 -07:00
Jason Volk
acff6139e9 ircd::http: Move request error handlers out of http (to client). 2017-12-24 20:25:40 -07:00
Jason Volk
5f939cc039 Remove certain cruft from .gitignore. 2017-12-12 14:59:41 -07:00
Jason Volk
f771e67dc7 Update library info. 2017-12-12 14:59:41 -07:00
Jason Volk
ada2b4ad17 ircd::http: Minor cleanup/reorg; use c_str() assertion in places. 2017-12-12 14:59:41 -07:00
Jason Volk
42246d8d5f ircd::json: Fix an empty string test. 2017-12-12 14:59:40 -07:00
Jason Volk
80931e4e86 ircd:Ⓜ️ Split m.cc; distribute inits; modules: Checkpoint matrix. 2017-12-12 14:59:40 -07:00
Jason Volk
f931308850 ircd/modules: Update resource / opts construction arguments. 2017-12-12 14:59:40 -07:00
Jason Volk
cc81ed2f33 ircd::net: Comment out this debug message contributing to excessive wind. 2017-12-12 14:59:40 -07:00
Jason Volk
03dea97bb2 ircd: Add preliminary RFC3986 grammar; move urlencoding there. 2017-12-12 14:59:40 -07:00
Jason Volk
d14d8a0f0f ircd::rfc1459: Cleanup namespace. 2017-12-12 14:59:40 -07:00
Jason Volk
e0f64a7ca2 ircd:Ⓜ️ Transitional improvements to mxid grammars & tools. 2017-12-12 14:59:40 -07:00
Jason Volk
1ddf0f546a ircd: Update various comments / documentation. 2017-12-12 14:59:40 -07:00
Jason Volk
c1bda4008f ircd::net: Fix port inclusion in these places. 2017-12-03 13:55:56 -08:00
Jason Volk
0bd2f896d0 ircd::mods: Add remangling to module system (pre dll::smart_lib); cleanup. 2017-12-02 13:07:55 -08:00
Jason Volk
2685125f05 ircd::openssl: Fix memleak. 2017-12-02 13:07:15 -08:00
Jason Volk
1a1a50f5f3 Checkpoint reorganization. 2017-11-30 12:30:19 -08:00
Jason Volk
7ef3b67213 ircd: Fix server.h inclusion checkpoint. 2017-11-30 11:23:48 -08:00
Jason Volk
3a057c80a4 ircd: Add preliminary skeleton for cuckoo suite. 2017-11-30 11:23:48 -08:00
Jason Volk
315d86a8d2 ircd: Checkpoint temp server link uniplexing... 2017-11-30 11:23:47 -08:00
Jason Volk
f928630747 ircd::db: Checkpoint current experimentals here. 2017-11-30 11:23:47 -08:00
Jason Volk
5d53cdab5e ircd:Ⓜ️ Checkpoint matrix. 2017-11-30 11:23:47 -08:00
Jason Volk
1c4d519db7 ircd::db: Use log::NOTICE facility rather than log::WARNING here. 2017-11-30 11:23:47 -08:00
Jason Volk
219d1ba245 ircd::json: Fix empty value stringification cases; Fix serialized number printing. 2017-11-30 11:23:47 -08:00
Jason Volk
96499c0e2a ircd:Ⓜ️ Improve room interface; Improve bootstrap/init related. 2017-11-30 11:23:47 -08:00
Jason Volk
2fa64e5b87 ircd::json: Update grammars: string escapes; generalize rules without raw[] if possible. 2017-11-30 11:23:47 -08:00
Jason Volk
d354991c68 ircd::json: Stub a canonize() function which isn't complete yet. 2017-11-30 11:23:47 -08:00
Jason Volk
a747098b65 ircd::net: listener: Explicit string ctor; no default port to ensure one is specified. 2017-11-30 11:23:47 -08:00
Jason Volk
d1f0667b1e ircd: Add validations of outgoing JSON. 2017-11-30 11:23:47 -08:00
Jason Volk
13aff1d7a8 ircd::rfc1459: Move grammars out of includes. 2017-11-30 11:23:46 -08:00
Jason Volk
bcebeb420d ircd: Add interrupt for server dtor. 2017-11-30 11:23:46 -08:00
Jason Volk
97672ccc8f ircd: Preliminary initial conf. 2017-11-30 11:23:46 -08:00
Jason Volk
0e2fe01426 ircd::json: Add a validator suite. 2017-11-30 11:23:46 -08:00
Jason Volk
b17293ee86 ircd::net: Add existential checks here. 2017-11-30 11:23:46 -08:00
Jason Volk
ea26fd0016 ircd::fs: Path cleanup. 2017-11-30 11:23:46 -08:00
Jason Volk
9df74c910c ircd::openssl: Minor cleanup. 2017-11-30 11:23:46 -08:00
Jason Volk
366b0531a1 ircd: Remove this warning message when everything is normal. 2017-11-30 11:23:46 -08:00
Jason Volk
ae289de529 ircd::ctx: Improve the pool counters. 2017-11-30 11:23:46 -08:00
Jason Volk
a046a56d0d ircd: Wrap the std::terminate() handler and add some related toys. 2017-11-30 11:23:46 -08:00
Jason Volk
f81a9d8da9 ircd::db: Remove cruft from moving query out of db. 2017-11-30 11:23:46 -08:00
Jason Volk
31b778ee0b ircd:Ⓜ️ Improve server keys related functions. 2017-11-30 11:23:46 -08:00
Jason Volk
8869b1577c ircd: Main init for server. 2017-11-30 11:23:45 -08:00
Jason Volk
6f392049ba ircd: Use the asio error stringifier. 2017-11-30 11:23:45 -08:00
Jason Volk
62caa95ec8 ircd: Move client request exception handler to where the rest are. 2017-11-30 11:23:45 -08:00
Jason Volk
1b1e9ace7a ircd::log: Polishing and commentary and assertions. 2017-11-30 11:23:45 -08:00
Jason Volk
532f416a3d ircd: Develop various server. 2017-11-30 11:23:45 -08:00
Jason Volk
69f05391a6 ircd::net: Use nothrowing remote() for socket; cleanup handler. 2017-11-30 11:23:45 -08:00
Jason Volk
6b961711cb ircd::net: Fix asio error code casting for SSL codes. 2017-11-30 11:23:45 -08:00
Jason Volk
0ef29fc433 ircd:Ⓜ️ Replace plaintext password storage with sha256. 2017-11-30 11:23:45 -08:00
Jason Volk
4793e4906c ircd:Ⓜ️ Checkpoint matrix top-half / modules. 2017-11-30 11:23:44 -08:00
Jason Volk
92c6f6c1a9 ircd: Split up matrix.cc. 2017-11-30 11:23:44 -08:00
Jason Volk
5b61e1d01f ircd::net/db: Hard debug log quiet for now; minor cleanup. 2017-11-30 11:23:44 -08:00
Jason Volk
87c6f91530 ircd::db: Improve column find by name from linear to logn; can still be O(1) with more work. 2017-11-30 11:23:44 -08:00
Jason Volk
6937e91fc3 ircd::net: OpenSSL/net interface for peer certificates so m:: can hash/verify. 2017-11-30 11:23:44 -08:00
Jason Volk
08469eb2a0 ircd::net: Tweak net::remote ctor related. 2017-11-30 11:23:44 -08:00
Jason Volk
78e8a3668d ircd::json: Add missing stringify participant; minor cleanup. 2017-11-30 11:23:44 -08:00
Jason Volk
c16a6e8baa ircd::ctx: Adjust prof defaults; minor cleanup. 2017-11-30 11:23:43 -08:00
Jason Volk
ea097c9f53 ircd: Split crypto.cc to hash.cc and rand.cc. 2017-11-30 11:23:43 -08:00
Jason Volk
b172fd5739 ircd::fmt: Assert for not finished before loop break. 2017-11-30 11:23:43 -08:00
Jason Volk
0df7ad850f ircd::net: Quick & likely success branch for these handlers. 2017-11-30 11:23:43 -08:00
Jason Volk
d7136bb393 ircd: Improve and comment on runlevel / client interruption. 2017-11-30 11:23:43 -08:00
Jason Volk
99e431c8da ircd::ctx: Further fix and clarify the POST/DETACH leak potential. 2017-11-30 11:23:42 -08:00
Jason Volk
7f97ffdede ircd::json: Add support for parsing a vector of objects (non-standard). 2017-11-30 11:23:42 -08:00
Jason Volk
d09a3096be ircd::json: Clean up expectation failure catching. 2017-11-30 11:23:42 -08:00
Jason Volk
26800d5db4 ircd::ctx: Improve the spawn sequence to avoid complications. 2017-11-30 11:23:42 -08:00
Jason Volk
570f4d7f54 ircd::json: stringify empty array as expected by serialized size. 2017-11-30 11:23:42 -08:00
Jason Volk
2902fcf71d ircd/charybdis: Fix these stream manipulations. 2017-11-30 11:23:42 -08:00
Jason Volk
2930b93dcb ircd::net: Various net/client/listener bugfixes/cleanup. 2017-11-30 11:23:42 -08:00
Jason Volk
526bfa23e1 ircd:Ⓜ️ Add pretty/pretty_oneline for preferred event viewing; minor event rel. 2017-11-30 11:23:41 -08:00
Jason Volk
ac756a8856 ircd: Use dynamic allocations for these resource response buffers. 2017-11-30 11:23:41 -08:00
Jason Volk
bc5f429681 ircd::db: Fix a rocksdb api misuse. 2017-11-30 11:23:41 -08:00
Jason Volk
2ce9b0521f ircd::net: Various fixes / error handling / api. 2017-11-30 11:23:41 -08:00
Jason Volk
f36d3e2209 ircd::log: Fix these clear and flush points. 2017-11-30 11:23:41 -08:00
Jason Volk
32e0d3c5df ircd::ctx: Improve spawning; fix bug. 2017-11-30 11:23:41 -08:00
Jason Volk
ae34691610 ircd::log: Optimize logger to use a single buffer + single write. 2017-11-30 11:23:41 -08:00
Jason Volk
888c7d5739 ircd::net: Update log messages. 2017-11-30 11:23:40 -08:00
Jason Volk
8b573378e8 ircd: Fixes to client related to net. 2017-11-30 11:23:40 -08:00
Jason Volk
f10662fe7d ircd:Ⓜ️ Checkpoint matrix. 2017-11-30 11:23:40 -08:00
Jason Volk
6a024e9e16 ircd: Add preliminary 'server' as a client to *other* servers. 2017-11-30 11:23:40 -08:00
Jason Volk
52641ba47f ircd::net: Add net::remote, suite; update network utils; fixes. 2017-11-30 11:23:40 -08:00
Jason Volk
38023e0d9b ircd::openssl: Introduce openssl namespace for anything related to driving that beast. 2017-11-30 11:23:40 -08:00
Jason Volk
417e8ecad0 ircd::db: Fix comment; suppress a very verbose seek log message here. 2017-11-30 11:23:40 -08:00
Jason Volk
6562efb11e ircd::json: Add 'defaults' construct to iov. 2017-11-30 11:23:40 -08:00
Jason Volk
4a44d0368a ircd::http: Make server response header more like the User-Agent we also use as a client. 2017-11-30 11:23:39 -08:00
Jason Volk
92270b74ac ircd::http: Parse a connection header. 2017-11-30 11:23:39 -08:00
Jason Volk
a67228e8b5 ircd::log: Allow CRITICAL log messages to break through suppression. 2017-11-30 11:23:39 -08:00
Jason Volk
14fea52dcb ircd::net: Add async overloads; various cleanup. 2017-10-19 03:55:24 -07:00
Jason Volk
b83d7da7a0 ircd::log: Make sure the stream is flushed and reset when relinquishing control. 2017-10-19 01:38:25 -07:00
Jason Volk
0f51c84fb0 ircd::net: Move net into directory. 2017-10-19 01:30:19 -07:00
Jason Volk
0f00f21a1d ircd: Add preliminary tcmalloc version check. 2017-10-19 01:05:41 -07:00
Jason Volk
7feb0dff79 ircd: client: various cleanup. 2017-10-19 01:04:52 -07:00
Jason Volk
c501f21ac2 ircd::net: Move listener next() to the accept event slice; various cleanup. 2017-10-19 01:03:40 -07:00
Jason Volk
a1e798f12c ircd::net: Improve dc/socket dtor related. 2017-10-19 01:02:30 -07:00
Jason Volk
df8faae81d ircd::net: Improve some exception specs related to socket. 2017-10-19 01:02:19 -07:00
Jason Volk
c157967559 irct::ctx: Add this basic pool debug. 2017-10-19 00:58:43 -07:00
Jason Volk
8fc336a1e9 ircd::net: No user input so use standard ::snprintf() here. 2017-10-17 00:48:10 -07:00
Jason Volk
3c0d5bd5d6 ircd::db: Fix empty row seek; fix potential coherence issue on offload. 2017-10-17 00:47:30 -07:00
Jason Volk
cdcd2e2fb9 ircd: Add std::chrono lex_cast; cleanup lex_cast buffer argument related. 2017-10-17 00:41:51 -07:00
Jason Volk
0be93870ea ircd::log: Address any logger reentrancy; various cleanup. 2017-10-17 00:41:10 -07:00
Jason Volk
5797e99d81 ircd:Ⓜ️ Improve / cleanup ID related. 2017-10-15 21:54:28 -07:00
Jason Volk
33a35d5244 ircd: Add X-Matrix verification for resources. 2017-10-15 21:30:19 -07:00
Jason Volk
29d9f2bfdb ircd::net: Improve some error handling and log message related. 2017-10-15 21:28:40 -07:00
Jason Volk
37308b1672 ircd::log: Add context name and id into logger format. 2017-10-15 21:27:36 -07:00
Jason Volk
115940e803 ircd::http: Preserve leading slash from user's URL so we can use it for X-Matrix auth. 2017-10-15 21:26:05 -07:00
Jason Volk
87b62002dd fixup! ircd::json: Better bool related conversions etc. 2017-10-15 21:25:03 -07:00
Jason Volk
f20ff13a44 ircd::json: Sort members in during opportunity in this stringify(). 2017-10-15 21:22:18 -07:00
Jason Volk
9c875c71a6 ircd::json: Better bool related conversions etc. 2017-10-15 21:21:56 -07:00
Jason Volk
08b961351d ircd::fmt: Add more string types for the %s specifier here for now. 2017-10-15 21:20:25 -07:00
Jason Volk
5ca5f4b405 ircd::db: Improve formatting for seek debug messages. 2017-10-15 21:19:34 -07:00
Jason Volk
a3f7a41650 ircd::json: Rename json::string to json::strung and maintain json::string as intuitive type. 2017-10-15 21:18:42 -07:00
Jason Volk
124f7ea12a ircd::ctx: Add utils for getting this_ctxt name and id; truncate default name literal. 2017-10-15 21:12:58 -07:00
Jason Volk
18bbf758f3 ircd/modules: Improve path param parsing related; various m:: related. 2017-10-11 20:54:03 -07:00
Jason Volk
1a4c57653b ircd: Improve this stack buffer for now. 2017-10-11 20:54:02 -07:00
Jason Volk
6ba6cb1e7f ircd: Add version 5.0.0 to libircd. 2017-10-11 20:54:02 -07:00
Jason Volk
045d38d034 ircd::http: Add authorization; multiple-choices error; improve header proffer; cleanup/reorg. 2017-10-11 20:54:02 -07:00
Jason Volk
908fde12c4 ircd: Add string replace() utils. 2017-10-11 20:54:02 -07:00
Jason Volk
4f0de4915d ircd: Rename tokens_count() to token_count(). 2017-10-11 20:54:02 -07:00
Jason Volk
8da4874f2c ircd: Uniform initialization style for these. 2017-10-11 20:54:01 -07:00
Jason Volk
a663e80254 ircd::fs: Fix narrowing. 2017-10-11 20:54:01 -07:00
Jason Volk
3425659d7f ircd::fs: Add very preliminary aio and ircd init for such. 2017-10-11 20:54:01 -07:00
Jason Volk
dffe222a78 ircd: Improve date utils; add date formatted string output; related. 2017-10-11 20:54:01 -07:00
Jason Volk
b9f13ed2c2 ircd: Remove cruft. 2017-10-11 20:54:01 -07:00
Jason Volk
e3963da007 ircd: Various comments added/modified. 2017-10-11 18:18:20 -07:00
Jason Volk
2839eb4b50 ircd::log: Make logger threadsafe by injecting other thread's messages into ios. 2017-10-11 18:18:20 -07:00
Jason Volk
eb56befef0 ircd: Improve thread id related; add public functions to post to ios. 2017-10-11 18:18:19 -07:00
Jason Volk
638f5469c5 ircd::json: Minor conflict fix. 2017-10-11 18:18:19 -07:00
Jason Volk
5c69d3df5a ircd::crh: Improve hash related interface; comments etc. 2017-10-11 18:18:19 -07:00
Jason Volk
edcd95cd8f modules/ircd:Ⓜ️ Upgrade various json tuple templates with string literals. 2017-10-11 18:18:19 -07:00
Jason Volk
2d90965816 configure.ac: Various cleanup; Add more warnings; Add optimization flags for testing. 2017-10-11 18:18:19 -07:00
Jason Volk
75648c7397 configure.ac: Add an RB_DEBUG_LEVEL which will always be defined; 0 when RB_DEBUG is not defined. 2017-10-11 18:18:19 -07:00
Jason Volk
bd1a66e608 ircd: minor simplifications; minor cleanup. 2017-10-11 18:18:18 -07:00
Jason Volk
dc2346a753 ircd::http: Cleanup error messages. 2017-10-11 18:18:18 -07:00
Jason Volk
db43edb212 ircd: Various labels to help de-virtualization on recommendation of -Wsuggest-final-types. 2017-10-11 18:18:18 -07:00
Jason Volk
fccfa03308 ircd: Add mutable_buffer ctor to parse::buffer; cleanup parse related. 2017-10-11 18:18:17 -07:00
Jason Volk
9d4c2fb5c3 ircd: Turn off coredumps in production to not leak secret key material. 2017-10-03 04:27:15 -07:00
Jason Volk
8a9f2597b9 ircd: Fix http resource lookup. 2017-10-03 04:27:15 -07:00
Jason Volk
20869309a2 Checkpoint matrix with preliminary federation client and keyserver related. 2017-10-03 04:27:15 -07:00
Jason Volk
5073096335 ircd:Ⓜ️ Improve id construction / validation related. 2017-10-03 04:27:15 -07:00
Jason Volk
fe4c59003f ircd::net: Add debugging messages for client connect; also for unhandled server errors. 2017-10-03 04:27:14 -07:00
Jason Volk
5a8cc4e8cd ircd::fs: Fix error. 2017-10-03 04:27:14 -07:00
Jason Volk
5335371b1a ircd::http: Elide the strlcat() for user header generation. 2017-10-03 04:27:14 -07:00
Jason Volk
8c4925419a ircd: Improve base64 suite. 2017-10-03 04:27:14 -07:00
Jason Volk
67dba9c471 ircd::crh: Fix buffer argument types; cleanup. 2017-10-03 04:27:14 -07:00
Jason Volk
234f7e34d7 ircd::ed25519: Add filesystem related for sk; add seed constructor; various. 2017-10-03 04:27:14 -07:00
Jason Volk
4954c90e27 ircd::fs: Improve basic file read/write/append into buffers. 2017-10-03 04:27:14 -07:00
Jason Volk
0eb10c0495 ircd: Add b64encoded_unpadded variant. 2017-10-03 04:27:13 -07:00
Jason Volk
9c712486a1 ircd: Split up lexical.h; comments; cleanup. 2017-10-03 04:27:13 -07:00
Jason Volk
ec89d0ca25 ircd::db: I don't think this warning matters... 2017-10-03 04:27:13 -07:00
Jason Volk
1502b973da ircd: Add ed25519 dsa; reorg sodium related. 2017-10-03 04:27:13 -07:00
Jason Volk
014673d718 ircd::http: Minor urldecode grammar fix. 2017-10-03 04:27:12 -07:00
Jason Volk
4a6b3f5fcc Add support for libsodium (NaCl) cryptography. 2017-10-03 04:27:10 -07:00
Jason Volk
57f8b28330 ircd: Add X-IRCd-Response-Time header. 2017-10-03 04:17:11 -07:00
Jason Volk
3d754bffba ircd::db: Give RocksDB its own logging facility. 2017-10-03 04:17:11 -07:00
Jason Volk
19451ab914 ircd::ctx: shared_mutex; peek / view / shared_view; fixes. 2017-10-03 04:17:10 -07:00
Jason Volk
84d7746165 ircd: Add net; various asio related. 2017-10-03 04:17:10 -07:00
Jason Volk
babde26165 make: Minor cleanup. 2017-10-03 04:17:10 -07:00
Jason Volk
b9d657924d ircd::http: Various fixes; add urldecode; chunked encoding content. 2017-10-03 04:17:10 -07:00
Jason Volk
9ae9ea7357 ircd: Reorg crypto related by dependency. 2017-10-03 04:17:10 -07:00
Jason Volk
fae5984d5e ircd: Rename hash.cc to crypto.cc. 2017-10-03 04:17:10 -07:00
Jason Volk
ade7a138c4 ircd::db: Simplify the db::row using vector_view<cell>. 2017-10-03 04:17:09 -07:00
Jason Volk
4090b80d60 ircd::json: Add missing serialized() participants. 2017-10-03 04:17:09 -07:00
Jason Volk
f2264b02e6 ircd::http: Preliminary support for chunked encoding; improve header args. 2017-10-03 04:17:09 -07:00
Jason Volk
5d7eee1937 ircd:Ⓜ️ Simplify the event query interface by making more internal decisions from query data. 2017-10-03 04:17:08 -07:00
Jason Volk
c4a6addd5a ircd::ctx: Add critical_assertion debugging tool. 2017-10-03 04:17:08 -07:00
Jason Volk
bc9b0e990c ircd::json: Simplify expectation error message. 2017-10-03 04:17:08 -07:00
Jason Volk
dc1281a17c ircd::db: Fix iov related. 2017-10-03 04:17:08 -07:00
Jason Volk
f8d6e2dddc ircd::db: Update docs. 2017-10-03 04:17:08 -07:00
Jason Volk
dacff8eb9f ircd::db: Rename where to query. 2017-10-03 04:17:08 -07:00
Jason Volk
016ff64dbb ircd:Ⓜ️ Preliminary efficient membership query object. 2017-10-03 04:17:08 -07:00
Jason Volk
ffca90dd7b ircd:Ⓜ️ Indexers need to check if their columns were given by the user. 2017-10-03 04:17:07 -07:00
Jason Volk
92a8d8e2bf ircd:Ⓜ️ Improve interfaces; Add prelim sync loop; Add send resource handler. 2017-10-03 04:17:07 -07:00
Jason Volk
b309793ed0 ircd::ctx: Add some docs; minor cleanup. 2017-10-03 04:17:07 -07:00
Jason Volk
816b5125b2 ircd: Improve/cleanup ircd::init()/ircd::stop() related. 2017-10-03 04:17:07 -07:00
Jason Volk
d4508e157f ircd:Ⓜ️ Deduplicate user related in m::user. Update various resource related. 2017-09-24 20:48:53 -07:00
Jason Volk
ca1f5bbbe5 ircd:Ⓜ️ Fix some id constructor behavior. 2017-09-24 20:48:53 -07:00
Jason Volk
c032c686f6 Checkpoint matrix application basis. 2017-09-24 18:16:45 -07:00
Jason Volk
196d158398 ircd::db: Improve debug log messages. 2017-09-24 18:16:45 -07:00
Jason Volk
f060bd4fc5 ircd: Support resource response json::value for array/object values; cleanup. 2017-09-24 18:16:45 -07:00
Jason Volk
2a579390be ircd::db: Minor cleanup. 2017-09-24 18:16:45 -07:00
Jason Volk
f4682522a8 ircd::util: Rename stopped overload to nostart. 2017-09-24 18:16:44 -07:00
Jason Volk
0b1c37c585 ircd::db: Fix reverse iteration; cleanup seek; add ORDERED flag (prelim). 2017-09-24 18:16:44 -07:00
Jason Volk
7f7ef9a4bf ircd: Add client request timer related. 2017-09-24 18:16:44 -07:00
Jason Volk
c138c53449 ircd::db: Log snapshot sequence numbers. 2017-09-24 18:16:44 -07:00
Jason Volk
dd7c1adb05 ircd::db: Add timer to row seek. 2017-09-24 18:16:44 -07:00
Jason Volk
d7c59f4e49 ircd::db: Improve seek() stack. 2017-09-24 18:16:44 -07:00
Jason Volk
4077307ab5 ircd::db: Minor cleanup. 2017-09-24 18:16:43 -07:00
Jason Volk
1a35514653 ircd::db: Fixes for reverse iteration. 2017-09-24 18:16:43 -07:00
Jason Volk
10eabc5e40 ircd::db: Remove this from row constructor. 2017-09-24 18:16:43 -07:00
Jason Volk
c4b34b9e66 ircd::db: cell constructor branch on empty key. 2017-09-24 18:16:43 -07:00
Jason Volk
b29224aa3a ircd::db: Cleanup comparator related. 2017-09-24 18:16:43 -07:00
Jason Volk
2a17d2b939 ircd: Fix string length of demangle() value. 2017-09-24 18:16:43 -07:00
Jason Volk
57bcae7a32 ircd: Update notes. 2017-09-24 18:16:42 -07:00
Jason Volk
c87934cd4d ircd::crh: Support SHA256. 2017-09-24 18:16:42 -07:00
Jason Volk
4b17211a04 ircd::buffer: Add raw_buffer for binary data; lexical: simplify a2u/b64 related. 2017-09-24 18:16:42 -07:00
Jason Volk
d7def063b6 ircd: Add tools for binary/hex/b64 conversions. 2017-09-24 18:16:42 -07:00
Jason Volk
b207b9e909 ircd: Rename ircd::scope to ircd::unwind. 2017-09-24 18:16:41 -07:00
Jason Volk
56074325a1 ircd::db: Use extern const comparators and expose them in headers. 2017-09-24 18:16:41 -07:00
Jason Volk
69eab27209 ircd::db: Complete reverse iterations. 2017-09-24 18:16:41 -07:00
Jason Volk
43ddaa90a4 ircd::mods: Fix string termination for demangle(). 2017-09-24 18:16:41 -07:00
Jason Volk
dae391a578 ircd::db: Refactor opts to not store ilists; cleanup index/column relationship; cleanup where. 2017-09-24 18:16:41 -07:00
Jason Volk
f7708f47f6 ircd::db: Test valid-equal to index on cell load. 2017-09-24 18:16:40 -07:00
Jason Volk
fc753f7440 ircd::db: Add constant time seek to column in row by index number. 2017-09-24 18:16:40 -07:00
Jason Volk
971496817b Minor fixes / cleanup. 2017-09-24 18:16:40 -07:00
Jason Volk
46588d0ae8 ircd::db: Public functions to get the descriptor for a column. 2017-09-24 18:16:39 -07:00
Jason Volk
7f548cee1c ircd: Make asio header; comments; add special continuation for yielding to asio. 2017-09-24 18:16:39 -07:00
Jason Volk
a9ac3f9956 ircd: Move ircd::mods::demangle() to ircd::demangle(). 2017-09-24 18:16:39 -07:00
Jason Volk
3a56a30d77 ircd: Support char overloads for all tokenizers. 2017-09-24 18:16:38 -07:00
Jason Volk
e0c0f71754 ircd: Fix client shutdown. 2017-09-24 18:16:38 -07:00
Jason Volk
0d393c58dd ircd::db: Various cleanup / movements. 2017-09-24 18:16:38 -07:00
Jason Volk
1acd278632 ircd::ctx: Updates; add ctx::view; add preliminary ctx::fault; various reorg. 2017-09-24 18:16:38 -07:00
Jason Volk
4c50b2794f ircd::json: Various fixes/cleanup/conversions. 2017-09-24 18:16:38 -07:00
Jason Volk
38c1d2e195 ircd::json: Complete serialize/stringify for object/object::member. 2017-09-24 18:16:37 -07:00
Jason Volk
68b0356203 ircd: Simplify some info log messages. 2017-09-24 18:16:37 -07:00
Jason Volk
a12309be44 ircd: Log version information on startup. 2017-09-24 18:16:37 -07:00
Jason Volk
5e137c676f ircd::db: Use vector for descriptors. 2017-09-24 18:16:37 -07:00
Jason Volk
c50461c4c6 ircd::db: Rename txn to iov. 2017-09-24 18:16:37 -07:00
Jason Volk
fb026f58a7 ircd::db: Add features to txn. 2017-09-24 18:16:37 -07:00
Jason Volk
d7e9c9182a ircd::db: Add txn class to compose a transaction in stages. 2017-09-24 18:16:37 -07:00
Jason Volk
b27a2a6423 ircd::db: Support constant-time column lookup by id; various cleanup/fixes. 2017-09-24 18:16:37 -07:00
Jason Volk
469d286175 ircd: Use db based access_token query for auth. 2017-09-24 18:16:37 -07:00
Jason Volk
5261f9dd25 ircd::db: row cleanup / fixes. 2017-09-24 18:16:36 -07:00
Jason Volk
47cd7790ed ircd::json: Simplify generators with common list protocol. 2017-09-24 18:16:36 -07:00
Jason Volk
7d61dc4441 ircd::db: Reflect with string_view. 2017-09-24 18:16:36 -07:00
Jason Volk
276a902a62 ircd::db: Improve valid checking and valid() suite. 2017-09-24 18:16:36 -07:00
Jason Volk
1f8fb24e8d ircd: Update various comments. 2017-09-24 18:16:36 -07:00
Jason Volk
65802d3e47 ircd::resource: Cleanup JSON iov related; Add exception handlers. 2017-09-24 18:16:36 -07:00
Jason Volk
ccbd507c35 ircd::db: Fix issues with cell. 2017-09-24 18:16:35 -07:00
Jason Volk
eaca7429b6 ircd::json: Simplify grammar / various cleanup. 2017-09-24 18:16:35 -07:00
Jason Volk
438866a3d7 ircd::json: Fix estimation error. 2017-09-24 18:16:35 -07:00
Jason Volk
d3feb23a25 ircd: Add resource response json::iov related conversions for members lists. 2017-09-24 18:16:35 -07:00
Jason Volk
cd535b416b ircd::http: Check for outbound transfer-encoding. 2017-09-24 18:16:35 -07:00
Jason Volk
ca9ea5ac0c ircd::db: Simplify/fix seek(row). 2017-09-24 18:16:34 -07:00
Jason Volk
6aacf73dfa ircd: Remove the tokens container. 2017-09-24 18:16:34 -07:00
Jason Volk
6503d28006 ircd: Simplify this service stack for now. 2017-09-24 18:16:34 -07:00
Jason Volk
214e5e7107 Compiler recommended to use std::terminate() rather than throw into noexcept. 2017-09-24 18:16:34 -07:00
Jason Volk
6a5159499f ircd::json: Use ircd::iov for json::iov. 2017-09-24 18:16:34 -07:00
Jason Volk
f8fc03e57b ircd::json: Improve value semantics and various fixes. 2017-09-24 18:16:34 -07:00
Jason Volk
a0aeb2de2d configure.ac/Makefile: Add debug conditionals. 2017-09-24 18:16:34 -07:00
Jason Volk
54d6793f59 Update various documentation and comments. 2017-09-24 18:16:33 -07:00
Jason Volk
7cc4ed56ab ircd: Support both iov and ilist for socket and buffer related. 2017-09-24 18:16:33 -07:00
Jason Volk
8ad134c565 ircd::json: Rename builder to iov. 2017-09-24 18:16:33 -07:00
Jason Volk
6cd58b0d6a ircd: Update various comments / minor cleanup. 2017-09-24 18:16:32 -07:00
Jason Volk
e95fe7fbd9 ircd::json: Improve tuple/builder related. 2017-09-24 18:16:32 -07:00
Jason Volk
db748cae81 ircd::resource: Accept json::member for response for now. 2017-09-24 18:16:32 -07:00
Jason Volk
147a49a86c ircd::json: Improve stringification interface et al. 2017-09-08 07:47:07 -07:00
Jason Volk
85b699c286 Various makefile cleanup. 2017-09-08 03:47:53 -07:00
Jason Volk
1cea631f60 ircd::m modules: Matrix reinterface checkpoint. 2017-09-08 03:47:53 -07:00
Jason Volk
a89a8dfa5f ircd::db: Add preliminary cursor and where clause query. 2017-09-08 03:47:52 -07:00
Jason Volk
7baac31cc7 ircd: Add main init for ircd::db. 2017-09-08 03:47:52 -07:00
Jason Volk
6eb54bb67a ircd::buffer: Add extern linkage for null buffers. 2017-09-08 03:47:52 -07:00
Jason Volk
4cb99ba1a4 ircd::resource: Cleanup / fixes. 2017-09-08 03:47:52 -07:00
Jason Volk
d219858e73 ircd::db: Improve commitment stack. 2017-09-08 03:47:52 -07:00
Jason Volk
682686bcae ircd::db: Employ c++1z extensions to namespacing. 2017-09-08 03:47:52 -07:00
Jason Volk
5f25d90fd2 ircd::db: Add index interface. 2017-09-08 03:47:52 -07:00
Jason Volk
277765ebbc ircd::fmt: Show demangled type name of faulty argument. 2017-09-08 03:47:52 -07:00
Jason Volk
4eeb1c093d ircd::http: Proper exception when parse buffer is too small. 2017-09-08 03:47:51 -07:00
Jason Volk
c627095f51 ircd: Add date.h header for date and time utilities. 2017-09-08 03:47:51 -07:00
Jason Volk
b829c5d7ba ircd::json: Extend interface with some hackses for now but this has to be revisited eventually. 2017-09-08 03:47:51 -07:00
Jason Volk
1e7c0daed2 ircd::db: Improve opts, snapshot, and conversions for column::iterator. 2017-09-08 03:47:51 -07:00
Jason Volk
96d121c82a m: Improve mxid class 2017-09-08 03:47:50 -07:00
Jason Volk
f98be1582d ircd::ctx: Expose stack usage functions to user. 2017-09-08 03:47:50 -07:00
Jason Volk
cbdd176819 ircd::db: Remove unnecessary shared_ptr for column instance. 2017-09-08 03:47:50 -07:00
Jason Volk
e46faaf882 ircd::db: Support prefix indexing. 2017-09-08 03:47:50 -07:00
Jason Volk
69917f153f ircd::db: Add json::tuple related and utils to row. 2017-09-08 03:47:50 -07:00
Jason Volk
0ca1ebba61 ircd::db: Fix valid condition bugs and minor cleanup. 2017-09-08 03:47:49 -07:00
Jason Volk
19c5e6c83b ircd::db: Add generalized database delta interface. 2017-09-08 03:47:49 -07:00
Jason Volk
f729fd0917 ircd::db: Expose enum class pos. 2017-09-08 03:47:49 -07:00
Jason Volk
e583c0885d ircd::db: Improve seek() interface suite. 2017-09-08 03:47:49 -07:00
Jason Volk
62a68d8931 ircd::db: Use pointers in the delta tuple for more flexible semantics. 2017-09-08 03:47:49 -07:00
Jason Volk
04129d7444 ircd::json: Use proper output grammar for literal generation. 2017-09-08 03:47:49 -07:00
Jason Volk
7c9c0ffa38 ircd::mods: Rewrite undefined symbol exception using demangling. 2017-09-08 03:47:49 -07:00
Jason Volk
d9a4f06bf6 ircd: Employ namespace scope extensions from c++1z/gnu++14.
This is not a move to c++17. If the compiler happens to have support
for c++17 namespace scope resolution, they have been kind enough to
backport it to gnu++14. This limits our support for really old c++14
compilers, but that was limited anyway. GCC 6.1 and clang 3.6 tested.
2017-09-08 03:47:46 -07:00
Jason Volk
28cf226c3a ircd::mods: Add cxx abi name demangling. 2017-09-08 03:46:43 -07:00
Jason Volk
c43c8f83d3 ircd::listen: Fixes/cleanup and scaffold of options testing. 2017-08-23 15:52:15 -06:00
Jason Volk
207ac4ef53 ircd: Various improvements to client and socket related. 2017-08-23 15:52:15 -06:00
Jason Volk
ca608402f5 ircd::db: Various improvements to DB subsystem. 2017-08-23 15:52:15 -06:00
Jason Volk
48148c640c ircd: Add std::random subsystem and utils. 2017-08-23 15:52:15 -06:00
Jason Volk
b6d51b89dd ircd::ctx: Patch issues with direct jump. 2017-08-23 15:52:15 -06:00
Jason Volk
9f12672567 ircd::db: Fix seek offload procedure. 2017-08-23 15:52:15 -06:00
Jason Volk
5fe03e5c0a ircd::mods: Add unpostfixed() and postfixed() for module names. 2017-08-23 15:52:14 -06:00
Jason Volk
fe5614387e ircd::listen: Add string options overload. 2017-08-23 15:52:14 -06:00
Jason Volk
6db3c55f74 ircd::fs: Add directory creation. 2017-08-23 15:52:14 -06:00
Jason Volk
0149610bb2 ircd: Various matrix library / modules / database development. 2017-08-23 15:51:34 -06:00
Jason Volk
10472684f2 ircd: Cleanup client/ircd main. Fixes for exit notification. 2017-08-23 15:50:37 -06:00
Jason Volk
a32210a64d ircd: Support proper socket disconnect for SSL. 2017-08-23 15:49:33 -06:00
Jason Volk
144159c637 ircd: Mark the Access-Control-Allow-Origin header so it is not forgotten. 2017-08-23 15:48:46 -06:00
Jason Volk
1cb5433fce fixup! fixup! ircd::json/modules: Rename various types. 2017-08-23 15:48:28 -06:00
Jason Volk
dbbd72fe75 ircd: Handle a resource not found properly. 2017-08-23 15:47:54 -06:00
Jason Volk
60a22a0216 Update README / info.cc copyright / accoutrements. 2017-08-23 15:45:41 -06:00
Jason Volk
ab540c378c ircd::http: Increase these buffers (unnecessary; todo optimize). 2017-08-23 15:43:57 -06:00
Jason Volk
5751555834 ircd::fs: Fix ls_recursive / directory iteration related. 2017-08-23 15:43:25 -06:00
Jason Volk
a7cb94d042 ircd: Add listener device. 2017-08-23 15:42:53 -06:00
Jason Volk
caa6ed58e5 ircd: Makefile improvements. 2017-08-23 15:39:41 -06:00
Jason Volk
e09f272592 ircd::db: Improve/comment DB subsystem; Add version identification. 2017-08-23 15:38:51 -06:00
Jason Volk
4fd787d9d5 ircd::json/modules: Rename various types. 2017-08-23 15:32:28 -06:00
Jason Volk
2a6527993b fixup! ircd: Remove aborted cruft. 2017-08-23 15:30:24 -06:00
Jason Volk
c9e947e66f ircd: Remove aborted cruft. 2017-08-23 15:27:41 -06:00
Jason Volk
4d4a56fe9c ircd::js: Upgrade SpiderMonkey to esr52 from esr45. 2017-08-23 15:25:22 -06:00
Jason Volk
4f095024ee ircd::db: Update pure-virtual requirement in database::stats. 2017-08-23 15:19:35 -06:00
Jason Volk
6e44074bad ircd: Various client / listener / main related. 2017-08-23 15:13:57 -06:00
Jason Volk
c1ef99c0cd ircd::conf: Doomed conf related. 2017-08-23 15:12:16 -06:00
Jason Volk
a3117391b5 ircd/modules: Preliminary matrix scaffold. 2017-08-23 15:10:28 -06:00
Jason Volk
a57070a9cf ircd: Minor socket log message improvements. 2017-08-23 15:06:58 -06:00
Jason Volk
30fb1d59d7 ircd: Preliminary resource handler infrastructure. 2017-08-23 15:06:14 -06:00
Jason Volk
2172b39f9e ircd::js: Minor fixes to JS subsystem. 2017-08-23 15:04:45 -06:00
Jason Volk
03734c7fb5 ircd::json: Fixes to grammar and generator related. 2017-08-23 15:02:24 -06:00
Jason Volk
c1638d1dfa ircd::http: Fixes to HTTP grammar and output. 2017-08-23 15:00:21 -06:00
Jason Volk
a880e2e43e ircd::ctx: Add minor commentary. 2017-08-23 14:59:27 -06:00
Jason Volk
9ea5eceb0e ircd::fs: Add function to read file from local filesystem. 2017-08-23 14:56:52 -06:00
Jason Volk
cd7d86b699 ircd::fmt: Add lowercase hex specifier. 2017-04-06 18:34:44 -07:00
Jason Volk
39ab4d1c68 fixup! ircd::fmt: Cleanup grammar; fixes; support std::exception type to %s. 2017-04-06 18:34:09 -07:00
Jason Volk
4b2b7ea292 ircd::http: Allow elision of leading slash and empty '?' query. 2017-04-06 16:54:47 -07:00
Jason Volk
6097e82974 ircd: Add more HTTP status mappings. 2017-04-06 16:54:20 -07:00
Jason Volk
05f297c756 ircd: Fix token_last() iteration. 2017-04-04 22:12:32 -07:00
Jason Volk
17926e095f ircd::mods: Add workaround for dlclose() recursion issue. 2017-04-04 16:10:29 -07:00
Jason Volk
7ff04618c0 ircd;modules: Minor Makefile tweaks. 2017-04-04 16:10:29 -07:00