aboutsummaryrefslogtreecommitdiffstats
path: root/irc.h
diff options
context:
space:
mode:
authordequis <dx@dxzone.com.ar>2015-09-11 19:07:10 -0300
committerdequis <dx@dxzone.com.ar>2015-10-08 05:34:18 -0300
commit58b63de6f1dd84a4923c623dafd548512ecdf054 (patch)
treec6ded487de0a9538b412819b3f24f6925a3c1135 /irc.h
parent2f736927554d588d00d31f367cd07b9845036e09 (diff)
IRCv3 SASL capability + PLAIN method
Only plain, no other methods. We don't have built-in SSL to implement EXTERNAL (certfp) and nothing else is worth implementing. The actual authentication is pretty much like sending a server password (when the server's authmode isn't closed), which means it happens in cmd_identify, but this code also calls storage_check_pass() to send the required success/failure replies. SASL doesn't give us much benefit other than standards compliance, but some clients might appreciate it. And having a fifth way to do the same thing doesn't hurt! Now we have: - identify in &bitlbee - identify to nickserv (alias for root) - 'nickserv' and 'ns' irc commands - server password - sasl plain
Diffstat (limited to 'irc.h')
-rw-r--r--irc.h2
1 files changed, 2 insertions, 0 deletions
diff --git a/irc.h b/irc.h
index 4be7ce7e..f2df3b2e 100644
--- a/irc.h
+++ b/irc.h
@@ -49,6 +49,7 @@ typedef enum {
USTATUS_SHUTDOWN = 8, /* Now used to indicate we're shutting down.
Currently just blocks irc_vawrite(). */
USTATUS_CAP_PENDING = 16,
+ USTATUS_SASL_PLAIN_PENDING = 32,
/* Not really status stuff, but other kinds of flags: For slightly
better password security, since the only way to send passwords
@@ -66,6 +67,7 @@ typedef enum {
} irc_status_t;
typedef enum {
+ CAP_SASL = (1 << 0),
CAP_MULTI_PREFIX = (1 << 1),
} irc_cap_flag_t;