Andrew Wilcox
4dc7383a2f
core/m_quit: Add AV2 description
2016-03-07 01:06:39 -06:00
Andrew Wilcox
25e38006db
core/m_part: Add AV2 description
2016-03-07 01:06:39 -06:00
Elizabeth Myers
d821282260
cap_server_time: update doodads for AV2
2016-03-07 01:05:24 -06:00
Elizabeth Myers
41fb059881
cap_account_tag: migrate CAP reg/desc to AV2
2016-03-07 01:02:08 -06:00
Andrew Wilcox
8661d5ae5c
core/m_message: Add AV2 description
2016-03-07 00:57:05 -06:00
Andrew Wilcox
ac1b809c5f
core/m_kill: Add AV2 description
2016-03-07 00:56:08 -06:00
Andrew Wilcox
33b2b6c1ab
core/m_kick: Add AV2 description
2016-03-07 00:55:36 -06:00
Andrew Wilcox
823ab5285f
core/m_join: Add AV2 description
2016-03-07 00:52:50 -06:00
Andrew Wilcox
8798744e50
core/m_die: Add AV2 description
2016-03-07 00:48:48 -06:00
Andrew Wilcox
65ca483f97
core/m_ban: Add AV2 description
2016-03-07 00:48:27 -06:00
William Pitcock
ccb75e917e
m_cap: use rb_snprintf_append() instead of pointer math
2016-03-07 00:13:54 -06:00
Elizabeth Myers
105a4985b4
Migrate remaining modules to AV2
...
No descriptions yet. :(
2016-03-07 00:03:39 -06:00
Elizabeth Myers
a4bf26dd34
Move irc_* data structures to librb.
...
This makes the base ircd less cluttered up with data structures that can
go elsewhere.
2016-03-06 14:17:19 -06:00
Elizabeth Myers
cbeab4bc34
Remove $Id tags from everything.
...
These are obsolete and none have changed since 10 years gao...
2016-03-06 02:47:27 -06:00
William Pitcock
c83f2f5e12
rename libratbox to librb, since its pretty modified anyway
2016-03-06 02:30:20 -06:00
Elizabeth Myers
1d91de8100
Remove old .indent.pro files
...
These have been unused since dinosaurs roamed the earth and are mostly
smelly old Hybrid relics.
2016-03-05 21:21:36 -06:00
William Pitcock
38ffccf8c3
cap: allow modules to return client-specific responses for capability inquiries
2016-03-05 18:56:36 -06:00
William Pitcock
9ea48ec30a
remove presupplied autotools files
2016-03-05 17:47:48 -06:00
William Pitcock
4c83e47679
invite: implement invite-notify support
2016-03-05 02:49:10 -06:00
William Pitcock
d058096aaa
invite: broadcast INVITE messages instead of using point to point routing, to facilitate invite-notify
2016-03-05 02:39:42 -06:00
Elizabeth Myers
e8f1c19e7b
parse: get rid of report_messages
...
It is a function with a single usage, that is used only for one specific
stats command on one line.
2016-03-05 00:55:33 -06:00
Simon Arlott
e9ffc3c153
ssld: provide version in stats S output
2016-03-03 22:14:50 +00:00
William Pitcock
08e43ffb21
connect: fix tmpport handling
2016-03-02 16:32:27 -06:00
Simon Arlott
035d9143bd
ircd: add missing sslproc function ssld_foreach_info()
...
Iterate through the ssl daemons and report their status.
2016-03-01 21:30:51 +00:00
William Pitcock
455d2750fc
cap: don't show orphaned capabilities
2016-02-28 19:15:13 -06:00
William Pitcock
6b23b98ab6
m_cap: ensure buffers are initialized properly
2016-02-28 18:49:29 -06:00
mniip
802710b59a
Always send the certificate fingerprint when doing SASL because the services might need it for SOME REASON
2016-02-29 03:29:08 +03:00
William Pitcock
ba316ed56c
cap: implicitly enable cap-notify on CAP LS 302, to MAKE IRC GREAT AGAIN!!!!oneoneone
2016-02-28 01:32:54 -06:00
William Pitcock
ddf62b10f9
m_cap: add support for CAP LS 302
2016-02-28 01:13:08 -06:00
William Pitcock
da3e5fcb42
sasl: implement support for distributing mechlists
2016-02-28 01:02:10 -06:00
William Pitcock
df06f4c920
cap server-time: add .000 for microsecs since our clock does not support microsecs
2016-02-28 00:40:46 -06:00
William Pitcock
193d4db30c
sasl: transfer ownership of 'sasl' capability to m_sasl module
2016-02-28 00:29:26 -06:00
William Pitcock
573896f639
send: allow passing NULL origin to build_msgbuf_from() (for future use)
2016-02-27 02:56:44 -06:00
William Pitcock
4bdf963cdc
modules: add cap_server_time, adding server-time cap support
2016-02-27 02:31:38 -06:00
William Pitcock
ed3853649d
starttls: add s_serv for caps
2016-02-27 01:51:58 -06:00
William Pitcock
0416a2cc86
starttls: take ownership of 'tls' capability
2016-02-27 01:45:40 -06:00
William Pitcock
32df5e96a6
cap: substantial rewrite leveraging the ircd capabilities framework for client caps
2016-02-27 01:41:36 -06:00
William Pitcock
63b9db9675
capability: allow attaching capability-owner data to a capability token, to enable extended data for client capabilities
2016-02-26 23:55:43 -06:00
William Pitcock
815fbc146f
modules/cap_account_tag: new module providing the account-tag cap as a proof of concept
2016-02-20 17:44:46 -06:00
William Pitcock
48a2b7c182
hook: allow hook_data to have non-const arguments, add hook_cdata for arguments that must be treated const
2016-02-20 17:44:13 -06:00
William Pitcock
ddedc60398
cap: register the account-tag capability
2016-02-20 17:26:35 -06:00
William Pitcock
c678fbc08b
ircd: remove broken USE_IODEBUG_HOOKS knob and related code
2016-02-20 12:02:49 -06:00
William Pitcock
7baa37a9ef
msg: remove last vestiges of the fakelag system. charybdis has never supported fakelag.
2016-02-19 16:43:39 -06:00
William Pitcock
428ca87b01
modules: chase MsgBuf API change
2016-02-10 20:54:17 -06:00
Simon Arlott
eb1b303d56
ircd: support restarting ssld processes
...
Add REHASH SSLD (admins only) that starts new sslds and marks the
existing ones as inactive until all their clients disconnect.
Very useful whenever the SSL library has a vulnerability because
new connections can use a new version of the library without
disconnecting existing clients/servers.
Add STATS S (admins only) to list ssld processes, status, and client
count.
2016-02-10 19:03:30 -06:00
William Pitcock
de50a480af
Remove unused .depend files.
2016-02-09 23:08:35 -06:00
Valerii Iatsko
5203cba5ce
Remove libratbox's snprintf.c, update related ircd code
2016-02-10 02:25:32 +01:00
William Pitcock
b47f8a4fda
ircd: import modified version of ratbox 3.1 whowas code
2016-01-23 11:16:34 -05:00
William Pitcock
b9a32bd24b
LIST: plug memory leak
2016-01-22 16:07:55 -05:00
William Pitcock
999fab778c
Revert "LIST: use new sendq system to reimplement SAFELIST differently."
...
This reverts commit e835592cfc
.
2016-01-20 22:26:55 -05:00
Jilles Tjoelker
6da38a0a5d
WHOIS: Make hide_opers_in_whois not affect opers doing whois.
2016-01-16 15:22:50 +01:00
William Pitcock
71c955336e
ircd: add general::hide_opers_in_whois to simulate ircd-seven operhide
2016-01-15 13:38:40 -06:00
William Pitcock
ea2d270096
STATS: allow modules to override normal stats requests
2016-01-14 06:57:04 -06:00
William Pitcock
3ee43bcf29
ircd: get_channel_access(): do not derive channel pointer from membership
2016-01-13 22:16:44 -06:00
William Pitcock
633531a4aa
TOPIC: strip channel topic colors here if configured, instead of in set_channel_topic()
2016-01-13 17:17:14 -06:00
William Pitcock
e4af89f4d7
Revert "LIST: since we now have channel::strip_topic_colors, don't unconditionally strip colors here anymore"
...
This reverts commit b28b21f6d5
.
2016-01-13 17:11:16 -06:00
William Pitcock
b28b21f6d5
LIST: since we now have channel::strip_topic_colors, don't unconditionally strip colors here anymore
2016-01-13 17:05:49 -06:00
William Pitcock
abad2c5da6
CONNECT: allow using 3-argument CONNECT with port == 0 locally ( closes #119 )
2016-01-12 05:54:04 -06:00
William Pitcock
cc7ae51cdc
Allow remote DIE and RESTART (from ircd-seven)
2016-01-12 00:04:54 -06:00
William Pitcock
3b1c2aa62c
modules: add missing m_grant.c
2016-01-11 23:52:04 -06:00
William Pitcock
a4721f5e9f
ircd: implement EXTENDCHANS, based on ircd-seven (with some improvements from chatircd)
2016-01-11 23:32:23 -06:00
William Pitcock
fe749d3709
ircd: implement GRANT subsystem based on ircd-seven
2016-01-11 23:02:03 -06:00
William Pitcock
b870a5f8e9
extensions/override: display mode-change string in override messages
2016-01-11 22:40:32 -06:00
William Pitcock
730b914c17
LIST: more cleanups
2016-01-09 23:34:52 -06:00
William Pitcock
e835592cfc
LIST: use new sendq system to reimplement SAFELIST differently.
...
This is more like ratbox, but with the same filtering etc. features, and also using the hard sendq limit.
2016-01-09 23:28:53 -06:00
William Pitcock
8dacf9e917
ircd: make STATS B easier to understand
2016-01-09 06:23:13 -06:00
William Pitcock
46be39faab
ircd: hash: use an irc_radixtree for storing resv's
2016-01-09 04:59:02 -06:00
William Pitcock
21d5a11cb8
ircd: irc_dictionary: also show dictionary stats
2016-01-09 01:34:37 -06:00
William Pitcock
99b461bb2f
ircd: ensure irc_dictionary users have names, for stats tracking.
2016-01-09 01:22:11 -06:00
William Pitcock
9e45a5ca19
buildsystem: further cleanup
2016-01-08 07:01:00 -06:00
William Pitcock
a886cb82fb
buildsystem: more LTDLINCL fixes
2016-01-08 06:57:45 -06:00
William Pitcock
f0718c93d5
configure: use correct path for libltdl
2016-01-08 06:50:01 -06:00
William Pitcock
1eeb046930
ircd: remove internal resolver, no longer used
2016-01-08 06:39:51 -06:00
William Pitcock
5164a68650
buildsystem: update Makefile.in's
2016-01-08 05:20:32 -06:00
Aaron Jones
d8c4154da2
Fix LTDL conditional, remove some unnecessary and/or ugly configure tests
2016-01-07 17:15:55 +00:00
William Pitcock
2a19fc3f57
general: remove last vestiges of static modules support (this hasn't ever actually worked...)
2016-01-06 01:28:20 -06:00
William Pitcock
46fded53d4
update buildsystem artifacts
2016-01-06 01:16:49 -06:00
William Pitcock
ff12cc9479
rename src to ircd, libcore to libircd
2016-01-06 01:16:08 -06:00
William Pitcock
bc38c72ced
buildsystem: build ircd itself as a library to allow removal of -undefined suppress on OS X
2016-01-05 21:31:21 -06:00
William Pitcock
c52df12552
buildsystem: convert to automake + libtool
2016-01-05 21:20:25 -06:00
William Pitcock
5810d36e0a
whois: privset disclosure: we do not need to check if source user is the same as target, because they will always be opered
2016-01-05 18:55:23 -06:00
William Pitcock
9e07c8f70b
whois: add a hook allowing for ShowChannel() behaviour to be overridden for channel visibility
2016-01-05 18:45:07 -06:00
Aaron Jones
5499771f0e
Fix erroneous comment
2016-01-01 09:31:55 +00:00
Aaron Jones
0e06053c33
Fix erroneous use of wrong string concatenation function
...
Avoids warning:
m_map.c:203:3: warning: implicit declaration of function ‘strlcat’
[-Wimplicit-function-declaration]
2015-12-30 08:34:27 +00:00
Mantas Mikulėnas
2b17787939
m_starttls: reject "STARTTLS" use over an existing TLS connection
2015-12-30 09:28:53 +02:00
Jilles Tjoelker
f8d9a4c289
list: Remove a now obsolete comment.
2015-12-29 13:55:16 +01:00
William Pitcock
4d38dd60ed
whois: bring permissions check in line with the same one in m_privs
2015-12-28 14:55:59 -06:00
Valentin Lorentz
d855e13e01
Remove trailing space in CAP ACK.
...
Fixes https://github.com/atheme/charybdis/issues/110
2015-12-28 10:57:17 +01:00
William Pitcock
e00552d5ce
whois: cosmetic improvement to opered-as numeric
2015-12-28 01:38:13 -06:00
William Pitcock
72ad5c04fe
whois: list active operator block and privset when appropriate
2015-12-28 01:33:09 -06:00
William Pitcock
c7b2fd3d66
MODE: allow 'q' banlist queries to bypass flood limits too
2015-12-28 00:48:46 -06:00
William Pitcock
0b904d91bf
supported: move ISUPPORT tokens provided by modules to their specific modules:
...
- m_cmessage: CPRIVMSG/CNOTICE
- m_etrace: ETRACE
- m_knock: KNOCK
- m_services: FNC
- m_who: WHOX
2015-12-26 22:41:09 -06:00
William Pitcock
d513218a9e
LIST: allow channel display threshold to be configured ( closes #109 )
2015-12-26 22:23:28 -06:00
Jilles Tjoelker
e124e4b64c
starttls: Update for client fd hash removal.
2015-12-24 23:01:37 +01:00
Jilles Tjoelker
2d28539c68
Reduce clean_nick() code duplication further.
...
Side effect: hurt and monitor now allow nicks starting with a digit.
2015-12-13 00:22:21 +01:00
William Pitcock
e1fda0d81e
map: make flatten_links dump a flattened map instead of blocking it ( closes #48 )
...
based on my patches in shadowircd legacy (4.0)
2015-12-12 09:24:37 -06:00
William Pitcock
413c61aaf5
monitor: ensure monitored nicknames are valid (ref. elemental-ircd/elemental-ircd#187 )
2015-12-12 08:42:03 -06:00
William Pitcock
72dee03d50
clean up some code duplication when checking nicks for validity
2015-12-12 08:41:09 -06:00
William Pitcock
63eb8567cb
implement configurable channel modes ( closes #31 )
...
While functionally compatible with the implementation in ElementalIRCd, our approach is different,
specifically pre-calculating the bitmask at config load time. This is more efficient, and allows us
to report errors as part of the configuration phase.
2015-12-11 15:36:53 -06:00
William Pitcock
427a8d5dbb
WHOIS: use cipher string if available
2015-12-11 08:20:11 -06:00
William Pitcock
202d496644
override: only engage override code if we're needing to authorize a WRITE to a channel's state ( closes #65 )
2015-12-10 01:00:32 -06:00
William Pitcock
a7433e330a
m_message: use same behaviour for +R users as +g users ( closes #96 )
2015-12-05 06:48:38 -06:00
William Pitcock
4a5330bb4d
cap: implement ircv3.2 chghost cap
2015-11-19 22:53:55 -06:00
William Pitcock
583f064fef
send: add negation argument to sendto_common_channels_local() and friends
2015-11-19 22:43:45 -06:00
William Pitcock
e77879b0f6
modules/m_resv: update comments since parv[0] is not used anymore
2015-11-19 17:12:07 -06:00
Jilles Tjoelker
439bf4db58
monitor: Show 005 entry only if m_monitor.so is actually loaded.
...
This only affects the MONITOR=<max> entry, not TARGMAX=...,MONITOR:
which is harder to modify from a module.
2015-11-15 22:57:23 +01:00
Andrew Wilcox
5f8fb56d02
Revert "remove MONITOR for now pending a complete rewrite"
...
This reverts commit 87fa262fec
.
2015-10-15 17:31:55 -05:00
William Pitcock
87fa262fec
remove MONITOR for now pending a complete rewrite
2015-10-15 09:39:48 -05:00
William Pitcock
7485e86073
monitor: additional cleanups, and add a missing free_monitor() in m_monitor
2015-10-11 19:11:01 -05:00
Jilles Tjoelker
2125182293
Remove the unneeded username parameter to register_local_user().
2015-09-13 22:59:03 +02:00
Elizabeth Myers
34c10ca8b7
Relocate report_Klines to proper home
...
This function is not used anywhere else but m_stats, so should be put
there.
2015-08-08 17:25:29 -05:00
Jail Bird
29c92cf95f
Spring cleaning redux:
...
- Implemented changes suggested by Jilles
- Remove some unused parameters in functions
- Remove some unused ssl procs
- 63-bit time_t support in TS deltas
- const char * vs char * cleanup
- struct alignment (void *) casts
- signed vs unsigned fixes
- bad memset() call
- Bad LT_MAIN in libratbox
- char -> unsigned char casts for isdigit/isspace/etc calls
Thanks Jilles!
2015-04-20 00:55:20 -05:00
Aaron Jones
cf3b152547
INFO: Be easier on human eyes
2015-03-26 14:47:36 -05:00
Aaron Jones
c9b5cd623b
Remove network_desc configuration option, never actually used anywhere
2015-03-26 14:46:54 -05:00
William Pitcock
7dade6a811
cap: missed a spot on =sticky caps removal
2015-03-22 21:08:05 -05:00
William Pitcock
aaaf9faf1d
cap: sasl is now enforced as sticky again
2015-03-10 08:21:46 -05:00
William Pitcock
eafae32681
cap: chase ircv3.2 interpretation of sticky/ack-required caps (basically dropping support other than serverside enforcement of stickyness)
...
change request @ ircv3/ircv3-specifications#122
2015-03-10 08:21:10 -05:00
Mantas Mikulėnas
6fb9f21449
sasl: reformat the other messages consistently
2015-03-06 17:19:16 +02:00
Mantas Mikulėnas
1cae2411d7
sasl: adjust 'H' message following commit 7d33cce8ef
2015-03-06 17:18:54 +02:00
Jilles Tjoelker
9279ad6461
Fix some compiler warnings about signed/unsigned comparison.
2015-03-01 23:46:20 +01:00
Jilles Tjoelker
dafbd7faba
cap-notify: Fix possible crash on 64-bit systems.
...
find_named_client() was called without a prototype and therefore the
pointer could be truncated.
2015-03-01 15:00:52 +01:00
Max Teufel
bbce62d2aa
m_cap: do not allow sasl CAP when the agent is offline
2015-03-01 03:30:19 -06:00
William Pitcock
125652041b
cap-notify: implement cap-notify for sasl service ( closes #84 )
2015-03-01 00:58:40 -06:00
William Pitcock
13de708352
cap-notify: add cap-notify cap
2015-03-01 00:26:23 -06:00
William Pitcock
8f05076d50
sasl: making the sasl capability actually sticky seems incompatible with broken implementations, so we make it just a formality instead.
2015-03-01 00:22:50 -06:00
William Pitcock
c23902ae00
sasl: fix null deref on remote client exit
2015-03-01 00:01:24 -06:00
William Pitcock
8bb9594bf3
sasl: ircv3 wg decided sasl capability should be sticky (ref ircv3/ircv3-specifications#103 )
2015-02-28 01:12:25 -06:00
Max Teufel
1b54aa5c3b
src/channel: add support for IRCv3.2 userhost-in-names
2015-02-28 01:06:38 -06:00
William Pitcock
6e3d57dc6b
cap: remove SASL_REAUTH capability
2015-02-28 01:01:08 -06:00
William Pitcock
51535fcbce
sasl: allow reauth without sasl-reauth capability (since it's being dropped)
2015-02-28 00:48:43 -06:00
William Pitcock
dd28e3f2a4
Merge pull request #82 from grawity/sasl-send-conn-info
...
m_sasl: send information about the client connection
2015-02-18 12:29:57 -06:00
William Pitcock
95cce5f358
Revert "m_invite: add support for CAP invite-notify"
...
This reverts commit 93eb76cc32
.
2015-02-16 17:50:51 -06:00
Max Teufel
93eb76cc32
m_invite: add support for CAP invite-notify
...
Specification:
<https://github.com/ircv3/ircv3-specifications/blob/master/extensions/invite-notify-3.2.md >
2015-02-16 15:40:34 -06:00
William Pitcock
c6bc97fdcd
m_sasl: move some struct members around for sasl-reauth
2015-02-16 15:39:36 -06:00
William Pitcock
3a48406b55
cap: fix compile
2015-02-15 17:40:20 -06:00
William Pitcock
ef3ab8e3a5
cap: allow clients to do sasl reauth if they requested sasl and sasl-reauth (ref ircv3/ircv3#103 ).
2015-02-15 17:11:28 -06:00
William Pitcock
0044d40050
cap: add notion of required dependency caps
2015-02-15 17:11:28 -06:00
Max Teufel
7d33cce8ef
m_sasl: add configuration option for the nick of the SASL agent
...
This allows multiple improvements to m_sasl. With this change, the SASL
authentication gets aborted immediately when services are offline.
Additionally, we send the SASL ENCAP messages directly to the specified
SASL agent.
2015-02-14 20:31:25 +01:00
Jilles Tjoelker
f51b72de97
Ignore duplicate USER and PASS.
...
If SASL starts using USER/PASS for unregistered clients, this change stops
users from using one USER/PASS for SASL while using another for connecting.
2015-02-13 23:07:02 +01:00
Mantas Mikulėnas
a3fa9d81a2
m_sasl: send information about the client connection
2015-02-13 22:38:24 +02:00
William Pitcock
bc75c3ae0e
fix target list generation edge case where WALLCHOPS was requested alongside normal users if the source user was not a channel op.
...
from ircd-hybrid r5457
2015-02-09 11:16:06 -06:00
Attila Molnar
407094721c
SJOIN: Remove some dead code
2015-01-30 14:42:08 +01:00
Jilles Tjoelker
2a17ae5483
ban: Fix build breakage.
...
A normal 'make' did not rebuild m_ban.c even though dependencies had
changed.
2014-09-21 18:28:24 +02:00
Jilles Tjoelker
dc336d1a63
server: Remove two dead stores.
2014-09-21 15:16:56 +02:00
Jilles Tjoelker
483987a464
Explicitly pass the current time to deactivate_conf().
...
Some places depend on the ban not being destroyed.
2014-09-21 15:02:43 +02:00
Keith Buck
8db50c03e6
BAN: Don't schedule check_klines for 0 seconds in the future.
...
When receiving bans from a bursting server, if kline_delay is set to 0
(the default), rb_event_addonce will be called to schedule an event for
0 seconds in the future. While this works fine for the fallback
rb_event_run function, the epoll implementation ends up scheduling a
timerfd for the event in the past, which is then never executed.
While fixing this, I also made rb_event_add and rb_event_addonce reject
attempts to add events scheduled for 0 seconds in the future; they're
instead rewritten to run 1 second in the future.
2014-08-17 09:06:01 +00:00
Jilles Tjoelker
b733b9faf4
SJOIN: Fix crash when both mode parameter and UID list are missing.
...
Closes #63
2014-08-15 17:10:24 +02:00
Mantas Mikulėnas
c72f15bcf5
m_version: remove spaces from version string
...
"to make it machine parseable again", as in ircd-seven commit 03b2176b88a1.
2014-05-06 16:28:23 +03:00
Mantas Mikulėnas
0f4ed4058d
m_version: display charybdis version in /version
...
Otherwise it just crashes when /version is used.
Closes : #60
2014-05-06 16:27:03 +03:00
Jilles Tjoelker
bf77c3a1ef
info: Change N-line to connect block.
2014-04-27 15:33:09 +02:00