diff options
| -rw-r--r-- | chat.c | 3 | ||||
| -rw-r--r-- | chat.h | 1 | ||||
| -rw-r--r-- | irc.c | 5 | 
3 files changed, 7 insertions, 2 deletions
@@ -53,8 +53,9 @@ int main(int argc, char *argv[]) {  	setlocale(LC_CTYPE, "");  	int opt; -	while (0 < (opt = getopt(argc, argv, "NPRa:h:j:k:l:n:p:r:u:vw:"))) { +	while (0 < (opt = getopt(argc, argv, "!NPRa:h:j:k:l:n:p:r:u:vw:"))) {  		switch (opt) { +			break; case '!': self.insecure = true;  			break; case 'N': self.notify = true;  			break; case 'P': self.nick = prompt("Name: ");  			break; case 'R': self.limit = true; @@ -34,6 +34,7 @@ typedef unsigned uint;  typedef unsigned char byte;  struct { +	bool insecure;  	char *host;  	char *port;  	char *auth; @@ -42,6 +42,10 @@ int ircConnect(void) {  	if (!client) errx(EX_SOFTWARE, "tls_client");  	error = tls_configure(client, config); +	if (self.insecure) { +		tls_config_insecure_noverifycert(config); +		tls_config_insecure_noverifyname(config); +	}  	if (error) errx(EX_SOFTWARE, "tls_configure: %s", tls_error(client));  	tls_config_free(config); @@ -58,7 +62,6 @@ int ircConnect(void) {  	for (struct addrinfo *ai = head; ai; ai = ai->ai_next) {  		sock = socket(ai->ai_family, ai->ai_socktype, ai->ai_protocol);  		if (sock < 0) err(EX_OSERR, "socket"); -  		error = connect(sock, ai->ai_addr, ai->ai_addrlen);  		if (!error) break;  | 
