0
0
Fork 0
mirror of https://github.com/matrix-construct/construct synced 2024-11-26 16:52:44 +01:00
Commit graph

1025 commits

Author SHA1 Message Date
Jason Volk
368838d5a5 ircd::server: Add preliminary write loop; minor cleanup. 2018-01-15 03:12:56 -08:00
Jason Volk
d62afeb0a7 ircd::net: Add RFC1035 preliminary stub; minor reorg of resolver related. 2018-01-14 20:45:30 -08:00
Jason Volk
2962ecdc72 ircd: Add preliminary RFC1035 support. 2018-01-14 20:45:30 -08:00
Jason Volk
b2503ba1d0 ircd::util: Fix bswap() to not rely on data()/size() et al. 2018-01-14 20:45:30 -08:00
Jason Volk
af0c02cc10 ircd::buffer: Allow returning completed() mutable_buffer. 2018-01-14 20:45:30 -08:00
Jason Volk
314bcb3d30 ircd::net: Update read()/write() strategies. 2018-01-14 20:45:30 -08:00
Jason Volk
7b62568ff0 ircd::ctx: Replace std::deque's in ctx::mutex and ctx::shared_mutex. 2018-01-13 23:45:36 -08:00
Jason Volk
dcd36f8200 ircd::ctx: Replace the std::deque with a ctx::list for ctx::dock's queue. 2018-01-13 23:45:36 -08:00
Jason Volk
df0e59a5e0 ircd::ctx: Add custom intrinsic list structure for contexts. 2018-01-13 23:45:36 -08:00
Jason Volk
7c4659a99f ircd::server: Develop basic infrastructure. 2018-01-13 21:17:10 -08:00
Jason Volk
15bf7f5f6d ircd::net: Add non-blocking discard_any(socket). 2018-01-13 20:21:29 -08:00
Jason Volk
6643cad758 ircd::http: Allow default construction on response head. 2018-01-13 18:03:26 -08:00
Jason Volk
56cefcb650 ircd::server: Move into directory; various cleanup. 2018-01-13 18:03:04 -08:00
Jason Volk
c83665ca6c ircd: Reorg client; add class members; pointer to current request; conf, etc. 2018-01-13 17:58:11 -08:00
Jason Volk
fa3afc7ad7 ircd::server: Preliminary client request pipeline framework. 2018-01-12 18:57:58 -08:00
Jason Volk
c1a3fabd5a ircd::openssl: Add function to print subject of certificate. 2018-01-12 15:31:58 -08:00
Jason Volk
311df26156 ircd: Expose utilities for boost errors. 2018-01-12 15:04:30 -08:00
Jason Volk
458869f9ef ircd::http: Remove response helper; add a couple fields to parse; minor cleanup. 2018-01-12 13:15:30 -08:00
Jason Volk
ed0760ef8e ircd: Minor cleanup of rfc1459 header. 2018-01-12 13:13:37 -08:00
Jason Volk
d3be7129cf ircd: Minor housekeeping fixes. 2018-01-12 03:22:57 -08:00
Jason Volk
4db2ac3ab7 ircd: Cleanup standard usage importations. 2018-01-12 03:00:23 -08:00
Jason Volk
d566e90402 ircd::util: Move more utils into util; minor cleanup. 2018-01-12 02:59:21 -08:00
Jason Volk
2a65c17ce3 ircd::util: Split out typography related; minor cleanup. 2018-01-11 23:36:42 -08:00
Jason Volk
239eb0e9ad ircd::openssl: Support EC. 2018-01-11 22:29:00 -08:00
Jason Volk
8c869e3ee5 ircd::openssl: Convenience to print information about an X509 from a PEM. 2018-01-11 22:29:00 -08:00
Jason Volk
04fa556c58 ircd: Reflow the request handlers to give the resource more control over content. 2018-01-11 22:02:34 -08:00
Jason Volk
1f7ed51f3b ircd::http: Remove request parser helper from here. 2018-01-11 22:02:34 -08:00
Jason Volk
7aa1dedd86 ircd::http: Add 413 PAYLOAD_TOO_LARGE. 2018-01-11 22:02:34 -08:00
Jason Volk
a135227370 ircd::net: Tighten assumptions on cancel(). 2018-01-11 22:02:33 -08:00
Jason Volk
725f069621 ircd::net: Add discard_all() convenience. 2018-01-11 22:02:33 -08:00
Jason Volk
37b98b5a82 ircd::openssl: Add flags to the X509 printer. 2018-01-11 22:02:33 -08:00
Jason Volk
29b135de0a ircd::ctx: Export critical_assertion down to ircd::. 2018-01-11 18:37:08 -08:00
Jason Volk
b0acc95559 ircd::util: Update syscall() comments; minor cleanup. 2018-01-11 03:21:19 -08:00
Jason Volk
c698101d6d ircd::fs: Initial asynchronous file IO support for Linux platforms. 2018-01-10 22:09:05 -08:00
Jason Volk
c4ea3cc3e3 ircd: Utils for std::system_error related; minor cleanup. 2018-01-10 21:43:49 -08:00
Jason Volk
40bead52b7 ircd: Move and breakup util.h into util/; move fs.h into fs/. 2018-01-10 21:34:21 -08:00
Jason Volk
76e16e4d80 ircd::net: Improve remote construction; hostport/ipport related. 2018-01-10 01:20:16 -08:00
Jason Volk
8a43a37733 ircd: Import std::nothrow_t. 2018-01-10 00:57:43 -08:00
Jason Volk
84bbeecc83 ircd: Move sys/resource / coredump related out of libircd. 2018-01-10 00:56:33 -08:00
Jason Volk
8acdf52443 ircd::fs: Use direct kernel interface rather than glibc aio nonsense. 2018-01-10 00:55:08 -08:00
Jason Volk
6a552e349e ircd: Preliminary AIO experimental stub on linux platforms. 2018-01-09 16:49:53 -08:00
Jason Volk
78c2af094e ircd::util: Extend return value in syscall() suite. 2018-01-09 16:24:42 -08:00
Jason Volk
c03bb7e4f2 ircd: Various fixes and elaborations to client/net. 2018-01-08 21:49:00 -08:00
Jason Volk
89c481d1f8 ircd::net: Improve wait related; fix issues with bad behavior. 2018-01-08 18:33:05 -08:00
Jason Volk
65a81301a7 ircd: Add fwd decl of boost::system::errc namespace. 2018-01-08 13:42:54 -08:00
Jason Volk
9e086e9acd ircd: Add ircd::assertion and exception suite for assertive errors. 2018-01-08 13:42:54 -08:00
Jason Volk
c8aaeb491f ircd::net: Develop interface for async_wait / waiting on socket. 2018-01-08 13:25:13 -08:00
Jason Volk
17a1982c24 ircd::net: Add read_one() interface. 2018-01-08 12:41:22 -08:00
Jason Volk
4fa7ad9286 ircd::ctx: Add use_future_t; minor cleanup. 2018-01-08 12:40:09 -08:00
Jason Volk
0cafcd7b84 ircd::ctx: Update async() with moveable promise. 2018-01-08 12:39:05 -08:00
Jason Volk
f8127957c3 ircd: Various error handling fixes/cleanup. 2018-01-08 03:09:00 -08:00
Jason Volk
a9bd77a67d ircd::net: Add an internal non-blocking read call; minor comments. 2018-01-08 03:08:59 -08:00
Jason Volk
a1f0075d62 ircd::net: Improve the timeout callback related. 2018-01-08 03:08:59 -08:00
Jason Volk
9bb927712e ircd::net: Kill implicit conversion. 2018-01-08 03:08:59 -08:00
Jason Volk
54d6cbc8c1 ircd: Fwd declare boost::system::error_code; minor cleanup. 2018-01-08 03:08:59 -08:00
Jason Volk
273e22c50e ircd::net: Add common_name(opts) consistent function to get proper CN. 2018-01-08 03:08:59 -08:00
Jason Volk
b0427fbb91 ircd::net: ipport string contructions. 2018-01-08 03:08:59 -08:00
Jason Volk
499e322e83 ircd::net: Fix hostport split default. 2018-01-08 03:08:59 -08:00
Jason Volk
bad0037d78 ircd::net: Copy around open_opts for now to prevent any lifetime complications. 2018-01-08 03:08:59 -08:00
Jason Volk
5615ef2470 ircd::net: Split up remote.h 2018-01-07 14:31:35 -08:00
Jason Volk
9dbae8b27a ircd::net: Rename sockopts to sock_opts. 2018-01-07 02:02:41 -08:00
Jason Volk
4561bb21a0 ircd: Various fixes to net related call points. 2018-01-06 23:27:02 -08:00
Jason Volk
ac3802c0f9 ircd::net: Refine network subsystem; break up interfaces; various. 2018-01-06 23:27:01 -08:00
Jason Volk
7e0c01708a ircd::net: Refine socket interfaces; connection options structure. 2018-01-05 19:19:03 -08:00
Jason Volk
0e1b605991 ircd::openssl: Add convenience to copy out certificate CN. 2018-01-05 16:59:26 -08:00
Jason Volk
72317c07c3 ircd::net: Shlock certificate common-name verification into the net stack. 2018-01-04 23:17:11 -08:00
Jason Volk
b878fd6ed0 ircd::openssl: Add X509_STORE_CTX suite. 2018-01-04 22:00:10 -08:00
Jason Volk
35ad641251 ircd::openssl: Minor rename function. 2018-01-04 21:59:39 -08:00
Jason Volk
6aec038479 ircd::net: Additional socket option accoutrements. 2018-01-04 19:25:46 -08:00
Jason Volk
ebad745a3f ircd::net: Tentative future-based socket resolve->connect->handshake. 2018-01-04 19:25:40 -08:00
Jason Volk
fcb2660f0a ircd::net: Elaborate low-level socket interface. 2018-01-04 17:44:35 -08:00
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
58c26b616c ircd: Update README note on assert(). 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
864249febb ircd: Update README with assert() related. 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
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
baa35a368a ircd: Update include/ircd README with conventions section. 2017-12-29 15:53:49 -07:00
Jason Volk
9871332957 fixup! Pin boost to 1.66.0. 2017-12-29 15:53:39 -07:00
Jason Volk
c77ee478e5 ircd::ctx: Add custom refcnt to allow copyable promise. 2017-12-29 15:32:08 -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
bf9db52428 ircd::net: Include a remote::resolved() indicator. 2017-12-28 15:25:57 -07:00
Jason Volk
1bc4b46fbd fixup! configure.ac: Add c++17 header <optional>. 2017-12-28 14:02:24 -07:00
Jason Volk
59bd14e862 ircd:Ⓜ️ Update README. 2017-12-25 21:02:36 -07:00
Jason Volk
3d1a173358 ircd::net: Add extern null_remote. 2017-12-24 21:54:59 -07:00
Jason Volk
e63632c78f ircd::buffer: Ensure default constructions available in all derivatives. 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
ae8a8e736a ircd: Comment on ctype(string_view). 2017-12-24 21:54:59 -07:00
Jason Volk
8604819bd5 ircd::buffer: Remove the terminated string copy from this context. 2017-12-24 21:54:59 -07:00
Jason Volk
04ad57965e ircd::ctx: Fix promise move constructions etc. 2017-12-24 21:54:59 -07:00
Jason Volk
abcf2c2c14 ircd::buffer: Add convenience completed() conversion to stream_buffer. 2017-12-24 21:54:59 -07:00