degesch: add support for server passwords
This commit is contained in:
parent
4016c387f8
commit
0260fcd02e
|
@ -1319,6 +1319,10 @@ static struct config_schema g_config_server[] =
|
||||||
.comment = "Addresses of the IRC network (e.g. \"irc.net:6667\")",
|
.comment = "Addresses of the IRC network (e.g. \"irc.net:6667\")",
|
||||||
.type = CONFIG_ITEM_STRING_ARRAY,
|
.type = CONFIG_ITEM_STRING_ARRAY,
|
||||||
.validate = config_validate_addresses },
|
.validate = config_validate_addresses },
|
||||||
|
{ .name = "password",
|
||||||
|
.comment = "Password to connect to the server, if any",
|
||||||
|
.type = CONFIG_ITEM_STRING,
|
||||||
|
.validate = config_validate_nonjunk_string },
|
||||||
|
|
||||||
{ .name = "ssl",
|
{ .name = "ssl",
|
||||||
.comment = "Whether to use SSL/TLS",
|
.comment = "Whether to use SSL/TLS",
|
||||||
|
@ -3314,6 +3318,10 @@ irc_register (struct server *s)
|
||||||
const char *realname = get_config_string (s->config, "realname");
|
const char *realname = get_config_string (s->config, "realname");
|
||||||
hard_assert (nickname && username && realname);
|
hard_assert (nickname && username && realname);
|
||||||
|
|
||||||
|
const char *password = get_config_string (s->config, "password");
|
||||||
|
if (password)
|
||||||
|
irc_send (s, "PASS :%s", password);
|
||||||
|
|
||||||
irc_send (s, "NICK %s", nickname);
|
irc_send (s, "NICK %s", nickname);
|
||||||
// IRC servers may ignore the last argument if it's empty
|
// IRC servers may ignore the last argument if it's empty
|
||||||
irc_send (s, "USER %s 8 * :%s", username, *realname ? realname : " ");
|
irc_send (s, "USER %s 8 * :%s", username, *realname ? realname : " ");
|
||||||
|
|
Loading…
Reference in New Issue