0
0
Fork 0
mirror of https://github.com/matrix-construct/construct synced 2024-07-10 12:38:36 +02:00
Commit graph

3382 commits

Author SHA1 Message Date
Jason Volk 2088193118 ircd: Allow non-default CAP_MASK during server estab. 2016-08-23 05:22:38 -07:00
Jason Volk f081f4b7cb ircd::client: Disallow copying client struct. 2016-08-23 05:22:38 -07:00
Jason Volk b7cb55a58a ircd::client: Pop the cork. 2016-08-23 05:22:38 -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 3847a3e30a Add basic bitflag-enum operator relaxation utilities. 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 9a22cfd393 ircd::chan: Add some basic protocol ERR exceptions. 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 a6dccc4419 ircd: Add ircd::err exception namespace for throwable protocol errors. 2016-08-21 15:30:22 -07:00
Jason Volk fd4af9c02a Forward declare to prevent ltdl.h inclusion. 2016-08-20 20:39:31 -07:00
Jason Volk 25d7274afa Fix missing namespace import. 2016-08-20 20:39:31 -07:00
Jason Volk abf1a5c598 rb: typedef `uint' if necessary. 2016-08-20 20:39:31 -07:00
Jason Volk 9835d43977 Upgrade channels structure. 2016-08-20 20:39:29 -07:00
Jason Volk 271aa22aee ircd: Add rfc1459::less overload on string pointers. 2016-08-20 19:30:35 -07:00
Jason Volk 3be7557d53 ircd: Disable ircd_linker.h on _WIN32. 2016-08-20 19:30:35 -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 c5224c8142 ircd::chan: Add convenience operators for channel mode structure. 2016-08-20 19:30:35 -07:00
Jason Volk 4f7eeaa60c ircd: Add select preliminary inlines for future client refactor. 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 d064881b2d Upgrade deprecated std comparators. 2016-08-20 19:30:34 -07:00
Jason Volk e1cccd482b Updates to match utilities. 2016-08-20 19:30:34 -07:00
Jason Volk b7a84d3650 Prevent ambiguous cast when the comparator function is overloaded. 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 2352528ffb ircd: rename mask_match() to match_mask(). 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 5420a29830 bantool: EmptyString() redefined. 2016-08-20 19:30:33 -07:00
Jason Volk e78103e23b rb: define ulong to complement uint. 2016-08-20 19:30:33 -07:00
Jason Volk 13a18ace2b rb: Remove defines/includes related to booltype for __cplusplus. 2016-08-20 19:30:33 -07:00
Jason Volk 096f7b9ff7 clang: -Wno-mismatched-tags 2016-08-20 19:30:33 -07:00
Jason Volk d9abfc3955 Include time and iomanip standard library headers. 2016-08-20 19:30:33 -07:00
Jason Volk 1f11e88ea5 ircd: Add a place for imports into namespace ircd. 2016-08-20 19:30:33 -07:00
Jason Volk a789f0d0ed Readd missing compile-time information as a CPPDEFINE. 2016-08-20 19:30:33 -07:00
Jason Volk 60c044d78a Fix redundant/conflicting namespace labels. 2016-08-20 19:30:33 -07:00
Jason Volk 39eebde589 Fix error on GCC-6 platform
error: invalid operands of types ‘__gnu_cxx::__enable_if<true, double>::__type
{aka double}’ and ‘int’ to binary ‘operator%’
2016-08-20 19:30:33 -07:00
Jason Volk fc4af83fdf Remove __unused macro. 2016-08-20 19:30:33 -07:00
Jason Volk 7405910c2e ircd: Add lex_cast/boost::lexical_cast util. 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 029a83a17d ircd: Update exception macro to ensure format string checks. 2016-08-20 19:30:32 -07:00
Jason Volk a1ee5034a2 Organize fs/path related into namespace. 2016-08-19 22:39:34 -07:00
Jason Volk 43575fff5b Add compile-time expression num_of<> for conforming enums. 2016-08-19 22:39:34 -07:00
Jason Volk dd270c9d78 Fix some typoed include guard/define names. 2016-08-19 22:39:34 -07:00