talons

Fork of Claws Mail https://www.claws-mail
Log | Files | Refs | README | LICENSE

ssl.h (1411B)


      1 /*
      2  * Claws Mail -- a GTK based, lightweight, and fast e-mail client
      3  * Copyright (C) 1999-2012 Hiroyuki Yamamoto and the Claws Mail team
      4  *
      5  * This program is free software; you can redistribute it and/or modify
      6  * it under the terms of the GNU General Public License as published by
      7  * the Free Software Foundation; either version 3 of the License, or
      8  * (at your option) any later version.
      9  *
     10  * This program is distributed in the hope that it will be useful,
     11  * but WITHOUT ANY WARRANTY; without even the implied warranty of
     12  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
     13  * GNU General Public License for more details.
     14  *
     15  * You should have received a copy of the GNU General Public License
     16  * along with this program. If not, see <http://www.gnu.org/licenses/>.
     17  *
     18  */
     19 
     20 #ifndef __SSL_H__
     21 #define __SSL_H__
     22 
     23 typedef enum {
     24 	SSL_NONE,
     25 	SSL_TUNNEL,
     26 	SSL_STARTTLS
     27 } SSLType;
     28 
     29 #include <glib.h>
     30 
     31 #include <gnutls/gnutls.h>
     32 #include <gnutls/x509.h>
     33 #include <gnutls/abstract.h>
     34 
     35 #include "socket.h"
     36 
     37 void ssl_init				(void);
     38 void ssl_done				(void);
     39 gboolean ssl_init_socket		(SockInfo	*sockinfo);
     40 void ssl_done_socket			(SockInfo	*sockinfo);
     41 
     42 typedef struct _SSLClientCertHookData SSLClientCertHookData;
     43 struct _SSLClientCertHookData
     44 {
     45 	const void *account;
     46 	const gchar *cert_path;
     47 	gchar *password;
     48 	gboolean is_smtp;
     49 };
     50 
     51 const gchar *claws_ssl_get_cert_file(void);
     52 
     53 #endif /* __SSL_H__ */