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