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
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
fbf07913f7
ircd::ctx: Minor style/format fixes.
2017-12-24 20:25:40 -07:00
Jason Volk
82aa59c5ec
ircd::buffer: Reverse convenience utils.
2017-12-24 20:25:40 -07:00
Jason Volk
91ee213c86
ircd::ctx: Add preliminary README.
2017-12-24 20:25:40 -07:00
Jason Volk
e511818e57
ircd: Add some abstract (non json::) tuple related.
2017-12-24 19:26:05 -07:00
Jason Volk
e7036fa79f
ircd::util: Add is_specialization_of template utility.
2017-12-13 14:39:41 -07:00
Jason Volk
69d209dad1
ircd: Remove unnecessary fwd decls.
2017-12-13 14:39: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
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
cea114d41d
ircd::json: Use the defined() rather than default ctor / cleanup.
2017-12-12 14:59:40 -07:00
Jason Volk
ff76d3e061
ircd::json: Add key filtering for tuple enumerations.
2017-12-12 14:59:40 -07:00
Jason Volk
0565301560
ircd: Ⓜ️ Remove the is_state mistake.
2017-12-12 14:59:40 -07:00
Jason Volk
2692a22f62
ircd: Ⓜ️ Add an access denied general exception.
2017-12-12 14:59:40 -07:00
Jason Volk
6b287f958c
ircd: Add these participating size() and data() overloads for C arrays.
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
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
dff9be2df3
ircd: Add a c_str() to string_view which asserts for null termination.
2017-12-12 14:59:40 -07:00
Jason Volk
49b32de864
ircd: Ⓜ️ Update README.
2017-12-12 14:59:40 -07:00
Jason Volk
f3b94d31f5
ircd: Split off tuple.h from util.h
2017-12-12 14:59:39 -07:00
Jason Volk
47a2cddbea
Add std::bitset.
2017-12-05 13:42:21 -08:00
Jason Volk
94b5bc75d3
ircd::db: Update README; remove old cruft.
2017-12-03 13:34:42 -08:00
Jason Volk
6027a68105
ircd: Ⓜ️ Formatting/various fixes to README.
2017-12-02 13:14:30 -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
1a1a50f5f3
Checkpoint reorganization.
2017-11-30 12:30:19 -08:00
Jason Volk
b2a6d4ebab
ircd: Add #ifdef around experimental string_view for non-c++17.
2017-11-30 11:27:00 -08:00
Jason Volk
3a057c80a4
ircd: Add preliminary skeleton for cuckoo suite.
2017-11-30 11:23:48 -08:00
Jason Volk
5d53cdab5e
ircd: Ⓜ️ Checkpoint matrix.
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
d354991c68
ircd::json: Stub a canonize() function which isn't complete yet.
2017-11-30 11:23:47 -08:00
Jason Volk
14f348f900
ircd: Ⓜ️ Add convenience aliases for event closure.
2017-11-30 11:23:47 -08:00
Jason Volk
4733df3d1b
ircd::json: Add more value ctor template specializations.
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
204371dda0
Move sections from include README to main README; various updates.
2017-11-30 11:23:46 -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
e5f12e9750
ircd::buffer: Fix assertion for empty buffer.
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
ea26fd0016
ircd::fs: Path cleanup.
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
31b778ee0b
ircd: Ⓜ️ Improve server keys related functions.
2017-11-30 11:23:46 -08:00
Jason Volk
865ee127c3
ircd: Ⓜ️ Try updating the matrix README.
2017-11-30 11:23:45 -08:00
Jason Volk
926c24ac7d
ircd: Update include README.
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
5e9a82af86
ircd::json: Add uint64_t ctor to value.
...
This ctor is actually not supposed to be used, so it gives a
pseudo-narrowing warning. Not having this ctor simply gives a compile error
which makes very little sense to the developer who is simply trying to pass
a commonly used size_t et al.
2017-11-30 11:23:45 -08:00
Jason Volk
b42dffb24c
ircd::json: Improve tuple assignment typography.
2017-11-30 11:23:45 -08:00
Jason Volk
7723e45de5
ircd::ctx: Minor commentary.
2017-11-30 11:23:45 -08:00
Jason Volk
f2cfa5eccf
ircd::buffer: Add full() and some assertions.
2017-11-30 11:23:45 -08:00
Jason Volk
1b8e93d487
ircd::util: Consolidate a few typographical constexprs here.
2017-11-30 11:23:45 -08:00
Jason Volk
81c3a87ee5
ircd::buffer: Fix bug.
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
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
0da55e93aa
ircd::util: Add powerof2() bithack.
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
9b5834afd4
ircd::util: Add a count for the params size.
2017-11-30 11:23:44 -08:00
Jason Volk
832529396c
ircd: Split up string_view.h.
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
7599c4bb6e
ircd: Maintain data pointer of string_view's through various ops.
2017-11-30 11:23:43 -08:00
Jason Volk
3680ae37f2
ircd::util: Add instance_list pattern utility.
2017-11-30 11:23:43 -08:00
Jason Volk
00ac048e68
ircd: Remove the $() for hashes. This will make for a better $(event_id) device...
2017-11-30 11:23:43 -08:00
Jason Volk
f7ee7ea211
ircd: Allow configurable prime on the bernstein hasher.
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
87c9ebdbc3
ircd::json: Fix assign source here.
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
8811bf8a51
ircd: Add ircd::empty(string_view).
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
0820694ea7
ircd: Truncate comment.
2017-11-30 11:23:42 -08:00
Jason Volk
b1acf2cef1
ircd: Minor fixes for g++-7 c++17.
2017-11-30 11:23:42 -08:00
Jason Volk
6572a45d77
ircd::util: Fix this type; should be int.
2017-11-30 11:23:42 -08:00
Jason Volk
ecf5c10547
ircd::util: Add resizebuf() to ostringstream convenience suite.
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
45b853c912
ircd::util: Add a convenience wrapper for iostream pubsetbuf.
2017-11-30 11:23:41 -08:00
Jason Volk
93c9935338
ircd::json: Add preliminary tuple iteration with mask of keys.
2017-11-30 11:23:41 -08:00
Jason Volk
55603a3718
ircd: Ⓜ️ Fix ID reconstruction semantics; cleanup.
2017-11-30 11:23:41 -08:00
Jason Volk
4ae58a4f46
ircd::json: Add tuple construction from a different tuple object.
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
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
cb8b38b160
ircd: Add typedefs for __int128 to our namespace.
2017-11-30 11:23:40 -08:00
Jason Volk
a22e4917c8
ircd: Add has() stringop because find() != npos is an annoying construct.
2017-11-30 11:23:40 -08:00
Jason Volk
70326ed471
ircd: Add our buffer type as overload to strlcat/strlcpy vintage suite.
2017-11-30 11:23:40 -08:00
Jason Volk
57ae71fe4e
ircd::json: Add additional commentary.
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
bc3e4e3fce
ircd::util: Fix move support for the unique_iterator.
2017-11-30 11:23:40 -08:00
Jason Volk
92270b74ac
ircd::http: Parse a connection header.
2017-11-30 11:23:39 -08:00
Jason Volk
deaea72f9a
ircd: Ⓜ️ Update README.
2017-11-30 11:23:39 -08:00
Jason Volk
4ccc610bfe
Update README.
2017-11-30 11:23:39 -08:00