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

3359 commits

Author SHA1 Message Date
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
Jason Volk 90c9fe686e ircd: Namespace and partially modernize ircd::cache. 2016-08-19 22:39:34 -07:00
Jason Volk 31328e4759 Add missing RAII scope util. 2016-08-19 22:39:34 -07:00
Jason Volk 7d3e1e49a5 configure.ac: Fix CPPDEFINE error and improve boost check.
Require at least 1.56 for now... Testing of older versions is
needed once librb is replaced and we know what's needed.
2016-08-19 22:39:34 -07:00
Aaron Jones b17925378a
TLS Backends: Harmomise the rb_ssl_get_cipher() function
The GNUTLS backend reports the version in use for the client as well
as its ciphersuite -- do the same for the other 2 backends.
2016-08-20 04:18:23 +01:00
Aaron Jones b8ae64e7e0
GNUTLS: Avoid null dereference in constructing ciphersuite 2016-08-19 20:29:49 +00:00
Aaron Jones 292cefd2b5
GNUTLS: Cleanup fingerprint generation
Removes intermediate buffer, properly check return values
2016-08-19 19:18:34 +00:00
Aaron Jones a888b33274
README: Clarify that OpenSSL is not required for ECDHE 2016-08-15 10:53:34 +00:00
Aaron Jones ab96a37bfd
mkpasswd: use urandom for salts, cleanup
Using /dev/random for salt generation is pointless -- it can block, and
any extra randomness it would provide (which is debatable) is not needed,
as salts only need to be unique, not unpredictable.
2016-08-15 09:55:51 +00:00
Jason Volk db0a9e678a Merge pull request #209 from jevolk/master
ircd: Insert into ircd:: namespace.
2016-08-13 13:43:29 -07:00
Jason Volk a71a4551ae ircd: Insert into ircd:: namespace. 2016-08-13 02:43:42 -07:00
Jason Volk fa31c9c4cc appveyor: Disable PCH. 2016-08-13 02:43:41 -07:00
Jason Volk 0e62b5a91a Add PIC/PCH condition in stdinc.h. 2016-08-13 02:43:41 -07:00
Jason Volk 1ffc492c7f Don't care about missing declarations. 2016-08-13 02:43:41 -07:00
Jason Volk 3dafbeaf21 ircd: Convert defaults to constexprs.
Also cleanup unused defaults.
Also move single-use defaults to a tighter scope.
2016-08-13 02:43:41 -07:00
Jason Volk fb8792da3d ircd: Towards a comprehensive capability C -> C++ refactor. 2016-08-13 02:43:41 -07:00
Jason Volk 10946db85e Remove unused function prototype. 2016-08-12 17:02:37 -07:00
Jason Volk f6199d5d12 Reduce redundant includes. 2016-08-12 16:41:40 -07:00
Jason Volk f20b0f41a8 travis: Add webhook notification. 2016-08-12 15:23:41 -07:00
Jason Volk 5b85e8976b travis: Get newer GCC packages to support the clang-3.8 build. 2016-08-12 14:11:54 -07:00
Jason Volk 7ecb061e69 authd: Fix use after reference count decrement. 2016-08-12 14:11:54 -07:00
Aaron Jones 3fccd78d32
openssl: Avoid use-after-free when rehashing fails to load new files
Commit cf12678 introduced a fix for issue #186 by freeing the old SSL_CTX
structure before constructing a new one, which could disconnect existing
clients otherwise.

Unfortunately, the freeing is done first, which means that if setting up
a new structure fails for any reason, there will be no usable structures
left, but they are still referenced.

This fix moves the freeing to the end of the function, using intermediate
new variables in the meantime. This problem was discovered while testing
against OpenSSL 1.1.0 RC6.
2016-08-12 13:37:37 +00: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