Jason Volk
8f3483391e
ircd: Minor log suppressions via comment.
2018-01-17 21:38:17 -08:00
Jason Volk
169f5aef84
ircd::db: Add data() participant for rocksdb::Slice.
2018-01-17 21:38:17 -08:00
Jason Volk
87f0f3bc5a
ircd::db: Add additional environment stubs for writable_file; minor cleanup.
2018-01-17 21:38:17 -08:00
Jason Volk
48c798de3f
ircd::db: Add size() participant for rocksdb::Slice.
2018-01-17 21:38:17 -08:00
Jason Volk
625dc73978
ircd::db: Skeleton stubs for basic environment.
2018-01-17 21:38:17 -08:00
Jason Volk
79447c504a
ircd::db: Reorg internal headers to directory.
2018-01-17 21:38:17 -08:00
Jason Volk
e4f6b64fec
ircd::db: Update copyrights; use doxygen comments; minor cleanup.
2018-01-17 21:38:17 -08:00
Jason Volk
9ba31f77c2
ircd::server: Various fixes; error handling; minor cleanup.
2018-01-17 21:38:17 -08:00
Jason Volk
557b521d62
ircd::info: Update info.
2018-01-17 21:38:17 -08:00
Jason Volk
ca6dc44a6c
ircd::server: Various fixes.
2018-01-17 03:33:08 -08:00
Jason Volk
4727e93f8a
ircd::server: Handle link open error.
2018-01-17 03:33:08 -08:00
Jason Volk
5a51638db8
ircd::server: Add options to request; add http code exception option.
2018-01-17 03:33:07 -08:00
Jason Volk
7f9f970b5b
ircd::server: Improve some exception messages conveyed back to promise.
2018-01-17 01:05:31 -08:00
Jason Volk
862fb1ebcd
ircd::server: Support robust request cancellation without disrupting pipeline.
2018-01-17 00:47:37 -08:00
Jason Volk
b9fe5c69ad
ircd::server: Additional exception propagations; fail on link unavailability.
2018-01-16 04:01:26 -08:00
Jason Volk
2520afe5a6
ircd::server: Handle insufficient head buffer; preliminary tag reassign.
2018-01-16 00:55:44 -08:00
Jason Volk
ce31219b00
ircd::server: Elide saving head in tag; add content buffer-underrun discard.
2018-01-16 00:55:44 -08:00
Jason Volk
286f117ef8
ircd::server: Add idle link removal when over pool min; stubs for node decision-making.
2018-01-16 00:55:44 -08:00
Jason Volk
8536c57982
ircd::server: Minor renames; minor cleanup; improve some error handlers.
2018-01-15 20:26:27 -08:00
Jason Volk
6682f0ce80
ircd::net: On disconnect, turn an EOF ec into a success.
2018-01-15 19:46:23 -08:00
Jason Volk
1e0fe2b3d5
ircd::server/net: Proper snomask on these log calls.
2018-01-15 19:28:55 -08:00
Jason Volk
bf99718a0f
ircd::server: Basic pipeline.
2018-01-15 19:03:32 -08:00
Jason Volk
8e9bae5209
ircd::server: Add stats accumulation; develop preliminary dispatch; various.
2018-01-15 19:02:26 -08:00
Jason Volk
59621eb266
ircd::server: Improve write stack; add close_all(); various.
2018-01-15 03:12:56 -08:00
Jason Volk
745a00b332
ircd: Tweak client error handling stack apropos request timeout.
2018-01-15 03:12:56 -08:00
Jason Volk
6b7399bf4a
ircd::fs: Simplify API/AIO by eliminating callback: ctx yield only for now.
2018-01-15 03:12:56 -08:00
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
314bcb3d30
ircd::net: Update read()/write() strategies.
2018-01-14 20:45:30 -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
c3423ad80b
ircd::net: Fix error.
2018-01-13 19:19:29 -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
f71a728225
ircd::net: Fix bug where received data is stuck in SSL buffer.
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
0f0c50017a
ircd::logger: Take stuff off stderr to not compete with console input.
2018-01-12 16:06:01 -08:00
Jason Volk
4d14adc961
ircd::net: Debug print certificate subject rather than whole cert.
2018-01-12 15:38:14 -08:00
Jason Volk
c1a3fabd5a
ircd::openssl: Add function to print subject of certificate.
2018-01-12 15:31:58 -08:00
Jason Volk
06cf9031b7
ircd::net: Increase buffer size for cert debug print.
2018-01-12 15:22:48 -08:00
Jason Volk
88e4445f0e
ircd::net: Move error checking fix back to initiator out of handler.
2018-01-12 14:14:01 -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
11adbae89a
ircd::net: decorate the peek.
2018-01-12 03:13:49 -08:00
Jason Volk
ebb48d96a9
ircd::http: Burning desire to dedupe this.
2018-01-11 23:38:12 -08:00
Jason Volk
51d729fa3a
ircd::db: Use off-stack buffer here for logging.
2018-01-11 22:29:00 -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
3d8d6f47b4
ircd::net: Ensure ordering of various operations if immediately dispatched.
2018-01-11 22:28:59 -08:00
Jason Volk
4d310ac22b
ircd: Towards debug message uniformity.
2018-01-11 22:02:34 -08:00
Jason Volk
d151d96d83
ircd: Fix/improve response header related.
2018-01-11 22:02:34 -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
cd0dc9a0ff
ircd::http: Simplify server response generation.
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
f99461481c
ircd: Take some buffers off the stack.
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
dc4b17f84a
ircd/modules: Fix init prio removal related.
2018-01-11 03:24:22 -08:00
Jason Volk
382d1b0bf3
ircd::net: Close the sd in dc handler unconditionally; align the peek buf.
2018-01-11 03:23:40 -08:00
Jason Volk
fcfa386e33
ircd::net: Remove impossible log conditional; minor cleanup.
2018-01-11 03:22:17 -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
fed3265d33
ircd::fmt: Unrestrict long long from fmt specifiers.
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
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
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
b0579d0963
ircd::net: Show more information in some debug messages.
2018-01-08 15:16:47 -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
f8127957c3
ircd: Various error handling fixes/cleanup.
2018-01-08 03:09:00 -08:00
Jason Volk
b507262582
ircd: Remove the close+wait after exiting client::main().
2018-01-08 03:09:00 -08:00
Jason Volk
a1f0075d62
ircd::net: Improve the timeout callback related.
2018-01-08 03:08:59 -08:00
Jason Volk
d10b9effd0
ircd::net: Improve string output for remote.
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
274b4b43ed
ircd::net: Fix this bug fix.
2018-01-08 03:08:59 -08:00
Jason Volk
c22631ebf5
ircd::net: Consistent debug log messages.
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
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
e4d1005965
ircd: Minor formatting.
2018-01-05 01:02:40 -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
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