Use libtls "compat" ciphers

irc.mozilla.org, using GnuTLS, doesn't support *any* of the "secure"
ciphers!
master
Curtis McEnroe 2018-08-02 23:59:41 -04:00
parent a5009665b0
commit d3e90b6cf2
No known key found for this signature in database
GPG Key ID: CEA2F97ADCFCD77C
1 changed files with 13 additions and 10 deletions

23
chat.c
View File

@ -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");