Use libtls "compat" ciphers
irc.mozilla.org, using GnuTLS, doesn't support *any* of the "secure" ciphers!weechat-hashes
parent
a5009665b0
commit
d3e90b6cf2
23
chat.c
23
chat.c
|
@ -60,6 +60,8 @@ static void uiInit(void) {
|
||||||
ui.input = newwin(2, COLS, LINES - 2, 0);
|
ui.input = newwin(2, COLS, LINES - 2, 0);
|
||||||
mvwhline(ui.input, 0, 0, ACS_HLINE, COLS);
|
mvwhline(ui.input, 0, 0, ACS_HLINE, COLS);
|
||||||
wmove(ui.input, 1, 0);
|
wmove(ui.input, 1, 0);
|
||||||
|
cbreak();
|
||||||
|
noecho();
|
||||||
}
|
}
|
||||||
|
|
||||||
static void uiDraw(void) {
|
static void uiDraw(void) {
|
||||||
|
@ -322,13 +324,22 @@ int main(int argc, char *argv[]) {
|
||||||
client.nick = strdup(buf);
|
client.nick = strdup(buf);
|
||||||
}
|
}
|
||||||
erase();
|
erase();
|
||||||
cbreak();
|
|
||||||
noecho();
|
|
||||||
|
|
||||||
uiInit();
|
uiInit();
|
||||||
uiChat("=== Traveling...");
|
uiChat("=== Traveling...");
|
||||||
uiDraw();
|
uiDraw();
|
||||||
|
|
||||||
|
struct tls_config *config = tls_config_new();
|
||||||
|
error = tls_config_set_ciphers(config, "compat");
|
||||||
|
if (error) errx(EX_SOFTWARE, "tls_config: %s", tls_config_error(config));
|
||||||
|
|
||||||
|
client.tls = tls_client();
|
||||||
|
if (!client.tls) errx(EX_SOFTWARE, "tls_client");
|
||||||
|
|
||||||
|
error = tls_configure(client.tls, config);
|
||||||
|
if (error) errx(EX_SOFTWARE, "tls_configure");
|
||||||
|
tls_config_free(config);
|
||||||
|
|
||||||
struct addrinfo *ai;
|
struct addrinfo *ai;
|
||||||
struct addrinfo hints = {
|
struct addrinfo hints = {
|
||||||
.ai_family = AF_UNSPEC,
|
.ai_family = AF_UNSPEC,
|
||||||
|
@ -345,14 +356,6 @@ int main(int argc, char *argv[]) {
|
||||||
if (error) err(EX_UNAVAILABLE, "connect");
|
if (error) err(EX_UNAVAILABLE, "connect");
|
||||||
freeaddrinfo(ai);
|
freeaddrinfo(ai);
|
||||||
|
|
||||||
client.tls = tls_client();
|
|
||||||
if (!client.tls) errx(EX_OSERR, "tls_client");
|
|
||||||
|
|
||||||
struct tls_config *config = tls_config_new();
|
|
||||||
error = tls_configure(client.tls, config);
|
|
||||||
if (error) errx(EX_OSERR, "tls_configure");
|
|
||||||
tls_config_free(config);
|
|
||||||
|
|
||||||
error = tls_connect_socket(client.tls, client.sock, host);
|
error = tls_connect_socket(client.tls, client.sock, host);
|
||||||
if (error) err(EX_PROTOCOL, "tls_connect");
|
if (error) err(EX_PROTOCOL, "tls_connect");
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue