Jason Volk
|
0a6ea976a5
|
ircd: Split base64 from lexical.
|
2018-01-18 18:17:02 -08:00 |
|
Jason Volk
|
054c50edcc
|
ircd::db: Split up / reorg database/env related.
|
2018-01-18 17:59:22 -08:00 |
|
Jason Volk
|
31fd9346f6
|
ircd: Baptize server.h into the standard include group.
|
2018-01-18 06:09:02 -08:00 |
|
Jason Volk
|
78b77f9da8
|
ircd::ctx: Eliminate the shared_ptr in pool::async; minor cleanup.
|
2018-01-18 06:05:56 -08:00 |
|
Jason Volk
|
90ea730a04
|
ircd::json: Add recursion depth checking.
|
2018-01-18 06:05:56 -08:00 |
|
Jason Volk
|
c9b89ec6ef
|
ircd::db: Plan on not sending any exceptions through RocksDB...
|
2018-01-18 03:55:28 -08:00 |
|
Jason Volk
|
d436861aed
|
ircd::db: Update comment.
|
2018-01-18 03:55:28 -08:00 |
|
Jason Volk
|
e5a50a0b79
|
ircd: Use address of ::gettimeofday to resolve error in g++-7.
|
2018-01-17 21:38:18 -08:00 |
|
Jason Volk
|
2c8154dfe4
|
ircd::info: Add additional line of information in debug log.
|
2018-01-17 21:38:17 -08:00 |
|
Jason Volk
|
d9c6737b28
|
ircd: Use feature test macros here.
|
2018-01-17 21:38:17 -08:00 |
|
Jason Volk
|
408e8dfb47
|
configure: Add <new> header.
|
2018-01-17 21:38:17 -08:00 |
|
Jason Volk
|
ce89a705c0
|
ircd::db: Add remaining environment stubs.
|
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
|
6fc8de8587
|
ircd::ctx: Enforce semantics in mutex / shared_mutex; assertion related.
|
2018-01-17 03:33:08 -08:00 |
|
Jason Volk
|
b93b294d7b
|
ircd::ctx: Validate all state access in ctx::promise.
|
2018-01-17 03:33:08 -08:00 |
|
Jason Volk
|
59e921d453
|
ircd::ctx: Enforce semantics on ctx::list.
|
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
|
8366c735b4
|
ircd::ctx: Add this non-standard finished() observer for now.
|
2018-01-16 22:54:08 -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
|
8e9bae5209
|
ircd::server: Add stats accumulation; develop preliminary dispatch; various.
|
2018-01-15 19:02:26 -08:00 |
|
Jason Volk
|
e4b1485db0
|
ircd::ctx: Specify missing semantics for promise.
|
2018-01-15 18:00:54 -08:00 |
|
Jason Volk
|
59621eb266
|
ircd::server: Improve write stack; add close_all(); various.
|
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
|
a8efc59adf
|
ircd::server: Split tag from request.h.
|
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
|
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 |
|
Jason Volk
|
9f75f80c21
|
ircd::ctx: Consolidate release sequence in mutex/shared_mutex.
|
2017-12-24 21:54:59 -07:00 |
|
Jason Volk
|
df38f2c8fa
|
ircd::util: Add reentrancy assertion utility.
|
2017-12-24 21:54:59 -07:00 |
|
Jason Volk
|
ef6152c0ef
|
ircd: Move openssl.h way down here so it can use json.
|
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
|
56f4d156af
|
ircd::buffer: Attempt to tighten these buffers templates by specifying buffer.
|
2017-12-24 21:54:59 -07:00 |
|
Jason Volk
|
18ef10643b
|
ircd::util: Narrow the coverage of the size() -> sizeof(T) template.
|
2017-12-24 21:54:59 -07:00 |
|
Jason Volk
|
7d863091bb
|
ircd::buffer: Add the stream_buffer.
|
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
|
f37311a3f1
|
ircd::util: Add an endian bswap; add more data()/size() participants.
|
2017-12-24 21:54:58 -07:00 |
|
Jason Volk
|
8d2e098d16
|
ircd::buffer: Proper exports of templates to compete in ircd::.
|
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 |
|