Jason Volk
14f16f2b0d
ircd::fs: Support hole punching if available; add checks for allocate options.
2019-08-06 16:39:28 -07:00
Jason Volk
315276e3c4
ircd::info: Reorg/improve hardware information sampling.
2019-08-06 15:44:32 -07:00
Jason Volk
eddc5b3b55
ircd: Ⓜ️ :event::append: Add properties mask to opts; centralize. ( Fixes #119 )
2019-08-05 17:54:00 -07:00
Jason Volk
a66db65a1d
ircd: Tweak suggestion output; satisfy several suggestions.
2019-08-05 16:20:48 -07:00
Jason Volk
009d417273
ircd: Indicate noexcept on advised interfaces.
2019-08-05 16:19:20 -07:00
Jason Volk
c64bb6850c
ircd::net: Fix/improve the v6/v4 check.
...
ircd::net: Add an is_null(ipport/ipaddr).
ircd::net: Improve the v6/v4 check efficiency.
ircd::net: Swap defaulting from v6 to v4 for better null address output.
2019-08-04 18:05:58 -07:00
Jason Volk
8dd0a22351
ircd: Add additional formatted microdate().
2019-08-03 20:02:18 -07:00
Jason Volk
ac4e742010
ircd::log: Convert to hook architecture.
2019-08-03 18:36:42 -07:00
Jason Volk
2d83f2c201
ircd::util::callbacks: Add a callback convenience template.
2019-08-03 17:42:21 -07:00
Jason Volk
d394cd4d18
ircd::util::callbacks: Typedef access to the template class for derived classes.
2019-08-03 16:50:52 -07:00
Jason Volk
fa341c274e
ircd::log: Add some minor comments / document.
2019-08-03 16:11:14 -07:00
Jason Volk
3dfb593dec
modules/m_room_aliases: Consolidate state_key creation; case desensitize.
2019-08-02 22:01:00 -07:00
Jason Volk
be4a33c136
ircd: Ⓜ️ 🆔 Increase the buf SIZE constant to the next pow2.
2019-08-02 22:00:58 -07:00
Jason Volk
aa013ac526
ircd: Add string_view based tolower()/toupper().
2019-08-02 21:02:40 -07:00
Jason Volk
d8fcbf7325
ircd: Ⓜ️ Reinterface append(event) into event::append; move to module. ( #109 )
2019-08-02 17:34:31 -07:00
Jason Volk
7c5ef32008
ircd::util: Add a strong boolean typedef customization.
2019-08-02 17:34:31 -07:00
Jason Volk
7b32e8bbad
ircd: Ⓜ️ :room::aliases::cache: Improve interface and simplify implementation callstack.
2019-08-02 16:18:01 -07:00
Jason Volk
efa586c424
ircd: Clarify clock types in comments; minor cleanup.
2019-08-02 15:30:06 -07:00
Jason Volk
8e5e599690
ircd: Ⓜ️ Relax exception propagation through event::refs. ( Fixes #114 )
2019-08-02 15:04:29 -07:00
Jason Volk
af48bdfa6e
ircd::json: Stub an unescape().
2019-08-02 15:04:29 -07:00
Jason Volk
fefaaca2c2
ircd::prof: Split header into directory.
...
ircd::prof: Split linux/perf_event specific to unit.
2019-07-31 19:43:09 -07:00
Jason Volk
7333be92ca
ircd: Ⓜ️ :typing: Simplify interface; fix linkages.
2019-07-30 14:21:26 -07:00
Jason Volk
3f5777897b
ircd::util: Fix noexcept propagation through enum relaxation operators.
...
g++-9 warning
2019-07-30 13:46:22 -07:00
Jason Volk
ed56ef680a
ircd: Ⓜ️ :fed::user::keys::claim: Separate content creation functions from ctor.
...
ircd:Ⓜ️ :fed::user::keys::query: Separate content creation functions from ctor.
2019-07-30 12:30:27 -07:00
Jason Volk
de986d2272
ircd::json::stack: Make completed() return a string_view instead of const_buffer.
2019-07-30 12:26:26 -07:00
Jason Volk
d806ef48db
ircd::conf: Improve item maximum related constants.
2019-07-27 18:49:26 -07:00
Jason Volk
63a9f33d7c
ircd::net: Simplify socket check related.
2019-07-27 13:17:53 -07:00
Jason Volk
6c367c8abf
ircd: Ⓜ️ Fix error code.
2019-07-26 19:09:28 -07:00
Jason Volk
7cb7052273
ircd: Ⓜ️ :fetch: Add a room based fetch to interface.
2019-07-26 16:13:58 -07:00
Jason Volk
ae1ccca038
ircd: Ⓜ️ :event::prev: Remove ambiguous overload.
2019-07-26 15:58:58 -07:00
Jason Volk
5edd7a6117
ircd: Ⓜ️ :fetch: Whittle down the current interface; remove libircd linkages.
2019-07-26 15:51:15 -07:00
Jason Volk
839951752e
ircd::log: Improve critical trap message.
2019-07-26 15:15:58 -07:00
Jason Volk
fea6bfb395
ircd: Ⓜ️ 🪝 Fix missing facility in log calls.
...
ircd:Ⓜ️ 🪝 Minor cleanup.
2019-07-26 15:15:58 -07:00
Jason Volk
939b402a7d
Revert "ircd::event: Remove membership from top level."
...
This reverts commit fc8048dc74
.
2019-07-26 00:08:51 -07:00
Jason Volk
3f418bf1ed
ircd::server: Add a request log.
2019-07-25 23:12:18 -07:00
Jason Volk
9a5df1ae9c
ircd: Ⓜ️ Add additional format selection for pretty_oneline(event).
2019-07-25 15:57:04 -07:00
Jason Volk
b8adc69599
ircd: Ⓜ️ Move MEMBERSHIP_MAX_SIZE into room.
...
ircd:Ⓜ️ :room: Add a room version max size constant.
2019-07-25 14:29:07 -07:00
Jason Volk
ddcce0ef2b
ircd: Ⓜ️ :event: Document class member related.
2019-07-25 14:29:07 -07:00
Jason Volk
f450028c77
ircd::ctx::future: Use our steady_clock now() here.
2019-07-24 17:07:16 -07:00
Jason Volk
c45bfc4379
ircd: Ⓜ️ 🆔 :buf: Remove misleading move semantic.
2019-07-24 16:46:29 -07:00
Jason Volk
58c83b01a7
ircd: Ⓜ️ :feds: Add a closure_cached_errors option.
...
modules/m_command: Tweak ping options.
2019-07-23 22:46:48 -07:00
Jason Volk
eb3b4d82fb
ircd: Ⓜ️ :room::members: Simplify and improve interface; callsites.
2019-07-23 19:50:13 -07:00
Jason Volk
bde9e16e5c
ircd::ctx: Inline cur_slice_cycles().
...
modules/media/magick: Use this_ctx::cycles_here().
ircd::ctx: Improve prof::cycles API related.
2019-07-23 16:40:29 -07:00
Jason Volk
df11d9bec6
ircd: Ⓜ️ :room: Reorient join bootstrap definitions.
...
ircd:Ⓜ️ :room::bootstrap: Improve interface / various.
2019-07-23 16:40:29 -07:00
Jason Volk
e883f2a42b
ircd: Ⓜ️ :keys: Add additional fetch to interface.
2019-07-22 20:35:41 -07:00
Jason Volk
f1e3a9c53b
ircd: Ⓜ️ :keys: Add mass fetcher to interface.
2019-07-22 20:35:41 -07:00
Jason Volk
eb38a9ce15
ircd: Ⓜ️ :room::timeline: Improve iteration.
2019-07-22 19:10:19 -07:00
Jason Volk
4a37152c6d
ircd: Ⓜ️ :fetch: Add clear() to interface.
2019-07-22 14:20:21 -07:00
Jason Volk
53e7fe3fef
ircd: Ⓜ️ :fetch: Remove cruft.
2019-07-22 14:18:13 -07:00
Jason Volk
b17b508c2a
ircd: Ⓜ️ :room::origins: Add interface to count room servers online/error.
2019-07-21 19:08:40 -07:00
Jason Volk
6c9dbdbef5
ircd::ctx: Add queued(ctx) state to interface.
2019-07-21 18:07:26 -07:00
Jason Volk
471c08a41e
ircd::ctx: Split exception_handler w/ cxxabi header requirement.
2019-07-21 15:29:16 -07:00
Jason Volk
bcec03ce1a
ircd: Ⓜ️ :vm::eval: Add find_pdu() to interface.
2019-07-20 18:42:15 -07:00
Jason Volk
3051e6da83
ircd: Isolate inclusion of sys/time.h.
2019-07-20 18:42:15 -07:00
Jason Volk
e1356fb50d
ircd: Ⓜ️ :event::auth: Add hookdata::find() to improve initialization.
2019-07-20 18:42:15 -07:00
Jason Volk
9e2e20f3e8
ircd: Ⓜ️ :event::auth: Preliminary auth hook.
2019-07-20 18:42:15 -07:00
Jason Volk
95001450c5
ircd::db: Move some internal headers out of the installed includedir.
2019-07-20 18:42:15 -07:00
Jason Volk
556d73d96e
ircd::db::database::env::state: Restrict object semantics.
2019-07-20 18:42:15 -07:00
Jason Volk
2f2bc867fb
ircd: Improve various context names for consistency.
2019-07-20 18:42:15 -07:00
Jason Volk
f64f41775d
ircd::ctx::future: Fix action.
2019-07-19 18:17:53 -07:00
Jason Volk
58b286e651
ircd::log: Make the level enumeration strictly unsigned.
...
modules/console: Fix sign v. unsign comparison.
2019-07-19 18:17:52 -07:00
Jason Volk
0704625401
ircd::log: Simplify log class member interface.
2019-07-19 17:15:47 -07:00
Jason Volk
064f0b712c
ircd::log: Fixes for clang DCE.
2019-07-19 17:10:35 -07:00
Jason Volk
fd504be82c
ircd: De-inline the now()/time() samplers; minor cleanup.
2019-07-19 16:13:11 -07:00
Jason Volk
166236dfe8
ircd::ctx: Update README [skip ci]
2019-07-19 15:15:21 -07:00
Jason Volk
3301ed62f7
ircd::ctx: Fix future wait condition closing.
2019-07-19 14:46:57 -07:00
Jason Volk
51e3d7f081
ircd::ctx: Minor code-clarify/cleanup.
2019-07-19 14:42:46 -07:00
Jason Volk
c9745570fc
ircd: Ⓜ️ Add internal(room) to interface.
2019-07-19 14:27:57 -07:00
Jason Volk
e57561e8c1
ircd: Ⓜ️ Add type(room) to interface.
2019-07-19 14:27:57 -07:00
Jason Volk
bdc88e6c7e
imrcd: Ⓜ️ :room::members: Add empty() to interface.
2019-07-19 14:27:57 -07:00
Jason Volk
ad1940d614
ircd::db::env: Add NowNanos() override.
2019-07-17 19:11:43 -07:00
Jason Volk
48468a32f0
ircd::ctx: Add critical_assertion for when_() templates.
2019-07-17 18:10:34 -07:00
Jason Volk
82ed7ad69b
ircd::mods: Attempt to unconfuse backtraces.
2019-07-17 15:05:34 -07:00
Jason Volk
2b4c7a3646
ircd: Remove stale comment from stdinc.
2019-07-17 14:53:13 -07:00
Jason Volk
ad834bfc5b
ircd: Ⓜ️ :vm: Reorganize eval/vm::inject for room version differences; add comment.
2019-07-17 14:53:13 -07:00
Jason Volk
e0e9e09e67
ircd: Ⓜ️ Make append() return and propagate boolean.
2019-07-16 15:26:15 -07:00
Jason Volk
ef1f6f2642
ircd: Ⓜ️ Move event/append header.
2019-07-16 12:39:16 -07:00
Jason Volk
1c00399f66
ircd: Ⓜ️ Add interface to test if event is redacted.
2019-07-16 10:48:35 -07:00
Jason Volk
13830061a3
ircd: Ⓜ️ :event::refs: Add overload to check if ref type exists.
2019-07-16 10:27:53 -07:00
Jason Volk
2bcfe14822
ircd::ios: Add a handler epoch counter.
2019-07-15 17:20:47 -07:00
Jason Volk
ebbc5a5be0
ircd::ios: Apply noexcept to handler border functions.
2019-07-15 17:20:47 -07:00
Jason Volk
598585a431
ircd::ctx: Simplify concurrent template.
...
modules/client/sync: Improve concurrent instantiation sites.
2019-07-15 13:09:33 -07:00
Jason Volk
4d8d2a4dd7
ircd::json: Improve and inline value comparison operators.
2019-07-15 11:06:01 -07:00
Jason Volk
0344a12b40
ircd::json: Inline value constructors.
2019-07-15 11:06:01 -07:00
Jason Volk
1c01b21720
ircd::util: Add unit and deinline various date/time util.
2019-07-15 09:47:34 -07:00
Jason Volk
2a8162b2b7
ircd::net::hostport: Remove unique symbol.
2019-07-14 19:35:28 -07:00
Jason Volk
5242432e0c
ircd::ctx: Add concurrent_for_each.
2019-07-14 13:40:04 -07:00
Jason Volk
91af1a17fd
ircd::server: Add timestamp of when link's socket was estab.
2019-07-14 12:19:31 -07:00
Jason Volk
ee341f193d
ircd::stats: Converge on a single callpath to get val.
2019-07-14 11:17:53 -07:00
Jason Volk
c7a68a8cb3
ircd::ctx: Fix ctx::parallel argument allocation assumptions.
...
ircd::ctx: Rename tool.
2019-07-13 23:20:03 -07:00
Jason Volk
df8fd36fde
ircd: Ⓜ️ :user: Simplify user::room_tags impl w/ modern linkage.
...
ircd:Ⓜ️ :user: Simplify user::room_account_data impl w/ modern linkage.
ircd:Ⓜ️ :user: Modernize user::profile impl linkage.
ircd:Ⓜ️ :user: Modernize user::account_data impl linkage.
ircd:Ⓜ️ :user: Simplify user::ignores impl w/ modern linkage.
2019-07-13 18:15:27 -07:00
Jason Volk
6e97a72c50
ircd::ctx::ole: Minor interface reorg.
2019-07-13 18:15:27 -07:00
Jason Volk
1af930d541
Fix target inputs order in include/Makefile.
2019-07-13 15:51:55 -07:00
Jason Volk
2aafbaff5c
configure: Fix includedir and install path related.
2019-07-12 19:29:51 -07:00
Jason Volk
d0cc5b020b
ircd::fs: Minor reorg of fadvise related.
2019-07-12 19:29:51 -07:00
Jason Volk
212e4abb55
ircd: Ⓜ️ :fed: Add /v2/invite request support.
2019-07-12 19:29:51 -07:00
Jason Volk
ce55859fb2
ircd: Ⓜ️ Rename v1 to fed.
2019-07-12 19:29:51 -07:00
Jason Volk
2d7a914eb2
ircd: Ⓜ️ :event: Fix detection on hashing constructor.
2019-07-11 19:22:35 -07:00
Jason Volk
59467cf670
ircd::util: Add minmax().
2019-07-11 18:58:17 -07:00
Jason Volk
4947ef10f5
ircd: Ⓜ️ :room: Add missing linear event::idx get().
2019-07-11 18:58:17 -07:00
Jason Volk
dcffd35c40
ircd: Use buffer::copy() here.
2019-07-11 18:58:17 -07:00
Jason Volk
c4e5d06d91
ircd: Ⓜ️ :error: Improve construction stack.
2019-07-11 17:22:16 -07:00
Jason Volk
ae071552fb
ircd::ctx::ole: Add options structure; minor cleanup.
2019-07-11 15:51:09 -07:00
Jason Volk
de94e95422
ircd: Split out overgrown components from stringops.h
2019-07-11 15:51:09 -07:00
Jason Volk
d53744b3f8
ircd: Rename gmatch/gequals.
2019-07-11 15:51:09 -07:00
Jason Volk
0f4d1e2869
ircd::net::socket: Convert totals counters to stats::items.
2019-07-11 15:51:09 -07:00
Jason Volk
7fdf87a21f
ircd: Ⓜ️ :user: Combine user.h and user/user.h like other directories.
2019-07-11 15:51:09 -07:00
Jason Volk
6032331bf2
ircd: Ⓜ️ Move breadcrumb_rooms interface down one out from m::user::.
2019-07-11 15:51:09 -07:00
Jason Volk
808148e326
ircd::buffer: Add buffer overlap util;
...
ircd::buffer: Assert on overlap.
ircd::buffer: Add operator+=.
irde::buffer: More aggressive inlining.
2019-07-11 15:51:08 -07:00
Jason Volk
c0402f08f4
ircd::util: Improve the test trigger prototype.
2019-07-10 21:39:47 -07:00
Jason Volk
c39aad4d3f
ircd: Ⓜ️ :vm: Factor room_version into eval.
2019-07-10 06:52:56 -07:00
Jason Volk
329972ed01
ircd: Ⓜ️ :event: Update the make_id() suite.
2019-07-10 03:50:37 -07:00
Jason Volk
b7fc4710eb
ircd: Ⓜ️ :event::conforms: Add event_id hash check to static conformity checks.
2019-07-10 03:50:37 -07:00
Jason Volk
43d66420cd
Update incompatible uses of event_id.
2019-07-10 03:50:37 -07:00
Jason Volk
639b132250
ircd: Ⓜ️ Add a check_id(event) suite.
2019-07-10 02:12:16 -07:00
Jason Volk
0a210544b3
ircd: Ⓜ️ :event::conforms: Remove MISTMATCH_ORIGIN_EVENT_ID code.
2019-07-09 23:46:24 -07:00
Jason Volk
2755cfe71b
ircd: Ⓜ️ 🆔 Improve the validation interface / stack.
2019-07-09 02:33:27 -07:00
Jason Volk
719a965d9f
ircd: Ⓜ️ :event: Remove prev_state from top level.
2019-07-09 02:33:27 -07:00
Jason Volk
fc8048dc74
ircd::event: Remove membership from top level.
2019-07-09 02:03:03 -07:00
Jason Volk
e0655229c5
ircd::room::auth: Improve make_refs and cleanup interface related.
2019-07-09 02:03:03 -07:00
Jason Volk
d37aaa8542
ircd::assert: Only #error for include-order in --enable-debug mode.
2019-07-08 16:49:43 -07:00
Jason Volk
d5c035693c
ircd: Ⓜ️ :user: Add interface to im.vector.riot.breadcrumb_rooms.
2019-07-08 06:03:20 -07:00
Jason Volk
93b82445d9
ircd: Ⓜ️ :fetch: Fix initialization.
...
ircd:Ⓜ️ :event::fetch: Fix member statekeeping.
2019-07-08 06:03:20 -07:00
Jason Volk
015cbe53b1
ircd::net::socket: Add static counters for totals.
2019-07-08 06:03:20 -07:00
Jason Volk
11dd47a8aa
ircd: Ⓜ️ :sync: Add pointer to struct args in struct data.
2019-07-08 06:03:20 -07:00
Jason Volk
3057e9a328
ircd: Ⓜ️ Move event/get.h down one level.
2019-07-07 22:06:11 -07:00
Jason Volk
439402c08c
ircd: Ⓜ️ Add an m::query() template suite for DRY'ing common m::get() usage pattern.
2019-07-07 17:58:15 -07:00
Jason Volk
ec8bac81d1
ircd: Ⓜ️ :filter: Add missing fields on room_event_filter.
2019-07-07 17:00:36 -07:00
Jason Volk
49264bd13b
ircd: Ⓜ️ :sync: Add sync item children counter.
2019-07-06 22:25:16 -07:00
Jason Volk
18f07b6378
ircd: Ⓜ️ :sync: Move definitions to module.
...
ircd:Ⓜ️ :sync: Give sync::data an instance_list.
2019-07-06 22:25:12 -07:00
Jason Volk
dc4d13bca6
ircd: Ⓜ️ :event::fetch: Add internal buffer for event::id state.
2019-07-05 23:45:00 -07:00
Jason Volk
261151f539
ircd: Ⓜ️ :fetch: Remove ambiguating event_id() util.
2019-07-05 23:45:00 -07:00
Jason Volk
4a289c065a
ircd: Ⓜ️ :event: Add event_id member; reorg ctors.
2019-07-05 23:45:00 -07:00
Jason Volk
31aea230b1
ircd::conf: Explicit bool operators for std::string item.
2019-07-05 18:07:49 -07:00
Jason Volk
7af8e5774c
ircd::ios: Add no-op synchronous defer overload; use w/ this_ctx::yield().
2019-07-05 17:37:04 -07:00
Jason Volk
b8dfa9ccee
ircd::magick: Reorg and elaborate the job state tracking; add interface.
2019-07-05 16:05:36 -07:00
Jason Volk
612eeb3b7f
ircd::allocator: Add ctrl get()/set() w/ console cmd.
2019-07-04 00:20:49 -07:00
Jason Volk
e7b66eac3b
ircd: Ⓜ️ :event::prev: Stronger json::object type for v1 tuple value at indice.
2019-07-03 18:57:48 -07:00
Jason Volk
5d570a8da4
ircd: Ⓜ️ 🆔 Move event fwddecl closer to use; add more comments on v3/v4 objects.
2019-07-03 18:57:48 -07:00
Jason Volk
6a6c51d359
ircd::allocator: Distill out GNU malloc featurette from allocator.cc unit.
2019-07-03 18:57:48 -07:00
Jason Volk
ea0a1df3a1
configure: Add options for third-party allocator selection/deselection and inclusion.
2019-07-03 18:02:54 -07:00
Jason Volk
f88cc51e37
ircd: Move definitions for various valgrind suites to vg.cc for header isolation.
2019-07-03 15:14:29 -07:00
Jason Volk
60fda46bdf
ircd::http: Consolidate line terminator static strings.
2019-06-28 18:23:43 -07:00
Jason Volk
9ca019f03e
ircd: Ⓜ️ 🆔 :event: Add non-throwing static tests of v3/v4 id from string.
2019-06-28 03:42:07 -07:00
Jason Volk
6c62515a6d
ircd: Ⓜ️ 🆔 Use proper reference hashing procedure for event::v3/event::v4 ctors.
2019-06-27 20:06:26 -07:00
Jason Volk
6ce67a81a1
ircd: Ⓜ️ :user::highlight: Add conf items to toggle counting; improve match detail.
2019-06-27 01:59:19 -07:00
Jason Volk
0fb3f1d8ac
ircd: Ⓜ️ :user: Modernize the highlight counting interface.
2019-06-27 01:32:16 -07:00
Jason Volk
7843925335
modules: Disperse modules to eliminate the s_ prefix-space.
2019-06-27 00:41:57 -07:00
Jason Volk
ed5af1fdbd
ircd: Ⓜ️ 🆔 Add class representations for event::v3 and event::v4.
2019-06-26 06:21:30 -07:00
Jason Volk
fcfc28c6e4
ircd: Ⓜ️ 🆔 Add event::id version gauge method.
2019-06-26 06:21:30 -07:00
Jason Volk
5500a897e9
ircd: Add RFC4648 base64url conversion suite.
2019-06-26 01:52:42 -07:00
Jason Volk
19b85ef908
ircd: Add mutable_buffer based replace_copy stringop.
2019-06-26 01:44:23 -07:00
Jason Volk
5c03f4e08f
ircd: Add mutable_buffer inplace replace to stringops.
2019-06-26 01:16:27 -07:00
Jason Volk
754adf33ec
ircd: Ⓜ️ :keys: Add pretty()/pretty_oneline() output diagnostics.
2019-06-25 07:42:13 -07:00
Jason Volk
758ee9c185
ircd: Ⓜ️ :keys: Retype server_name property as json::string.
2019-06-25 07:13:10 -07:00
Jason Volk
425f277eaa
ircd: Fix main thread assertion.
2019-06-24 03:55:11 -07:00
Jason Volk
80655da66e
Misc fixes for clang.
2019-06-24 01:34:14 -07:00
Jason Volk
cbd2f6f4c7
ircd::prof: Add extern keyword for c89 semantics via gnu_inline in clang for odr.
2019-06-24 01:33:41 -07:00
Jason Volk
83dd5581be
ircd: Ⓜ️ Workaround comparison operator resolution and others for clang.
2019-06-24 02:22:55 -06:00
Jason Volk
9d48215aaa
ircd: Explicit instance_list destructor template instantiations for clang.
2019-06-24 01:33:00 -06:00
Jason Volk
37760fe251
ircd: Ⓜ️ :keys: Improve key query and cache loop.
2019-06-23 16:27:37 -07:00
Jason Volk
c2f86a8094
ircd: Ⓜ️ :keys: Distill out expiration test from verification test.
2019-06-23 16:22:15 -07:00
Jason Volk
fcbd31f672
ircd: Ⓜ️ :keys: Add an iteration over node's cached keys.
2019-06-23 15:50:02 -07:00
Jason Volk
cf3b1218c4
ircd: Misc fixes for clang.
2019-06-23 16:22:06 -06:00
Jason Volk
2e7f272570
ircd: Add plain string terminate.
2019-06-23 16:16:39 -06:00
Jason Volk
82a7d736d1
ircd::fs::path: Use scoped enum for fs::path::base paths.
2019-06-23 07:37:23 -06:00
Jason Volk
f85398392f
ircd: Tentative fix assert macro missing on clang.
2019-06-23 07:37:23 -06:00
Jason Volk
805f2c1184
ircd: Ⓜ️ :user: Tentative fixes for clang rejection of std::string_view::size() constexprness.
2019-06-23 07:37:23 -06:00
Jason Volk
5bf62fc33f
ircd: Degrade enum addressing for clang.
2019-06-23 07:37:23 -06:00
Jason Volk
fa7b708e03
ircd::util: Fix inline namespace reopening for clang.
2019-06-23 07:37:23 -06:00
Jason Volk
ab32ef76d7
ircd::ctx::this_ctx: Fix inline namespace reopening for clang.
2019-06-23 07:37:23 -06:00
Jason Volk
801f0d57b7
ircd: Fix attributes for clang.
2019-06-23 07:37:23 -06:00
Jason Volk
e4a5a755d0
ircd::base: Fix lack of constexpr ceil().
2019-06-23 01:27:49 -06:00
Jason Volk
35cff6c498
include/ircd: Handle *.gch.tmp files from clang.
2019-06-23 01:27:49 -06:00
Jason Volk
53ea7b8658
ircd: Ⓜ️ :feds: Add send operation to feds suite.
...
modules/console: Update console for feds resend.
2019-06-22 20:03:58 -07:00
Jason Volk
a371bc3e1f
ircd: Fix cast-conversion based reference-constructions.
2019-06-22 17:36:42 -06:00
Jason Volk
7aaee4c68d
ircd: Mark recommended noexcept on inline constructors.
2019-06-22 17:36:42 -06:00
Jason Volk
656ef1572e
ircd::buffer::parse_buffer: Remove erroneous cast operator.
2019-06-22 16:58:58 -06:00
Jason Volk
a67f134a6b
ircd: Ⓜ️ Partial migration of m::node to module; modernize legacy extern "C".
2019-06-21 21:02:38 -07:00
Jason Volk
4093dc2f85
ircd: Ⓜ️ :self::init: Fix keys init; prevent libircd as dependency for module.
2019-06-21 20:29:26 -07:00
Jason Volk
d17afdd531
ircd::http2: Start an RFC7540 implementation.
2019-06-21 16:54:22 -07:00
Jason Volk
b7023a6dc7
ircd: Ⓜ️ Reorg keys related interfaces and init.
2019-06-21 16:41:43 -07:00
Jason Volk
133b2605c6
ircd: Ⓜ️ :dbs: Generalize the reflection for M_RELATES event_refs related.
2019-06-21 16:32:15 -07:00
Jason Volk
9cf64712d9
ircd::json::iov: Fix declarations.
2019-06-21 04:31:38 -07:00
Jason Volk
f6067edcdf
ircd::ctx::async: Fix template default param using runtime extern.
2019-06-21 03:41:13 -07:00
Jason Volk
26efac134e
ircd::json: Fix out-of-line definition return type.
2019-06-21 03:41:13 -07:00
Jason Volk
5c8e590219
ircd: Fix default arguments in exception macros for clang.
2019-06-21 03:41:13 -07:00
Jason Volk
95e0ff3bbc
ircd::buffer: Use __builtin_unreachable() for clang.
2019-06-21 04:36:53 -06:00
Jason Volk
a5a267dcd5
ircd::byte_view: Rearrange class definition order for clang.
2019-06-21 04:36:53 -06:00
Jason Volk
a8ebcbcbe0
ircd::allocator: Fix error.
2019-06-21 04:36:53 -06:00
Jason Volk
75c125e8aa
ircd: Ⓜ️ :rooms: Expose fetcher in interface; internal cleanup.
2019-06-17 23:05:31 -07:00
Jason Volk
f24c7c2e82
ircd: Ⓜ️ :rooms: Simplify interface.
2019-06-17 16:57:00 -07:00
Jason Volk
4f741960a0
ircd: Ⓜ️ :room::state: Reconnect !present() branch with state::history.
2019-06-16 02:18:04 -07:00
Jason Volk
24ce076c3d
ircd: Ⓜ️ :room::state: Add state::history interface derived from state::space.
2019-06-16 02:17:47 -07:00
Jason Volk
b5a61a7a6b
ircd: Ⓜ️ :room::state::space: Improve interface; fixes.
2019-06-16 01:00:47 -07:00
Jason Volk
493bd85c11
ircd: Ⓜ️ :dbs: Add additional room state space key overload.
2019-06-15 15:20:00 -07:00
Jason Volk
390b8bf2fb
ircd: Ⓜ️ Remove remaining vestiges of m::state.
...
closes #15 .
2019-06-15 14:10:36 -07:00
Jason Volk
c59894a01b
ircd::http:: Add 416 Range Not Satisfiable.
2019-06-15 12:50:53 -07:00
Jason Volk
7666561f02
ircd::http: Parse range-request related headers as primaries.
2019-06-15 12:48:01 -07:00
Jason Volk
864cdd6405
ircd::buffer: Add convenience typedefs for unique/shared buffer common templates.
2019-06-14 14:50:42 -06:00
Jason Volk
22f3c41603
ircd::rfc3986: Add URI decomposition.
2019-06-13 21:44:51 -06:00
Jason Volk
0355391e34
ircd::rfc3986: Complete the URI grammars as specified.
2019-06-13 20:06:05 -06:00
Jason Volk
3d04ed9ad0
configure: Remove the CPPDEFINE for RB_TIME_CONFIGURED.
2019-06-13 15:03:32 -06:00
Jason Volk
9539b21789
ircd::nacl: Improve sodium initialization; various cleanup.
2019-06-13 13:46:57 -06:00
Jason Volk
b78ea359b6
ircd::db: Rename db::index to db::domain; fix userspace.
2019-06-11 12:57:52 -07:00
Jason Volk
a1d76d55cc
ircd::db: Rename prefix.h to prefix_transform.h
2019-06-11 12:47:43 -07:00
Jason Volk
947fd1f4b4
ircd::conf: Add explicit bang operator on bool conf item specialization.
2019-06-07 22:25:16 -07:00
Jason Volk
8e0ac58987
ircd: Ⓜ️ :room: Expose bootstrap to interface.
2019-06-07 04:56:23 -07:00
Jason Volk
5f248f5965
ircd::http: Add cloudflare 521 code.
2019-06-07 00:09:58 -07:00
Jason Volk
5afa11baca
ircd: Ⓜ️ :init: Improve exception propagation and abortive shutdown.
2019-06-06 19:41:48 -07:00
Jason Volk
f1b0ba8648
ircd: Ⓜ️ :dbs: Involve the servername in the database path.
...
Fixes #75 .
2019-06-06 18:47:44 -07:00
Jason Volk
70c6c9ea86
ircd::db: Expose subroutines from db::init.
2019-06-06 18:47:44 -07:00
Jason Volk
32e94931a7
ircd::fs: Add ability to change basepath values at runtime.
2019-06-06 17:38:12 -07:00
Jason Volk
38bfb56661
ircd::fs: Add typedefs for vector_view's used to build paths.
2019-06-06 17:03:02 -07:00
Jason Volk
625a2bcf6f
ircd::vector_view: Add front() and back() convenience accessors.
2019-06-06 17:02:39 -07:00
Jason Volk
160734e3b4
configure: Define HAVE_SODIUM in config.h on pkg found.
2019-06-06 03:54:37 -07:00
Jason Volk
fe41932b1a
ircd: Add #ifdefs around potentially conflicting BSD stringops.
2019-06-06 02:59:57 -07:00
Jason Volk
6d429d5cc4
ircd: Add ulong typedef on FreeBSD.
2019-06-05 23:54:02 -07:00
Jason Volk
c292ec46f2
ircd::fs: Add runtime selection of pwritev(2) and RWF_ features; minor reorg.
2019-06-05 23:25:48 -07:00
Jason Volk
f702520044
ircd: Add infrastructure to handle continuation notification after suspending.
2019-06-05 15:06:16 -07:00
Jason Volk
855a5f5a1e
ircd::info: Get more extended feature bits; various cleanup.
2019-06-05 14:27:36 -07:00
Jason Volk
868d96b89d
ircd: Minor cleanup.
2019-06-05 12:57:10 -07:00
Jason Volk
475ee3867d
ircd: Ⓜ️ :event::horizon: Split the full column iteration into separate function.
2019-06-04 21:21:21 -07:00
Jason Volk
f5df386e1c
ircd: Ⓜ️ :fetch: Add a request count() to interface.
2019-06-04 18:50:17 -07:00
Jason Volk
6bb746a9a0
ircd::openssl: Add conditional LibreSSL versions instance.
2019-06-04 14:01:33 -07:00
Jason Volk
c2e2e998c8
ircd: Add sys/types.h to stdinc; #undef conflicting stdio.h standard defines.
2019-06-04 13:49:33 -07:00
Jason Volk
8a6e9158fe
ircd::mods::ldso: Add a DT_NEEDED iterator.
2019-06-04 03:18:03 -07:00
Jason Volk
29cdca5fbe
ircd::mods::ldso: Add a strtab lookup tool.
2019-06-03 21:13:23 -07:00
Jason Volk
b4e44a0ce1
ircd::mods::ldso: Add getter by name.
2019-06-02 17:05:36 -07:00
Jason Volk
db1b7cf5a3
ircd::mods::ldso: Add more primary interface tools; add semantic version parse.
2019-06-02 15:44:55 -07:00
Jason Volk
b99117465f
ircd::info: Improve toolchain version related; various cleanup.
...
ircd::info: Add clang and SD-6 version identification.
2019-06-02 15:44:55 -07:00
Jason Volk
f2e84a6b0e
ircd::db: Fix compression identification on init.
2019-06-02 01:15:03 -07:00
Jason Volk
1f4b7a0468
ircd::info: Add GNUC version information.
2019-06-01 22:11:30 -07:00
Jason Volk
b570497e75
ircd: Ⓜ️ :vm: Improve aggregated eval loop.
2019-06-01 18:38:07 -07:00
Jason Volk
dd49243224
ircd: Ⓜ️ :event: Add explicit event::id conversion.
2019-06-01 18:31:57 -07:00
Jason Volk
ce425b438d
ircd::net::acceptor: Elide the accepting list for single-accept [revertible].
2019-06-01 17:10:49 -07:00
Jason Volk
dafb8bd42f
ircd::net::acceptor: Track and limit operations based on configuration.
2019-06-01 17:10:49 -07:00
Jason Volk
d7edd1960e
ircd::net::listener: Add some doc comments on the structure.
2019-06-01 15:33:39 -07:00
Jason Volk
a08d5370f8
ircd::net::ipport: Add convenience conversion to ipaddr.
2019-06-01 15:33:39 -07:00
Jason Volk
351f1804c8
Add runtime program option to soften assert behavior.
2019-06-01 02:10:30 -07:00
Jason Volk
9661db89af
ircd: Ⓜ️ :events: Move file dumper to module.
2019-06-01 00:09:03 -07:00
Jason Volk
eb73595c50
ircd: Apply uniform info::versions for all dependency version identification.
2019-05-31 16:15:01 -07:00
Jason Volk
7d4de7ec82
ircd::info::versions: Rename types to ABI and ABI.
...
modules/console: Tweak formatting.
2019-05-31 16:14:53 -07:00
Jason Volk
c2669cda2b
ircd::info::versions: Add convenience access to versions object.
2019-05-31 15:21:30 -07:00
Jason Volk
36fbedec14
ircd::info: Remove tc_version.
2019-05-31 15:00:39 -07:00
Jason Volk
0a225085b3
ircd::info::version: Allow both monotonic and semantic numbers; add string generator ctor.
2019-05-31 14:56:50 -07:00
Jason Volk
3e43a10e6d
ircd::net: Improve loghead(acceptor) and loghead(acceptor_udp) related.
2019-05-31 02:35:22 -07:00
Jason Volk
2e525df668
ircd::net::acceptor: Add ALPN negotiation handler support.
2019-05-31 00:35:46 -07:00
Jason Volk
fceea7b770
ircd::http: Parse the HTTP/1.1 Upgrade header.
2019-05-30 21:48:40 -07:00
Jason Volk
65fcc17148
ircd::info: Add a dynamic version registry system w/ console cmd.
2019-05-30 21:02:18 -07:00
Jason Volk
a651952eda
modules/media/magick: Add composite thumbcropper for matrix.
2019-05-30 06:38:42 -07:00
Jason Volk
3827dde55f
ircd::magick: Add some \briefs on the interface.
2019-05-30 06:38:42 -07:00
Jason Volk
97654606b1
ircd::magick: Add interface for basic scale operation.
2019-05-30 06:13:06 -07:00
Jason Volk
500e3938f6
ircd::magick: Add interface for shave operation.
2019-05-30 06:13:06 -07:00
Jason Volk
c80bc298d0
ircd::magick: Add support for image crop operation.
2019-05-30 06:13:06 -07:00
Jason Volk
d0fc7350df
ircd::magick: Simplify thumbnail interface; no result copy.
2019-05-29 17:21:12 -07:00
Jason Volk
28f86802d2
ircd::mods::ldso: Simplify and extend interface functionality.
2019-05-29 16:09:51 -07:00
Jason Volk
2e14bfe337
ircd::magick: Add a thumbnailer.
2019-05-28 23:38:25 -07:00
Jason Volk
16f6fbc352
ircd::magick: Start a central header; add interface support infrastructure.
2019-05-28 23:24:45 -07:00
Jason Volk
c0e3f0db51
ircd: Add interface for core valgrind hypercalls.
2019-05-28 20:46:40 -07:00
Jason Volk
f94f519271
ircd: Add conditioned debugtrap() utility in assert suite.
...
ircd: Fix some assert header conflicts.
construct: Add TRAP special command handler.
2019-05-28 16:55:41 -07:00
Jason Volk
08fafd44b1
ircd::mods: Add platform-dependent ldso interface.
2019-05-28 15:39:57 -07:00
Jason Volk
b403fbc421
ircd: Ⓜ️ :events: Add event type name iteration.
...
ircd:Ⓜ️ :events: Add sender name iteration.
ircd:Ⓜ️ :events: Add origin name iteration.
2019-05-27 16:37:29 -07:00
Jason Volk
5d6cd43518
ircd: Deinline exception::what().
2019-05-27 03:07:59 -07:00
Jason Volk
bab9d9d033
modules/vm: Create a general vm.access hook; move server_acl to module hookfn.
2019-05-26 21:00:54 -07:00
Jason Volk
25dd717b7e
ircd: Ⓜ️ :room::server_acl: Add a noexcept convenience check.
2019-05-26 20:25:15 -07:00
Jason Volk
eec6c40653
ircd: Ⓜ️ Abort the experimental id::node.
2019-05-26 19:13:20 -07:00
Jason Volk
44cf572ee5
ircd::rfc1035: Rename constant.
...
ircd::rfc3986: Add additional convenience constants.
2019-05-26 18:37:40 -07:00
Jason Volk
1354066e3d
modules/m_room_server_acl: Disregard port for comparison; improve docs; ctor.
2019-05-26 18:37:40 -07:00
Jason Volk
8474b891eb
ircd::ctx: Rename function; add overload for total value.
2019-05-26 02:49:24 -07:00
Jason Volk
e88f18d65c
ircd::ctx: Internalize prof::mark() for unconditional event counting.
2019-05-26 02:49:24 -07:00
Jason Volk
e038ebfaf1
ircd: Ⓜ️ :room: Remove stale comments.
...
modules/vm: Minor cleanup.
2019-05-26 02:49:24 -07:00
Jason Volk
6baff99607
modules/m_room_server_acl: Optimize implementation IO.
2019-05-25 23:08:17 -07:00
Jason Volk
a44e491054
ircd: Ⓜ️ :room: Add server_acl interface and protocol module.
2019-05-25 20:12:41 -07:00
Jason Volk
8aa67ccb48
ircd: Add stringops suite for globular expression matching.
2019-05-25 16:46:51 -07:00
Jason Volk
91ce49d671
ircd::util: Add a weak interface for the test trigger stub.
2019-05-24 18:24:33 -07:00
Jason Volk
7d61473fcf
ircd::util: Update TODO comment.
2019-05-24 18:23:26 -07:00
Jason Volk
d7e1f88921
ircd: Minor remove cruft; internal ircd::main().
2019-05-24 18:15:56 -07:00
Jason Volk
f02a1a2be6
ircd: Ⓜ️ :vm: Relax fetch_prev_any enforcement by default.
2019-05-19 15:22:49 -07:00
Jason Volk
ea14caa95a
ircd: Ⓜ️ :dbs: Update comment for event_refs enum.
2019-05-19 15:11:58 -07:00
Jason Volk
c119c84c2f
ircd: Ⓜ️ :event: Augment event::horizon interface allowing full column iteration.
2019-05-17 02:26:27 -07:00
Jason Volk
5721920957
ircd: Ⓜ️ :event: Start an event::horizon interface around dbs::event_horizon.
2019-05-17 00:07:18 -07:00
Jason Volk
20d3fe1072
ircd::fs: Fix cause of STB_GNU_UNIQUE emission in template function.
2019-05-16 22:54:29 -07:00
Jason Volk
17cbd14d91
ircd::json: Fix cause of STB_GNU_UNIQUE emission after use of at() template.
2019-05-16 22:36:19 -07:00
Jason Volk
f00acd674d
ircd::ios: Add synchronous dispatcher overload suite.
2019-05-15 23:40:52 -07:00
Jason Volk
2b011d80df
ircd: Ⓜ️ :dbs: Make indexers internal.
2019-05-15 21:12:59 -07:00
Jason Volk
a787c51df3
ircd: Explicit visibility for assert() overrides.
2019-05-14 15:11:29 -07:00
Jason Volk
c68fc52672
ircd::ios: Always inline main thread assertions.
2019-05-13 23:42:56 -07:00
Jason Volk
304c6df468
ircd: Ⓜ️ :dbs: Simplify indexers / interface.
2019-05-13 15:25:37 -07:00
Jason Volk
758a266b1b
ircd: Ⓜ️ :dbs: Rename room_space to room_state_space.
2019-05-13 12:37:00 -07:00
Jason Volk
614b9202fc
ircd: Ⓜ️ :room: Add state::space interface w/ console cmd.
2019-05-13 10:30:12 -07:00
Jason Volk
d1425da434
ircd: Ⓜ️ :dbs: Typedef a tuple for room_space key; conditions for truncated key generation.
2019-05-13 10:19:18 -07:00
Jason Volk
e486d8907e
ircd: Ⓜ️ ;dbs: Add _room_space metadata column.
2019-05-11 17:48:35 -07:00
Jason Volk
3293443cb8
ircd: Ⓜ️ :vm: Add dbs::write_opts to vm::opts.
2019-05-11 15:30:40 -07:00
Jason Volk
6fe7329189
ircd: Ⓜ️ :dbs: Rename room_head_refs to room_head_resolve.
2019-05-11 15:30:23 -07:00
Jason Volk
5af3d3a4f2
ircd: Ⓜ️ :dbs: Add column layout key next to includes for quick reference.
2019-05-11 14:56:09 -07:00
Jason Volk
dc1b5f6881
ircd: Ⓜ️ :dbs: Unsplit appendix.h and write_opts.h for better interface in dbs.h
2019-05-11 14:44:08 -07:00
Jason Volk
838ad51b05
ircd: Ⓜ️ :dbs: Make blacklist a write option rather than API call.
2019-05-11 14:44:08 -07:00
Jason Volk
305e02db7c
ircd: Ⓜ️ :dbs: Split into headers by column.
2019-05-11 14:39:16 -07:00
Jason Volk
3ec009bf6d
ircd: Ⓜ️ Rename function.
2019-05-10 00:20:02 -07:00
Jason Volk
c311a69c7b
ircd: Ⓜ️ :room: Add sounding iteration.
2019-05-10 00:06:17 -07:00
Jason Volk
f044b447e2
ircd: Ⓜ️ :dbs: Split event_refs related into file.
2019-05-09 23:20:33 -07:00
Jason Volk
62f1b5a539
ircd: Ⓜ️ :dbs: Rename and document various ref types.
2019-05-09 23:13:16 -07:00
Jason Volk
a331bc2882
ircd: Ⓜ️ :dbs: Add interposing system for transaction self-references.
2019-05-09 21:53:12 -07:00
Jason Volk
61ff45214c
ircd: Ⓜ️ :dbs: Add missing prefix key creation overload.
2019-05-09 21:53:12 -07:00
Jason Volk
6bf50ecb28
ircd::db::txn: Add template value-returning getters.
2019-05-09 21:45:17 -07:00
Jason Volk
d81612a724
ircd: Ⓜ️ Checkpoint blerb rework.
2019-05-09 18:33:02 -07:00
Jason Volk
4d25db8863
ircd::db: Trim comment.
2019-05-09 18:30:50 -07:00
Jason Volk
2d209388c1
ircd: Ⓜ️ :dbs: Add event_horizon resolver.
2019-05-09 16:58:29 -07:00
Jason Volk
96dfcaa122
ircd::db::txn: Minor interface cleanup.
2019-05-09 16:58:29 -07:00
Jason Volk
ed3a7343cf
ircd: Ⓜ️ :dbs: Add the event_horizon column.
2019-05-09 00:02:33 -07:00
Jason Volk
a8a6e1039d
ircd: Ⓜ️ :dbs: Split header into directory.
2019-05-08 21:53:04 -07:00
Jason Volk
e670afbac8
ircd::fs: Return zero rather than propagating exception from write_life getter.
2019-05-08 19:10:36 -07:00
Jason Volk
f97472291e
ircd::prof: Various optimizations.
2019-05-08 05:19:04 -07:00
Jason Volk
c3b6bba288
ircd::buffer: Always inline fundamental buffer template utils.
2019-05-08 05:19:04 -07:00
Jason Volk
bc82a5a12c
ircd::buffer: Add canary on copy/move.
2019-05-08 05:19:04 -07:00
Jason Volk
41d60ec2f7
ircd::db: Minor move attribute.
2019-05-08 05:19:04 -07:00
Jason Volk
0112d49f62
ircd::prof: Add gadget for instruction profiling of a scope.
2019-05-08 05:19:04 -07:00
Jason Volk
3196bbd26d
ircd::prof: Simplify interface.
2019-05-07 17:28:15 -07:00
Jason Volk
47f496a155
ircd: Ⓜ️ :room::timeline: Checkpoint initial interface.
2019-05-07 16:10:24 -07:00
Jason Volk
180c83634f
ircd: Ⓜ️ :dbs: Reorg write_opts; throw panic on nul event_idx; various.
2019-05-07 16:10:24 -07:00
Jason Volk
9d5f0049cf
ircd: Ⓜ️ :dbs: Reorg the indexer conditions.
2019-05-07 15:14:10 -07:00
Jason Volk
8e90f8de5d
ircd: Ⓜ️ :room::state: Add convenience to check if state event.
2019-05-06 20:47:12 -07:00
Jason Volk
6c43a47d87
ircd: Ⓜ️ :room::messages: Add event_idx convenience conversion.
2019-05-06 14:36:49 -07:00
Jason Volk
afa475eb18
ircd::ios: Add front for asio notify_fork().
2019-05-06 13:48:49 -07:00
Jason Volk
7ef4b9f836
include/ircd: Add header file installer.
2019-05-06 13:18:51 -07:00
Jason Volk
3ea091712e
include/ircd: Add header deps to pch targets.
2019-05-06 13:07:05 -07:00
Jason Volk
7606996d3b
ircd::mapi: Elide metablock ctor from each module's PLT.
2019-05-06 12:18:06 -07:00
Jason Volk
250b600ead
ircd::resource: Reduce m:: type dependency in request structure.
2019-05-06 11:16:44 -07:00
Jason Volk
4fb5d38319
ircd: Add comment in spirit header.
2019-05-06 10:42:11 -07:00
Jason Volk
77f468b257
ircd: Tweak smalldate fmt.
2019-05-05 20:00:52 -07:00
Jason Volk
1bf17da6d1
ircd::stats: Additional arithmetic/access operators on item.
2019-05-05 19:12:54 -07:00
Jason Volk
688340a8a2
ircd: Ⓜ️ Recombine modules/m_room with ircd/m_room for now.
2019-05-05 18:10:51 -07:00
Jason Volk
134bcc1bfb
ircd::fs: Add write_opts for RWF_WRITE_LIFE_* support.
2019-05-05 17:48:02 -07:00
Jason Volk
861df761fe
ircd::fs: Add runtime support indicators for write_life related features.
2019-05-05 17:46:50 -07:00
Jason Volk
82200a9abd
ircd::fs: Add write_life hint fcntl front.
2019-05-03 19:53:05 -07:00
Jason Volk
4aef8cfdf8
ircd::net::socket: Deinline the read/write member template suites.
2019-05-03 16:29:56 -07:00
Jason Volk
e2136a3157
ircd::net::dns: Minor cleanup.
2019-05-03 16:09:57 -07:00
Jason Volk
d9812f3e86
ircd::fs: Add an evict() front to cache interface; add preconditions.
2019-05-03 05:52:12 -07:00
Jason Volk
d544c37d3d
ircd::fs: Abstract the posix_fadvise wrapping.
2019-05-03 03:33:45 -07:00
Jason Volk
d74985d3f9
ircd: Ⓜ️ Move event.h/room.h headers into their dirs.
2019-05-02 21:43:27 -07:00
Jason Volk
a464523c00
ircd::mapi: Cleanup macros for potential deepbind strategy.
2019-05-02 21:42:34 -07:00
Jason Volk
7d6bcd1bd0
ircd: Add visibility pragma in stdinc.h
2019-05-02 16:45:27 -07:00
Jason Volk
04e5e44c98
ircd: Ⓜ️ :event: Use direct reference initialization for constexprs here.
2019-05-02 15:35:26 -07:00
Jason Volk
ab61b38ad0
ircd::server: 🔗 Add noexcept on handlers.
2019-05-02 15:35:26 -07:00
Jason Volk
1a266a0651
ircd::mapi: Change header symbol name, visibility; use macro for declaration.
2019-05-02 15:35:26 -07:00
Jason Volk
77a92a1874
modules/s_keys: Reorg free functions into namespace; various cleanup.
2019-05-01 15:40:17 -07:00
Jason Volk
c45160462c
ircd::mapi: Add default visibility attribute to macro and header.
2019-04-30 15:14:24 -07:00
Jason Volk
a5f26db7ea
modules/s_fetch: Split hook handler into auth and prev related subroutines.
2019-04-30 14:14:08 -07:00
Jason Volk
64770c0214
ircd: Ⓜ️ :event::prev: Add suite to check if prev reference exists; minor cleanup.
2019-04-29 11:06:56 -07:00
Jason Volk
73ea2ff156
ircd: Ⓜ️ :event: Add comment \brief's to prev and refs interfaces.
2019-04-29 10:59:33 -07:00
Jason Volk
17a9763da6
ircd: Ⓜ️ :event::prev: Use size_t indexing rather than uint.
2019-04-29 10:57:43 -07:00
Jason Volk
80fb8699a1
ircd: Ⓜ️ Add a membership string size constant.
2019-04-27 18:32:45 -07:00
Jason Volk
425385265a
ircd: Ⓜ️ :room::origins: Minor reorg for_each.
2019-04-27 18:32:45 -07:00
Jason Volk
0cdbe472d1
ircd::util: Add pretty() convenience to timer.
2019-04-27 15:51:36 -07:00
Jason Volk
10b8e1d08b
ircd: Ⓜ️ :event::fetch: Relax object semantics.
2019-04-26 05:30:21 -07:00
Jason Volk
05306b2ce7
ircd: Ⓜ️ Minor formatting fix; remove stale comment.
2019-04-26 03:23:09 -07:00
Jason Volk
e5563586cf
ircd: Ⓜ️ Additional room sounding tools; improve console cmd.
2019-04-26 01:47:13 -07:00
Jason Volk
486ca09153
ircd: Ⓜ️ Replace is_complete w/ sounding(); console cmd.
2019-04-26 01:35:39 -07:00
Jason Volk
ba797778d6
ircd: Ⓜ️ Provide event_idx for event after gap to closure.
2019-04-26 01:35:38 -07:00
Jason Volk
e3e9322718
ircd: Ⓜ️ Add a room depth gap sounding suite w/ console cmd.
2019-04-26 01:35:16 -07:00
Jason Volk
f26fc85b0a
ircd: Ⓜ️ :error: Add convenience getters for properties.
2019-04-25 23:35:46 -07:00
Jason Volk
67380746b6
ircd::fs: Default write_opts::keep_size to true for fallocate() behavior.
2019-04-25 22:16:13 -07:00
Jason Volk
cfe4807b77
ircd::prof: Add a higher resolution syscall timer.
2019-04-25 21:10:45 -07:00
Jason Volk
30b59f4736
ircd::prof: Reorg; deinline various; add comments.
2019-04-25 21:10:45 -07:00
Jason Volk
e4acdbf772
ircd: Tweak the smalldate() format.
2019-04-25 07:35:18 -07:00
Jason Volk
ad3fedd2e2
ircd::json: Remove explicit type check here.
2019-04-24 20:12:58 -07:00
Jason Volk
541d95f47e
ircd: Ⓜ️ :v1: Add ids_only to event_auth opts.
2019-04-24 17:43:03 -07:00
Jason Volk
693cd317ff
ircd::ctx: Fix the sentinel iterator value for when_any() to last (end) not first.
2019-04-23 18:40:08 -07:00
Jason Volk
28f677eef2
ircd::info: Remove ununused; minor reorg.
2019-04-23 01:30:36 -07:00
Jason Volk
d18711503f
ircd: Ⓜ️ Unsplit event/event.h room/room.h.
2019-04-22 21:38:27 -07:00
Jason Volk
f6314a4201
modules/s_fetch: Minor reorg; pass room arg to fetch::synchronize().
2019-04-22 12:45:45 -07:00
Jason Volk
e3b1be2910
ircd: Ⓜ️ :vm: Refactor various fetch related options.
2019-04-22 12:27:43 -07:00
Jason Volk
56dd0ed8e7
ircd: Ⓜ️ :vm: Add opts to pass user_id/node_id of evaluator.
2019-04-22 12:25:50 -07:00
Jason Volk
b683f1d436
modules/vm: Assert options; prevent assignment of eval.
2019-04-22 12:23:37 -07:00
Jason Volk
e0b4dc4450
ircd::server: Use a uniform log prefix for link related.
2019-04-22 12:13:27 -07:00
Jason Volk
acd774c3ee
ircd::fs: Make ~fd() noexcept.
2019-04-22 09:16:11 -07:00
Jason Volk
7d55468511
ircd::fs: Add fd::opts getter from open fd.
2019-04-22 09:14:46 -07:00
Jason Volk
d08bcc2f32
ircd::fs: Add fd::release() memfn.
2019-04-22 08:55:42 -07:00
Jason Volk
f145c6774a
ircd::fs: Rename function.
2019-04-21 04:15:10 -07:00
Jason Volk
fbcd38fa17
ircd::fs: Add a preliminary fincore(1)-like tool.
2019-04-20 19:24:18 -07:00
Jason Volk
2a0b3994f9
ircd: Apply low-memory compile flags to spirit.h.gch.
2019-04-20 19:24:18 -07:00
Jason Volk
744438ec49
ircd: Precompile the spirit.h header.
2019-04-20 19:24:18 -07:00
Jason Volk
21a62019f2
modules/vm: Simplify error wrapping on propagation.
2019-04-20 15:03:51 -07:00
Jason Volk
db539c6268
ircd::db: Add write-ahead-log recovery callback surface.
2019-04-20 14:30:42 -07:00
Jason Volk
4db52804cb
ircd::ctx: Use iteration closure rather than exposing ctx::list.
2019-04-19 20:50:22 -07:00
Jason Volk
53fed2c4e9
ircd::util: Null the instance_list allocator ptr after use.
2019-04-19 17:42:34 -07:00
Jason Volk
91a7426899
ircd::util: Fix list node allocation related in optimized builds.
2019-04-19 16:35:50 -07:00
Jason Volk
55fc2c6f76
ircd::prof: Add callgrind hypercall suite.
2019-04-19 05:53:54 -07:00
Jason Volk
def7ee2753
ircd::allocator: Renamespace the vg utils.
2019-04-19 05:26:51 -07:00
Jason Volk
c7a872c67a
ircd: Ⓜ️ 🪝 Add accounting for hook calls; site/hook current call count.
2019-04-18 21:52:33 -07:00
Jason Volk
02b835eb2b
ircd: Ⓜ️ :feds: Add additional options; document options.
2019-04-18 21:23:00 -07:00
Jason Volk
0176dba9a8
ircd: Ⓜ️ :fetch: Consolidate interface; remove unused; reorg.
2019-04-18 19:12:37 -07:00
Jason Volk
9907f7f477
ircd::stats: Add value; add operator/access suite.
2019-04-18 17:56:09 -07:00
Jason Volk
c427223340
ircd::mapi: Force the header inline so the module contains the constants.
2019-04-18 17:36:33 -07:00
Jason Volk
1312784518
ircd::mapi: Add a serial number to deal with removed modules which are still installed.
2019-04-18 17:36:33 -07:00
Jason Volk
12df824cf4
ircd::ctx: Allow lambda transformation of the iterable for when_any()/when_all().
2019-04-18 16:07:24 -07:00
Jason Volk
0edd47d383
ircd: Ⓜ️ :feds: Add vector of operations to API.
2019-04-18 15:26:03 -07:00
Jason Volk
c6a59ab6b1
ircd::util: Add an unwind::defer device.
2019-04-18 05:46:07 -07:00
Jason Volk
5232893c6a
ircd: Ⓜ️ :fetch: Checkpoint frontfill / head selection related.
2019-04-18 05:17:49 -07:00
Jason Volk
bc922724cd
ircd: Ⓜ️ :feds: Refactor interface into opcode ABI.
2019-04-18 05:16:21 -07:00
Jason Volk
08cd894cd0
ircd: Ⓜ️ :feds: Point to the opts in result struct.
2019-04-18 04:15:13 -07:00
Jason Volk
59982907d3
ircd: Ⓜ️ :feds: Add feds::auth; update console cmd.
2019-04-18 04:13:21 -07:00
Jason Volk
871fb748eb
ircd: Ⓜ️ :fetch: Pass boolean values down the stack for start/prefetch.
2019-04-18 01:21:22 -07:00
Jason Volk
2726c67ecc
ircd::server: Dedup request/tag move semantics.
2019-04-18 01:10:43 -07:00
Jason Volk
afdf0efbd1
ircd::buffer: Tweak unique_buffer semantics.
2019-04-18 00:59:56 -07:00
Jason Volk
128b770429
ircd::buffer: Move aligned_alloc to ircd::allocator; deinline.
2019-04-18 00:21:08 -07:00
Jason Volk
286aee740b
ircd::buffer: Use c++17 switch here; addl assertions.
2019-04-18 00:08:10 -07:00
Jason Volk
0fa4bdcff7
ircd: Ⓜ️ :rooms: Consolidate / refine the rooms iteration interface.
2019-04-17 20:47:50 -07:00
Jason Volk
25680a8ed2
ircd: Move smalldate() to date.h from logger unit.
2019-04-17 19:27:26 -07:00
Jason Volk
1eaff2e91e
ircd::fs: Runtime binding for pwritev(2)/pwritev2(2) based on kernel version.
2019-04-17 19:19:30 -07:00
Jason Volk
08b53b1746
ircd::vg: Start a valgrind emulator hypercall suite.
2019-04-17 00:59:52 -07:00
Jason Volk
83193d0ff9
ircd::server: Add an op_open; handle control return to link::open().
2019-04-16 22:37:44 -07:00
Jason Volk
0f404a0bda
ircd::net: Addition assertions; use constrefs in handler cbs.
2019-04-16 21:39:43 -07:00
Jason Volk
4038973297
ircd::util: Use allocator::node for instance_list instances.
2019-04-16 20:48:00 -07:00
Jason Volk
903a6e7f57
ircd::server: Copy the eptr so it doesn't get robbed on forwarding constructions.
2019-04-16 19:04:23 -07:00
Jason Volk
adfc4d0c70
ircd::ios: Fix overzealous universal construction of handler.
2019-04-16 18:33:01 -07:00
Jason Volk
af1bd92b26
ircd::spirit: Apply hidden visibility to all headers + our internal grammar namespaces.
2019-04-16 18:33:01 -07:00
Jason Volk
5fee4a9933
ircd: Ⓜ️ :events: Add type-based iteration w/ console cmd.
2019-04-16 16:11:23 -07:00
Jason Volk
9b00c65ef6
ircd: Ⓜ️ :events: Add additional lighter-weight event_idx iteration tools.
2019-04-16 16:11:23 -07:00
Jason Volk
d96208faaf
ircd: Ⓜ️ :events: Add iteration tools for events in sender/origin.
2019-04-16 16:11:23 -07:00
Jason Volk
ecbdf00f22
ircd: Ⓜ️ :dbs: Add event_type metadata column.
2019-04-16 16:11:23 -07:00
Jason Volk
8148dc6502
ircd: Ⓜ️ :dbs: Add event_sender metadata column.
2019-04-16 15:04:31 -07:00
Jason Volk
25d153d64c
ircd: Ⓜ️ :sync: Add an initial phase convenience; add account_data as an initial phase.
2019-04-16 01:32:52 -07:00
Jason Volk
f17e521ff8
ircd::ios: Objectify the asio enqueuing wrappers.
2019-04-16 01:32:52 -07:00
Jason Volk
92cdccf956
ircd::net: Add parent ssl_cipher conf items; add curve items.
2019-04-15 22:16:16 -07:00
Jason Volk
889b65a002
ircd::net: Additional traps / assertions.
2019-04-15 17:09:35 -07:00
Jason Volk
7d021f9430
ircd::server: Rename server_name to server_version.
2019-04-15 15:23:44 -07:00
Jason Volk
307d8bf71c
ircd: Ⓜ️ :fetch: Fix object assignment semantics.
2019-04-15 14:44:58 -07:00
Jason Volk
77b16f32ce
ircd: Ⓜ️ :append: Calculate age based on depth from room head.
...
fixes #55
2019-04-15 14:44:58 -07:00
Jason Volk
f9025cebb9
ircd: Support read-only and write-avoid modes via conf item / command line.
2019-04-15 11:16:31 -07:00
Jason Volk
58c5ac7855
ircd::ios: Add asio::defer() to interface.
2019-04-12 16:26:34 -07:00
Jason Volk
8c68a24e1f
ircd::ctx::prof: Add cycle counter to ticker array.
2019-04-12 15:58:06 -07:00
Jason Volk
541dbadf2f
ircd::buffer: Increase restrictions for unique_buffer<>.
2019-04-12 11:34:00 -07:00
Jason Volk
15bd7282c7
ircd::db: Use rvalue refs here.
2019-04-12 09:36:53 -07:00
Jason Volk
2822cd0a8a
ircd: Ⓜ️ :fetch: Add headfill operation.
2019-04-12 05:09:38 -07:00
Jason Volk
eb33688bc1
ircd: Ⓜ️ :fetch: Add additional interface tools; consolidate interface; cleanup/reorg.
...
ircd:Ⓜ️ :fetch: Add backfill suite.
2019-04-12 04:44:26 -07:00
Jason Volk
7d27126f96
ircd: Ⓜ️ :room: Add any_user() convenience.
2019-04-12 04:44:26 -07:00
Jason Volk
c14d67102a
ircd: Ⓜ️ :fetch: Reorient interface to expose fetch::request.
2019-04-12 03:35:46 -07:00
Jason Volk
eace5e309c
ircd: Ⓜ️ :feds: Add / upgrade backfill.
2019-04-12 01:53:57 -07:00
Jason Volk
360cc01dc8
ircd: Ⓜ️ :feds: Migrate feds::perspective() to interface.
2019-04-12 00:55:16 -07:00
Jason Volk
06e381ce2b
ircd: Ⓜ️ :feds: Use a misc arg vector of string_view's.
2019-04-12 00:52:29 -07:00
Jason Volk
302969f100
ircd: Ⓜ️ :feds: Add namespace \brief. Reorg impl layout.
2019-04-12 00:33:29 -07:00
Jason Volk
dc93610914
ircd: Ⓜ️ :feds: Add feds::event to interface.
2019-04-12 00:16:27 -07:00
Jason Volk
3865326d71
ircd::server: Add additional loghead(link, request) with more data.
2019-04-11 22:26:11 -07:00
Jason Volk
4f27526e9b
ircd::server: Add monotonic identity counters for peers and links.
2019-04-11 22:26:11 -07:00
Jason Volk
d38c5801c9
ircd::server: Add interface to iterate all requests.
2019-04-11 21:40:59 -07:00
Jason Volk
5f1f0d0d7f
ircd::server: Distill out functions to parse HTTP head from in/out buffers.
2019-04-11 21:13:42 -07:00
Jason Volk
c9c171ed5b
ircd: Ⓜ️ :feds: Refine the feds preliminary central interface.
2019-04-11 06:27:28 -07:00
Jason Volk
74778bd024
ircd::ios: Add a queued handler counter to stats.
2019-04-10 22:54:13 -07:00