mirror of
https://github.com/weechat/weechat.git
synced 2026-06-25 12:26:40 +02:00
Added certificate management in SSL (connection now ok with SSL server)
This commit is contained in:
@@ -1,12 +1,12 @@
|
||||
WeeChat - Wee Enhanced Environment for Chat
|
||||
===========================================
|
||||
|
||||
ChangeLog - 2005-06-20
|
||||
ChangeLog - 2005-06-21
|
||||
|
||||
|
||||
Version 0.1.3 (under dev!):
|
||||
* kill command now received and displayed
|
||||
* SSL support (currently in development, NOT WORKING!)
|
||||
* added SSL support
|
||||
* channel notify levels are saved in config file (new option
|
||||
"server_notify_levels" for server sections)
|
||||
* part message now accepts %v (replaced by WeeChat version), like quit message
|
||||
|
||||
@@ -75,7 +75,7 @@ char *local_charset = NULL; /* local charset, for example: ISO-8859-1 */
|
||||
|
||||
int server_cmd_line; /* at least one server on WeeChat command line */
|
||||
|
||||
gnutls_anon_client_credentials gnutls_anoncred; /* gnutls client credentials */
|
||||
gnutls_certificate_credentials gnutls_xcred; /* gnutls client credentials */
|
||||
|
||||
|
||||
/*
|
||||
@@ -522,7 +522,8 @@ wee_init_vars ()
|
||||
|
||||
/* init gnutls */
|
||||
gnutls_global_init ();
|
||||
gnutls_anon_allocate_client_credentials (&gnutls_anoncred);
|
||||
gnutls_certificate_allocate_credentials (&gnutls_xcred);
|
||||
gnutls_certificate_set_x509_trust_file (gnutls_xcred, "ca.pem", GNUTLS_X509_FMT_PEM);
|
||||
}
|
||||
|
||||
/*
|
||||
@@ -616,7 +617,7 @@ wee_shutdown (int return_code)
|
||||
if (local_charset)
|
||||
free (local_charset);
|
||||
alias_free_all ();
|
||||
gnutls_anon_free_client_credentials (gnutls_anoncred);
|
||||
gnutls_certificate_free_credentials (gnutls_xcred);
|
||||
gnutls_global_deinit();
|
||||
exit (return_code);
|
||||
}
|
||||
|
||||
@@ -108,7 +108,7 @@
|
||||
extern int quit_weechat;
|
||||
extern char *weechat_home;
|
||||
extern char *local_charset;
|
||||
extern gnutls_anon_client_credentials gnutls_anoncred;
|
||||
extern gnutls_certificate_credentials gnutls_xcred;
|
||||
|
||||
extern void wee_log_printf (char *, ...);
|
||||
extern void wee_dump (int);
|
||||
|
||||
@@ -878,8 +878,7 @@ server_connect (t_irc_server *server)
|
||||
{
|
||||
int child_pipe[2], set;
|
||||
pid_t pid;
|
||||
const int proto_prio[] = { GNUTLS_TLS1, GNUTLS_SSL3, 0 };
|
||||
const int kx_prio[] = { GNUTLS_KX_ANON_DH, 0 };
|
||||
const int cert_type_prio[] = { GNUTLS_CRT_X509, GNUTLS_CRT_OPENPGP, 0 };
|
||||
|
||||
irc_display_prefix (server->buffer, PREFIX_INFO);
|
||||
gui_printf (server->buffer,
|
||||
@@ -904,9 +903,8 @@ server_connect (t_irc_server *server)
|
||||
return 0;
|
||||
}
|
||||
gnutls_set_default_priority (server->gnutls_sess);
|
||||
gnutls_protocol_set_priority (server->gnutls_sess, proto_prio);
|
||||
gnutls_kx_set_priority (server->gnutls_sess, kx_prio);
|
||||
gnutls_credentials_set (server->gnutls_sess, GNUTLS_CRD_ANON, &gnutls_anoncred);
|
||||
gnutls_certificate_type_set_priority (server->gnutls_sess, cert_type_prio);
|
||||
gnutls_credentials_set (server->gnutls_sess, GNUTLS_CRD_CERTIFICATE, gnutls_xcred);
|
||||
}
|
||||
|
||||
/* create pipe for child process */
|
||||
|
||||
+2
-2
@@ -145,9 +145,9 @@ struct t_irc_server
|
||||
char *nick3; /* 2nd alternate nickname */
|
||||
char *username; /* user name */
|
||||
char *realname; /* real name */
|
||||
char *command; /* command to run once connected */
|
||||
char *command; /* command to run once connected */
|
||||
int command_delay; /* delay after execution of command */
|
||||
char *autojoin; /* channels to automatically join */
|
||||
char *autojoin; /* channels to automatically join */
|
||||
int autorejoin; /* auto rejoin channels when kicked */
|
||||
char *notify_levels; /* channels notify levels */
|
||||
|
||||
|
||||
+2
-2
@@ -1,12 +1,12 @@
|
||||
WeeChat - Wee Enhanced Environment for Chat
|
||||
===========================================
|
||||
|
||||
ChangeLog - 2005-06-20
|
||||
ChangeLog - 2005-06-21
|
||||
|
||||
|
||||
Version 0.1.3 (under dev!):
|
||||
* kill command now received and displayed
|
||||
* SSL support (currently in development, NOT WORKING!)
|
||||
* added SSL support
|
||||
* channel notify levels are saved in config file (new option
|
||||
"server_notify_levels" for server sections)
|
||||
* part message now accepts %v (replaced by WeeChat version), like quit message
|
||||
|
||||
@@ -75,7 +75,7 @@ char *local_charset = NULL; /* local charset, for example: ISO-8859-1 */
|
||||
|
||||
int server_cmd_line; /* at least one server on WeeChat command line */
|
||||
|
||||
gnutls_anon_client_credentials gnutls_anoncred; /* gnutls client credentials */
|
||||
gnutls_certificate_credentials gnutls_xcred; /* gnutls client credentials */
|
||||
|
||||
|
||||
/*
|
||||
@@ -522,7 +522,8 @@ wee_init_vars ()
|
||||
|
||||
/* init gnutls */
|
||||
gnutls_global_init ();
|
||||
gnutls_anon_allocate_client_credentials (&gnutls_anoncred);
|
||||
gnutls_certificate_allocate_credentials (&gnutls_xcred);
|
||||
gnutls_certificate_set_x509_trust_file (gnutls_xcred, "ca.pem", GNUTLS_X509_FMT_PEM);
|
||||
}
|
||||
|
||||
/*
|
||||
@@ -616,7 +617,7 @@ wee_shutdown (int return_code)
|
||||
if (local_charset)
|
||||
free (local_charset);
|
||||
alias_free_all ();
|
||||
gnutls_anon_free_client_credentials (gnutls_anoncred);
|
||||
gnutls_certificate_free_credentials (gnutls_xcred);
|
||||
gnutls_global_deinit();
|
||||
exit (return_code);
|
||||
}
|
||||
|
||||
@@ -108,7 +108,7 @@
|
||||
extern int quit_weechat;
|
||||
extern char *weechat_home;
|
||||
extern char *local_charset;
|
||||
extern gnutls_anon_client_credentials gnutls_anoncred;
|
||||
extern gnutls_certificate_credentials gnutls_xcred;
|
||||
|
||||
extern void wee_log_printf (char *, ...);
|
||||
extern void wee_dump (int);
|
||||
|
||||
@@ -878,8 +878,7 @@ server_connect (t_irc_server *server)
|
||||
{
|
||||
int child_pipe[2], set;
|
||||
pid_t pid;
|
||||
const int proto_prio[] = { GNUTLS_TLS1, GNUTLS_SSL3, 0 };
|
||||
const int kx_prio[] = { GNUTLS_KX_ANON_DH, 0 };
|
||||
const int cert_type_prio[] = { GNUTLS_CRT_X509, GNUTLS_CRT_OPENPGP, 0 };
|
||||
|
||||
irc_display_prefix (server->buffer, PREFIX_INFO);
|
||||
gui_printf (server->buffer,
|
||||
@@ -904,9 +903,8 @@ server_connect (t_irc_server *server)
|
||||
return 0;
|
||||
}
|
||||
gnutls_set_default_priority (server->gnutls_sess);
|
||||
gnutls_protocol_set_priority (server->gnutls_sess, proto_prio);
|
||||
gnutls_kx_set_priority (server->gnutls_sess, kx_prio);
|
||||
gnutls_credentials_set (server->gnutls_sess, GNUTLS_CRD_ANON, &gnutls_anoncred);
|
||||
gnutls_certificate_type_set_priority (server->gnutls_sess, cert_type_prio);
|
||||
gnutls_credentials_set (server->gnutls_sess, GNUTLS_CRD_CERTIFICATE, gnutls_xcred);
|
||||
}
|
||||
|
||||
/* create pipe for child process */
|
||||
|
||||
@@ -145,9 +145,9 @@ struct t_irc_server
|
||||
char *nick3; /* 2nd alternate nickname */
|
||||
char *username; /* user name */
|
||||
char *realname; /* real name */
|
||||
char *command; /* command to run once connected */
|
||||
char *command; /* command to run once connected */
|
||||
int command_delay; /* delay after execution of command */
|
||||
char *autojoin; /* channels to automatically join */
|
||||
char *autojoin; /* channels to automatically join */
|
||||
int autorejoin; /* auto rejoin channels when kicked */
|
||||
char *notify_levels; /* channels notify levels */
|
||||
|
||||
|
||||
Reference in New Issue
Block a user