2874 Commits

Author SHA1 Message Date
Peter Powell
6844ce1587 Fix building against older versions of glibc. 2019-05-06 01:57:26 +01:00
Robby
e57d1b19ff Textual improvements and fixes such as typos, casing, etc. (#1612) 2019-04-28 09:14:21 +01:00
Peter Powell
329cb42190 Bump the API revision for the previous commits. 2019-04-19 13:47:36 +01:00
Peter Powell
15bb93a4ea Remove the OnNamesListItem event out of the core. 2019-04-19 11:51:42 +01:00
Peter Powell
2cd6efcc64 Rename HasPermission to HasCommandPermission. 2019-04-19 10:05:06 +01:00
Peter Powell
21f0718c4a Remove the 'noisy' mode for HasPrivPermission.
This was only used in one place.
2019-04-19 00:39:57 +01:00
Peter Powell
14e1d1f844 Replace the geoip module with geo_maxmind, geoban, and geoclass.
MaxMind have EOL'd the library that the geoip module uses and have
replaced it with libmaxminddb.

The geoip module has been split into geo_maxmind which provides
geolocation data, geoban which provides location-based channel
bans, and geoclass which is used to filter a user into a connect
class based on location.
2019-04-15 19:08:22 +01:00
Peter Powell
7c8e2990a1 Bump the API revision for the previous commit. 2019-04-15 12:24:13 +01:00
Peter Powell
c2c4de7267 Fix linking servers with UNIX sockets.
- Remove the address/port overloads of BeginConnect.
- Change DoConnect to take a sockaddrs instead of an address/port.
2019-04-15 12:21:12 +01:00
Peter Powell
b00451a85c Fix various typos. 2019-04-04 14:36:45 +01:00
Peter Powell
656ce184b9 Bump the API revision for the previous commit. 2019-04-04 12:27:56 +01:00
Peter Powell
be0c809590 Document OnUserInit properly and add OnUserPostInit. 2019-04-04 12:27:56 +01:00
Peter Powell
bdded70ac2 Rename OnClientProtocolPopulateTags to OnPopulateTags. 2019-03-30 11:53:51 +00:00
linuxdaemon
1003c593bf Rename GetFlagIndex -> GetFieldIndex 2019-03-12 17:14:53 +00:00
linuxdaemon
dfb1e0da78 Add Who::Request::GetFlagIndex to get field index
Replaces the dirty logic in m_hideoper and m_namesx
2019-03-12 17:14:53 +00:00
Matt Schatz
9b25df3109 Improve the handling of config X-lines and filters. (#1583) 2019-02-22 13:44:57 +00:00
Peter Powell
c495b5d9cf Implement support for IRCv3 client-to-client tags. 2019-02-19 22:53:15 +00:00
Peter Powell
74136695f8 Fix erasing event subscribers erasing all with the same priority. 2019-02-19 20:59:04 +00:00
Peter Powell
f06502606e Allow customising ElementComp in flat_{map,multimap,multiset,set}. 2019-02-19 20:58:53 +00:00
Matt Schatz
e02c22ff16 Add a function for displaying human-readable durations.
Add InspIRCd::DurationString() to take a time_t and return a string
with the duration in a human-readable format (ex: 1y20w2d3h5m9s).
2019-02-18 09:17:38 +00:00
Robby
21e7efdadf Various text improvements: consistency, syntax, help and doc updates/fixes. 2019-02-18 09:15:56 +00:00
Peter Powell
a7fc2fe0dc Replace GetServerPort() with server_sa.port(). 2019-02-15 11:35:25 +00:00
Peter Powell
168ee80490 Rename User::nping to nextping for consistency with lastping. 2019-02-15 11:35:25 +00:00
Peter Powell
f5b2265c2e Refactor UserManager::DoBackgroundUserStuff(). 2019-02-15 11:35:24 +00:00
Peter Powell
ebb3258ff4 WriteNeighborsWithCap: add the ability to send to the origin user. 2019-02-14 14:40:12 +00:00
Peter Powell
499121036c Add irc::sockets::untosa() for creating AF_UNIX sockaddrs.
Also fix an overly long albeit harmless memcpy when creating UNIX
socket listeners. Thanks to @psychon for reporting this.
2019-02-07 15:38:44 +00:00
Peter Powell
785f3a2866 Document OnUserWrite. 2019-02-07 11:56:53 +00:00
linuxdaemon
d4a1ea7045 Expand searching in m_httpd_stats, add global handling of GET parameters (#1566) 2019-02-06 10:33:06 +00:00
Peter Powell
a638de7715 Release v3.0.0 release candidate 2. 2019-02-06 10:02:31 +00:00
Peter Powell
bf046f87c8 Delete the old broken test suite.
This doesn't work properly and is disabled in both debug & release
builds. It will be resurrected with a proper unit testing framework
in the future.
2019-02-05 17:11:54 +00:00
Peter Powell
8d87fa3837 DLLManager: add a function for retrieving a symbol. 2019-02-04 23:37:54 +00:00
linuxdaemon
2ee2e8b60d Allow multiple fingerprints in an oper block (#1564) 2019-02-01 09:47:20 +00:00
B00mX0r
e844a2cef9 Fix a minor typo in ssl.h 2019-02-01 09:43:32 +00:00
Peter Powell
18678c6a22 Add ParamMode::IsParameterSecret and remove special casing of keys. 2019-01-28 17:26:15 +00:00
Peter Powell
874ce50b8d Add overloads for ConvToNum to prevent (unsigned) char weirdness. 2019-01-28 11:08:19 +00:00
Peter Powell
961109ae4f Remove trailing whitespace from various source files. 2019-01-24 22:18:22 +00:00
Peter Powell
dba2cddc46 Fix overriding <options:exemptchanops> with the exemptchanops mode.
Closes #1558.
2019-01-24 18:03:12 +00:00
Peter Powell
3b39a88fdf Fix a minor Doxygen warning. 2019-01-24 17:15:13 +00:00
Matt Schatz
d5b50d9ed1 Add the reason to xline removal notices. (#1545)
Show the reason in manual xline removal SNOTICEs, just like
expiry SNOTICEs do.

This modifies XLineManager::DelLine() to require another string
reference passed to it.

Requested by @Robby-.
2019-01-24 16:01:56 +00:00
Peter Powell
4047a143fc Move the <disabled> tag out of the core to a new module. 2019-01-24 15:10:02 +00:00
Peter Powell
cbef0241a0 Implement support for the extended tag space for client tags. 2019-01-24 14:28:21 +00:00
Peter Powell
965c81baee Rename OnClientProtocolProcessTag to OnProcessTag. 2019-01-22 12:09:28 +00:00
linuxdaemon
f400d5f394 Redo OnSetEndPoint logic to fix duplicate clones (#1549). 2019-01-14 11:48:45 +00:00
Matt Schatz
f2e3fd5952 Improve X-line text consistency.
- Change any "-Line", ":Line", or "*line" to "-line" throughout
the X-line code, comments, and documentation.
- Add periods to the end of some notices.
- Correct a typo in the Q-line code comments.
- Update the filter module documentation (shun addition).

Co-authored-by: Robby <robby@chatbelgie.be>
2019-01-09 10:07:09 +00:00
Peter Powell
f4041a13c3 Release v3.0.0 release candidate 1. 2019-01-07 22:41:54 +00:00
linuxdaemon
b6ca49a232 Add the ability to disable console colors in stdout logging (#1539). 2019-01-03 13:17:23 +00:00
Peter Powell
aafc03bdfc Fix message tags not being broadcast across the network. 2019-01-02 20:28:46 +00:00
linuxdaemon
7530285740 Only parse valid durations, don't treat invalid multipliers as seconds (#1538) 2018-12-21 19:37:22 +01:00
Peter Powell
36da0833c5 Add the <maxlist> tag and switch ListModeBase to always use it.
The old method of doing this was:

1. Extremely inconsistently used. Some list modes used <banlist>
   and some used their own config tag.
2. Not documented in the slightest. There was a small reference to
   <maxbans> for the ban mode but nothing else.
3. In some cases conflicting with other config tags. The chanfilter
   module defined a <chanfilter> tag for general config whilst also
   using it for the max list settings.

The new <maxlist> tag avoids these issues entirely.
2018-12-19 09:02:09 +00:00
Peter Powell
8ec9a73a91 Fix ParamModeBase::OnUnset() not being virtual.
Closes #1536.
2018-12-16 01:41:47 +00:00