Jason Volk
b86560c5f5
modules/client/sync: Reactivate sync with a trial using user's room.
2018-02-11 15:47:25 -08:00
Jason Volk
830a4b92a1
ircd: Ⓜ️ Add preliminary !@user:host "user's room" to database all things user.
2018-02-11 15:47:24 -08:00
Jason Volk
e3c419d25d
modules/federation/send: Increase the PUT payload_max.
2018-02-10 21:28:49 -08:00
Jason Volk
ca0e488ea5
modules/client/rooms: Reactivate the /messages endpoint (with zero param respect).
2018-02-10 19:56:01 -08:00
Jason Volk
535232603c
modules/console: Add room_id argument to exec command.
2018-02-10 13:12:23 -08:00
Jason Volk
b238818522
ircd: Ⓜ️ Convert room::members/origins iters to test proto; console update; various.
2018-02-10 13:05:01 -08:00
Jason Volk
23387155df
ircd: Ⓜ️ Candidate split room::state interface (const part).
2018-02-10 00:41:10 -08:00
Jason Volk
bc4072c4d1
modules/client/rooms: Reinstate the state related endpoints.
2018-02-09 21:34:44 -08:00
Jason Volk
0bf053197c
ircd::json: Massage away json::value template ctor.
2018-02-09 21:33:06 -08:00
Jason Volk
7f25e368bc
modules/console: Add a room command suite.
2018-02-08 21:00:50 -08:00
Jason Volk
7bff223748
modules/console: Adjust the state commands to use a root node ID arg for now.
2018-02-08 13:27:49 -08:00
Jason Volk
0cc37daf9d
modules/console: Improve the exec command.
2018-02-08 13:27:48 -08:00
Jason Volk
f5adae46d1
modules/console: Move the preliminary exec command over to conmod.
2018-02-08 10:45:37 -08:00
Jason Volk
a517acea60
modules/console: Add db command with list default sub-command.
2018-02-07 23:15:17 -08:00
Jason Volk
f925c9e5df
modules/console: Add command to backup the events database as json::vector to file.
...
This same vector can be replayed into a new database with an "exec" command.
2018-02-07 00:24:54 -08:00
Jason Volk
da38c9164f
modules/console: Partially move/add over key/event command trees.
2018-02-07 00:24:54 -08:00
Jason Volk
02edc327a3
modules/console: Add net command; move net host subcommand into module.
2018-02-06 13:20:24 -08:00
Jason Volk
ee0d6423f3
ircd: Move params back into ircd::util... (w/ manual inclusion).
2018-02-06 13:20:24 -08:00
Jason Volk
44f8868598
modules: Add reloadable console module with library of command handlers.
2018-02-06 12:50:25 -08:00
Jason Volk
025e1d7c78
ircd: Ⓜ️ Move events database description and instance to libircd.
2018-02-05 21:24:36 -08:00
Jason Volk
7b48bc9f40
ircd: Ⓜ️ :dbs: Checkpoint the meta-index "state_head for event_id in room_id"
2018-02-05 21:24:35 -08:00
Jason Volk
be624ca7f6
Update Copyrastafaris.
2018-02-05 21:24:34 -08:00
Jason Volk
d53eef4ab6
ircd: Eliminate the raw_buffer concept.
2018-02-05 18:54:55 -08:00
Jason Volk
63d28a77cc
ircd: Ⓜ️ :state: Make it right.
2018-02-02 15:06:12 -08:00
Jason Volk
8296adb6c3
ircd: Ⓜ️ :state: Try using a separate child array to store values at any level (partial).
2018-02-02 14:58:55 -08:00
Jason Volk
622086a12a
modules/client/register: Don't require auth object for r0.3.0.
2018-01-29 12:00:00 -08:00
Jason Volk
f12786959e
modules/client/register: Fix defaulting empty ?kind= to user.
2018-01-29 12:00:00 -08:00
Jason Volk
9c91f8d772
client: Fix cosmic ray.
2018-01-26 19:27:12 -08:00
Jason Volk
a9cada32db
ircd: Ⓜ️ Add dbs namespace; remove old interfaces; checkpoint various.
2018-01-26 18:12:46 -08:00
Jason Volk
e8a7f0aeef
modules/federation: Fix the /event/ response.
2018-01-24 18:40:19 -08:00
Jason Volk
5ab7dc6421
modules/client: filter_id is the event_id of the filter saved to the filter room...
2018-01-23 18:41:34 -08:00
Jason Volk
fffea204b9
modules: Add preliminary federation/get_missing_events handler.
2018-01-23 16:35:28 -08:00
Jason Volk
dc4b17f84a
ircd/modules: Fix init prio removal related.
2018-01-11 03:24:22 -08:00
Jason Volk
b801993309
client: Retro style; Minor cleanup.
2018-01-10 01:19:35 -08:00
Jason Volk
8bfd2b9dfe
modules: Minor cleanup versions handler.
2018-01-08 03:08:59 -08:00
Jason Volk
a549070f05
modules: Remove this manual include of <iterator> here.
2017-12-28 13:48:37 -07:00
Jason Volk
ba3d1e7af4
modules: Add stub media/upload.
2017-12-24 21:54:59 -07:00
Jason Volk
eafaae7846
client: Rename js directory.
2017-12-24 19:26:05 -07:00
Jason Volk
80931e4e86
ircd: Ⓜ️ Split m.cc; distribute inits; modules: Checkpoint matrix.
2017-12-12 14:59:40 -07:00
Jason Volk
d8bddbbff0
client: Preliminary refactor removal of rooms into rooms room; various.
2017-12-12 14:59:40 -07:00
Jason Volk
0d753cf52f
client: Alias Object.debug and mc.debug.object.
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
5b2facd8e3
client: Add a toggle() functional util.
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
03dea97bb2
ircd: Add preliminary RFC3986 grammar; move urlencoding there.
2017-12-12 14:59:40 -07:00
Jason Volk
1a1a50f5f3
Checkpoint reorganization.
2017-11-30 12:30:19 -08:00
Jason Volk
5d53cdab5e
ircd: Ⓜ️ Checkpoint matrix.
2017-11-30 11:23:47 -08:00
Jason Volk
528b7047e9
modules: Checkpoint matrix various.
2017-11-30 11:23:47 -08:00
Jason Volk
1cbd0ab8ba
client: Update room summary related; may break synapse compat; possibly issue with IRCd /state/ response.
2017-11-30 11:23:47 -08:00
Jason Volk
7c4659e089
client: Updates; support ircd.key state event; various.
2017-11-30 11:23:47 -08:00
Jason Volk
31b778ee0b
ircd: Ⓜ️ Improve server keys related functions.
2017-11-30 11:23:46 -08:00
Jason Volk
f7224dc801
client: Checkpoint client.
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
94aac875f1
client: Fixes/improvements to client.
2017-11-30 11:23:44 -08:00
Jason Volk
688ff545d6
client: Update; Add m.room.name timeline display handler; Various.
2017-11-30 11:23:43 -08:00
Jason Volk
62133d09b7
client: Various fixes.
2017-11-30 11:23:42 -08:00
Jason Volk
1517d784c7
client: Fix room join bitrot.
2017-11-30 11:23:41 -08:00
Jason Volk
ef2aa0d249
client: Fix error scope related bitrot.
2017-11-30 11:23:41 -08:00
Jason Volk
f10662fe7d
ircd: Ⓜ️ Checkpoint matrix.
2017-11-30 11:23:40 -08:00
Jason Volk
f89d6f651c
modules: Add preliminary federation and media directories.
2017-11-30 11:23:40 -08:00
Jason Volk
43e35786ce
ircd: Move subsystem 'index header' into subsystem directories.
2017-10-19 01:38:03 -07:00
Jason Volk
678ff574b5
ircd::client: Fix some scroll and event creation related; Various style;
2017-10-15 21:31:06 -07:00
Jason Volk
115940e803
ircd::http: Preserve leading slash from user's URL so we can use it for X-Matrix auth.
2017-10-15 21:26:05 -07:00
Jason Volk
a3f7a41650
ircd::json: Rename json::string to json::strung and maintain json::string as intuitive type.
2017-10-15 21:18:42 -07:00
Jason Volk
18bbf758f3
ircd/modules: Improve path param parsing related; various m:: related.
2017-10-11 20:54:03 -07:00
Jason Volk
51672cdf2d
client: Fixes to style; fix bugs.
2017-10-11 20:54:01 -07:00
Jason Volk
b9f13ed2c2
ircd: Remove cruft.
2017-10-11 20:54:01 -07:00
Jason Volk
edcd95cd8f
modules/ircd: Ⓜ️ Upgrade various json tuple templates with string literals.
2017-10-11 18:18:19 -07:00
Jason Volk
20869309a2
Checkpoint matrix with preliminary federation client and keyserver related.
2017-10-03 04:27:15 -07:00
Jason Volk
3a9696fb6c
ircd: Ⓜ️ Add all spec'ed event fields to event tuple.
2017-10-03 04:27:15 -07:00
Jason Volk
4f50cba4a7
client: minor fix style; minor fix exception handling.
2017-10-03 04:27:15 -07:00
Jason Volk
01d7ec1560
modules: Various fixes; cleanup.
2017-10-03 04:27:13 -07:00
Jason Volk
189de14f1e
modules: Replace hardcoded hosts with my_host().
2017-10-03 04:27:13 -07:00
Jason Volk
b18413e0ed
client: Fixes to client.
2017-10-03 04:17:11 -07:00
Jason Volk
babde26165
make: Minor cleanup.
2017-10-03 04:17:10 -07:00
Jason Volk
6dfe034f6f
client: Fixes.
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
92a8d8e2bf
ircd: Ⓜ️ Improve interfaces; Add prelim sync loop; Add send resource handler.
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
c032c686f6
Checkpoint matrix application basis.
2017-09-24 18:16:45 -07:00
Jason Volk
54d6793f59
Update various documentation and comments.
2017-09-24 18:16:33 -07:00
Jason Volk
db748cae81
ircd::resource: Accept json::member for response for now.
2017-09-24 18:16:32 -07:00
Jason Volk
ace878b887
ircd::json: Rename tuple member to property.
2017-09-08 03:47:53 -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
fa41c1db5f
ircd: Ⓜ️ Reorg location of database descriptions.
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
caa6ed58e5
ircd: Makefile improvements.
2017-08-23 15:39:41 -06:00
Jason Volk
4fd787d9d5
ircd::json/modules: Rename various types.
2017-08-23 15:32:28 -06:00
Jason Volk
36eb3a778d
client: Various fixes to the client.
2017-08-23 15:28:25 -06:00
Jason Volk
c9e947e66f
ircd: Remove aborted cruft.
2017-08-23 15:27:41 -06:00
Jason Volk
4d4a56fe9c
ircd::js: Upgrade SpiderMonkey to esr52 from esr45.
2017-08-23 15:25:22 -06:00
Jason Volk
59e05b44be
modules: Add initial UI for IRCd served over HTTP running Matrix.
...
Client Alpha (Chlamydia Client)
2017-08-23 15:15:01 -06:00
Jason Volk
a3117391b5
ircd/modules: Preliminary matrix scaffold.
2017-08-23 15:10:28 -06:00
Jason Volk
a25143b035
charybdis/modules: Fix Makefile argument related.
2017-08-23 14:55:58 -06:00
Jason Volk
7ff04618c0
ircd;modules: Minor Makefile tweaks.
2017-04-04 16:10:29 -07:00
Jason Volk
b07169dd69
Update Makefile flags for libraries to show more linkage issues.
2017-03-30 16:04:20 -07:00
Jason Volk
8ef53f2640
ircd: Move and improve socket listener device.
2017-03-30 16:04:19 -07:00
Jason Volk
f1c5257201
modules: Add initial: versions, register, login.
2017-03-30 16:03:41 -07:00
Jason Volk
c9ddf4f6ab
ircd: Add lex_cast wrapper interface; various cleanup.
2017-03-14 15:03:15 -07:00
Jason Volk
472ee2c648
ircd: HTTP interface function-objects et al.
2017-03-13 18:44:00 -07:00
Jason Volk
49c2a5361c
ircd: Various fixes.
2017-03-13 14:43:27 -07:00
Jason Volk
b592b69b86
What is the Matrix? Control.
2017-03-10 17:51:18 -08:00
Jason Volk
8b0fe0318f
gold linker.
2016-11-25 19:23:50 -08:00
Jason Volk
0d3ddb9bd7
[prelim] modules: Add js kernel.
2016-11-25 19:23:50 -08:00
Jason Volk
edbc19790e
modules: Stub crypto module.
2016-11-25 19:23:50 -08:00
Jason Volk
eef5b78112
modules: Add stream interface object.
2016-11-25 19:23:50 -08:00
Jason Volk
63a6a82ea2
modules: Add assert object for Node.js style tests.
2016-11-25 19:23:50 -08:00
Jason Volk
848337a76b
modules: Add net with Node.js compatible net.Socket / net.Server.
2016-11-25 19:23:50 -08:00
Jason Volk
7b4c06575f
modules: Add DNS module with Node.js compatible lookup().
2016-11-25 19:23:50 -08:00
Jason Volk
4fa9985399
modules: Add Events prototype.
2016-11-25 19:23:50 -08:00
Jason Volk
53f355e41d
modules: Add preliminary console to support js-style console.log() et al.
2016-11-25 19:23:49 -08:00
Jason Volk
4127367a46
modules: Add preliminary "require" to load additional modules into js.
2016-11-25 19:23:49 -08:00
Jason Volk
67af461540
modules: Update future object to support async contracts.
2016-11-25 19:23:49 -08:00
Jason Volk
a4f55b4627
ircd::mods: Reorganize and distill interface.
2016-11-25 19:23:49 -08:00
Jason Volk
b8f5366f52
ircd::js: Improve trap callback arguments; add this
value.
2016-11-13 16:34:00 -08:00
Jason Volk
edd77d2265
ircd::js: Add asynchronous state and completion target mechanism.
2016-11-13 16:33:22 -08:00
Jason Volk
2f645941a8
ircd::ctx: Move ctx headers into directory.
2016-11-13 16:29:45 -08:00
Jason Volk
998724937c
[temp] Checkpoint test.
2016-10-13 21:55:53 -07:00
Jason Volk
757d7e10a8
[temp] checkpoint some crap which isn't going to stick.
2016-09-27 17:29:06 -07:00
Jason Volk
d8d2fe1564
ircd: Add scope 'life_guard' util for references in reentrant contexts.
2016-09-22 16:18:31 -07:00
Jason Volk
fcd410d656
ircd::client: Add timer logic to client socket/io.
...
Note: Not sure if I like two reference counters for each client,
ideally, but we'll see where it goes after abstractions.
2016-09-21 16:29:30 -07:00
Jason Volk
26a3cd8441
Preliminary new client. Reorg/renames for ircd::client struct symbol.
2016-09-21 16:29:29 -07:00
Jason Volk
4ac4244876
Add m_host "HOST" command for DNS resolution.
2016-09-21 16:29:28 -07:00
Jason Volk
556ceba8a0
ircd: new client; start over.
2016-09-21 16:29:28 -07:00
Jason Volk
5b55e60015
Add P-Line listener module.
2016-09-21 16:29:28 -07:00
Jason Volk
2742547826
Introduce modular configuration system.
2016-09-21 16:28:51 -07:00
Jason Volk
9275429ee1
Replace command system.
2016-09-09 16:17:36 -07:00
Jason Volk
12c836dc6e
Rip out libltdl.
2016-09-09 16:17:02 -07:00
Jason Volk
9d0a959bb5
MAPI IV. This iteration leverages the C++11 standardized RTTI.
...
* Simplifies the export declarations for module developers. While
MAPI III utilized a flexible key-value vector to eliminate positional
arguments in a header initializer, now the developer simply makes
a list of pointers to what they want to export for injection into
IRCd. Example:
mapi::header IRCD_MODULE
{
"mymod",
"My module adds a command, a hook, and a CLICAP",
&my_cmdtab,
&some_hook,
&clicaptab
};
* Distributes the handlers for items passed to the above vector.
Anyone can add a type-handler to the module system from anywhere in IRCd
(and other modules?) When your type is encountered a handler is called
providing the symbol name to read out of the module. Example in parser.cc:
mods::add_loader<Message>([]
(mod &loading, const std::string &symbol)
{
auto &msg(get<Message>(loading, symbol));
add_command(msg.name, msg);
});
2016-09-09 16:17:01 -07:00
Jason Volk
3ebde4ab50
Convert umodes to mode_lease mechanism.
2016-09-09 16:17:01 -07:00
Jason Volk
127378b57c
Refactor logger.
2016-09-09 16:17:00 -07:00
Jason Volk
052a6c8d22
Refactor snomask.
2016-08-28 01:48:25 -07:00
Jason Volk
21cfd2eefd
ircd: Rename newconf name conflict.
2016-08-26 08:50:11 -07:00
Jason Volk
d9e90e8937
ircd::cache: Convert send function arguments client* -> client&
2016-08-25 04:57:23 -07:00
Jason Volk
5f79420c29
Refactor isupport.
2016-08-25 03:01:45 -07:00
Jason Volk
9c16de2d41
Refactor whowas.
2016-08-25 02:34:28 -07:00
Jason Volk
5f218cdbb2
Refactor scache.
2016-08-25 02:07:11 -07:00
Jason Volk
3e26e7ab44
ircd: Move tgchange related into namespace.
2016-08-25 02:07:11 -07:00
Jason Volk
f33b369609
Refactor umodes.
2016-08-23 15:25:09 -07:00
Jason Volk
06b84579e3
modules/extensions: LDFLAGS += --no-allow-shlib-undefined
2016-08-23 05:22:38 -07:00
Jason Volk
b65c5430f2
Refactor client flags.
2016-08-23 05:22:38 -07:00
Jason Volk
ab9a8e5c04
Convert all client handler arguments to reference type.
2016-08-23 05:22:38 -07:00
Jason Volk
dd9124b687
Preliminary Client refactor.
...
Add client to ircd::client:: namespace.
Also move former struct User and struct Server into client.cc as
opaque structure demo.
2016-08-22 15:56:12 -07:00
Jason Volk
90093b82e6
Upgrade user struct.
2016-08-21 15:30:22 -07:00
Jason Volk
68b8a83419
ircd: Reduce is_chanop_voiced().
2016-08-21 15:30:22 -07:00
Jason Volk
9835d43977
Upgrade channels structure.
2016-08-20 20:39:29 -07:00
Jason Volk
5752be41b8
Upgrade channel membership lists.
2016-08-20 19:30:35 -07:00
Jason Volk
276cad4275
Upgrade the channel invite list.
2016-08-20 19:30:35 -07:00
Jason Volk
a84fe8a09b
Upgrade bqeI channel lists.
2016-08-20 19:30:35 -07:00
Jason Volk
125e3b21f2
ircd: Improve/rename channel name check related.
2016-08-20 19:30:34 -07:00
Jason Volk
7d44e271f7
Better names for some channel mode convenience former-macros.
2016-08-20 19:30:34 -07:00
Jason Volk
1e07182f3e
Remove CheckEmpty() from macro scope.
2016-08-20 19:30:34 -07:00
Jason Volk
f5143fbf73
Add channel structure into namespace + remove related rb_banheaps.
2016-08-20 19:30:34 -07:00
Jason Volk
03660fc4b0
Refactor chmode into namespace.
...
She's still a bit of a mess.
2016-08-20 19:30:34 -07:00
Jason Volk
f112111e51
Add rfc1459:: case compliance namespace.
2016-08-20 19:30:34 -07:00
Jason Volk
3f6d567285
ircd: Improve/refactor version.cc -> info.cc related.
2016-08-20 19:30:34 -07:00
Jason Volk
60c044d78a
Fix redundant/conflicting namespace labels.
2016-08-20 19:30:33 -07:00
Jason Volk
fc4af83fdf
Remove __unused macro.
2016-08-20 19:30:33 -07:00
Jason Volk
61b517ca3c
Precompile and remove most include directives. Notes:
...
* To benefit from the precompiled-header (PCH) it MUST provide "the first C token."
Advantages:
Never worry about the include stack again. Remember, this means one less thing
for random module developers, community people learning C++, and new developers
to deal with. It should reduce the learning curve and barrier for participation.
Disadvantages:
Makes overall compilation a bit slower, especially without any additional
work to improve it again. There are several opportunities, places where the
PCH is probably being ignored, etc that can be addressed.
2016-08-20 19:30:33 -07:00
Jason Volk
90c9fe686e
ircd: Namespace and partially modernize ircd::cache.
2016-08-19 22:39:34 -07:00
Jason Volk
a71a4551ae
ircd: Insert into ircd:: namespace.
2016-08-13 02:43:42 -07:00
Jason Volk
fb8792da3d
ircd: Towards a comprehensive capability C -> C++ refactor.
2016-08-13 02:43:41 -07:00
William Pitcock
09d19cbbd3
capability: clean up CAP_REQUIRED and CAP_ORPHANED flags, use bool variables instead
2016-07-31 18:39:19 -05:00
William Pitcock
e7a768ca22
capability: fix capability stats dumping
2016-07-31 18:10:31 -05:00
William Pitcock
92415a5371
alias: cleanups
2016-07-31 03:24:12 -05:00
William Pitcock
d0a59d58a0
capability: major rewrite for C++ support.
...
- no rb_dictionary use anymore
- CapabilityIndex converted into a proper class
- proper RAII lifecycle management
2016-07-31 03:18:22 -05:00
William Pitcock
10ff2d192c
alias: convert to RAII/std::string/etc, no more rb_dictionary use (ref #202 )
2016-07-31 01:57:04 -05:00
William Pitcock
1c77b054a8
parse: move cmd_dict to a std::set
2016-07-31 01:36:14 -05:00
William Pitcock
c7135bdf9a
cache: adopt proper RAII pattern
2016-07-31 01:03:05 -05:00
William Pitcock
1c813cee95
cache: rough conversion of help system to std::map (ref #202 )
2016-07-30 22:13:29 -05:00
Jason Volk
73297c988b
Preliminary defaults/paths namespacing.
...
The namespace is inline to mimic the C namespace for now.
2016-07-25 16:49:00 -07:00
Jason Volk
4796bec441
Activate PCH for position independent code.
...
Cuts compilation time by 30%+
2016-07-25 00:54:38 -07:00
Jason Volk
404239eb60
Build system cleanup.
2016-07-22 19:46:28 -07:00
Jason Volk
ac577c1322
Regress brace init relaxation for clang.
2016-07-22 19:46:28 -07:00
Jason Volk
834964c659
Convert IRCd to C++
...
Happy 28th birthday. You're all grown up.
2016-07-22 19:46:27 -07:00
Jason Volk
7cea4c784d
ircd: Merge the defaults/ircd_defs stuff for now.
...
ircd/rb: Move some lowish level macros down to rb.
2016-07-21 20:51:02 -07:00
Jason Volk
ac4dda1e67
Towards a leak-free repository.
...
Adds a Makefile target 'mrproper' though this only works on new versions of AC.
2016-07-21 20:51:02 -07:00
Jason Volk
ea53aab823
Refactor repository layout.
...
* librb is no longer a separately configured subproject.
* charybdis is now a standalone directory with a binary.
* Include path layout now requires a directory ircd/ rb/ etc.
2016-07-21 20:51:02 -07:00
William Pitcock
79235fec68
modules: missed a spot
2016-06-26 01:43:17 -05:00
William Pitcock
f200d90869
modules: allow non-opers to see what extensions are loaded
2016-06-26 01:40:43 -05:00
Jason Volk
6357ad5fd9
Add a reason pointer to hook_data_privmsg_channel. When set, the reason is appended to the text of ERR_CANNOTSENDTOCHAN. The pointer will not be free()'ed.
2016-06-25 22:57:04 -05:00
William Pitcock
7e1bb8ad0d
Proper channel mode classification. Fixes existing ad hoc
...
channel mode classification which is required by RPL_MYINFO indicating arity,
and RPL_ISUPPORT indicating an enumerated class. The content of these replies
had previously been generated by hardcoded strings of some letters.
Channel modes require classification which corresponds to the
CHANMODES= data in RPL_ISUPPORT. Classes A,B,C can then be
listed in the unary column of RPL_MYINFO. cflag_add() is updated
for this. Additional cleanup of chmode.h and channel.h
circularity is also proffered within.
Submitted-by: Jason Volk <jason@zemos.net>
2016-06-25 22:54:37 -05:00
Jason Volk
b5cfad0319
Core modules cannot be unloaded, otherwise bad things happen.
...
Additionally some information is logged and passed to the operator
conducting a MODRESTART.
2016-06-21 17:42:36 -07:00
William Pitcock
2185c50aad
m_modules: use new module api
2016-06-18 00:59:15 -05:00
William Pitcock
397ec4d171
invite: do not send duplicate invite messages ( closes #194 )
2016-06-16 20:21:18 -05:00
Aaron Jones
0982871a99
strcpy: mass-migrate to strlcpy where appropriate
2016-05-15 03:58:44 +00:00
Aaron Jones
7de13f7e5e
starttls: Allow command usage with backends other than OpenSSL
2016-05-14 00:26:03 +00:00
Simon Arlott
4ad9738d7a
m_alias: correctly construct string to be sent
2016-05-12 19:45:27 +01:00
Simon Arlott
da20854e83
random_ping: stop producing negative values that become 16 chars
2016-05-02 21:14:16 +01:00
Elizabeth Myers
f4d828ef96
m_alias: restore old behaviour of joining all parameters.
...
There are two important caveats here, however:
1) Aliased commands have more than 8 parameters will be truncated;
there's nothing I can do about this.
2) Parameters with colons will not be handled as you expect. Again,
nothing I can do about this.
2016-05-01 03:48:00 -05:00
Simon Arlott
896370cc3e
m_stats: don't try to access bl_stats if it doesn't exist
2016-04-30 13:18:48 +01:00
Simon Arlott
4fbb736202
ssld: add a callback when the connection is opened
...
This allows us to wait until we have the fingerprint information before
continuing with a server connect process.
2016-04-24 11:48:35 +01:00
Simon Arlott
3085734104
m_stats: display certificate fingerprint in STATS C
2016-04-24 01:06:51 +01:00
Simon Arlott
00039dcddd
m_alias: store a copy of alias->name as it will be freed on a rehash
2016-04-24 00:09:12 +01:00
Simon Arlott
84e3e445aa
mr_server: Report certificate fingerprint mismatches
...
Log the received certificate fingerprint when it causes a server to be
rejected.
2016-04-23 17:37:05 +01:00
Simon Arlott
b49efe577c
mr_server: Handle unknown error codes
...
As mr_server is a module, it could potentially receive an unknown
error code from check_server().
2016-04-23 17:37:04 +01:00
Elizabeth Myers
7445ece1d1
Revert "Implement the netsplit batch type."
...
This needs more work, see
https://github.com/ircv3/ircv3-specifications/issues/253
This reverts commit 2373891299
.
2016-04-16 11:05:00 -05:00
Elizabeth Myers
2373891299
Implement the netsplit batch type.
...
This also lays the groundwork for the netjoin batch type, but that isn't
implemented yet. I don't like how some of this is implemented but it'll
have to do for now...
Compile tested, needs more testing.
2016-04-15 16:50:43 -05:00
Elizabeth Myers
5e9a3f8674
Change the way authd configures opm
...
It's a bit of a hack, but better than before. Rather than rehashing
(which could get us into an endless loop), we now segregate the
configuration phase (creating entries ircd-side in case we restart authd
later) and sending phases (when configure_authd() is called). Since we
have to call configure_authd() no matter what (to send timeouts etc.)
and we have to send this data to configure authd anyway, and sending
duplicate data is bad, this is the only way I can think of for now.
2016-04-12 09:36:09 -05:00