Changeset 5431:fe615fd5e0de

Show
Ignore:
Timestamp:
2008-06-28 18:44:10 (5 months ago)
Author:
Brendan Cully <brendan@…>
Branch:
HEAD
Message:

Basic support for $ssl_client_cert when compiled with gnutls.
The key must not be encrypted. Closes #2911.

Files:
6 modified

Legend:

Unmodified
Added
Removed
  • ChangeLog

    r5429 r5431  
    1 2008-06-26 12:47 -0700  Brendan Cully  <brendan@kublai.com>  (be7e07963099) 
     12008-06-27 12:04 -0700  Petr Písař  <petr.pisar@atlas.cz>  (40c6e851bf76) 
     2 
     3        * po/cs.po: Updated Czech translation. 
     4 
     52008-06-26 12:52 -0700  Brendan Cully  <brendan@kublai.com>  (c5256c65eedb) 
     6 
     7        * handler.c: Mark new error message for translation. 
    28 
    39        * curs_lib.c: Force a resize event after calling an external editor. 
  • UPDATING

    r5406 r5431  
    77hg tip: 
    88 
     9  + $ssl_client_cert available with gnutls as well as openssl 
    910  + 'mime_lookup application/octet-stream' added to system Muttrc 
    1011 
  • globals.h

    r5343 r5431  
    128128#if defined(USE_SSL) 
    129129WHERE char *SslCertFile INITVAL (NULL); 
    130 #endif 
     130WHERE char *SslClientCert INITVAL (NULL); 
    131131#ifdef USE_SSL_OPENSSL 
    132 WHERE char *SslClientCert INITVAL (NULL); 
    133132WHERE LIST *SslSessionCerts INITVAL (NULL); 
    134133#endif 
    135 #if defined(USE_SSL) 
    136134WHERE char *SslEntropyFile INITVAL (NULL); 
    137 #endif 
    138135#ifdef USE_SSL_GNUTLS 
    139136WHERE short SslDHPrimeBits; 
    140137WHERE char *SslCACertFile INITVAL (NULL); 
     138#endif 
    141139#endif 
    142140WHERE char *StChars; 
  • init.h

    r5424 r5431  
    19961996   
    19971997#if defined(USE_SSL) 
    1998 #ifdef USE_SSL_OPENSSL 
    19991998  { "ssl_client_cert", DT_PATH, R_NONE, UL &SslClientCert, 0 }, 
    20001999  /* 
     
    20032002  ** key. 
    20042003  */ 
    2005 #endif /* USE_SSL_OPENSSL */ 
    20062004  { "ssl_force_tls",            DT_BOOL, R_NONE, OPTSSLFORCETLS, 0 }, 
    20072005  /* 
  • mutt_sasl.c

    r5368 r5431  
    385385  ACCOUNT* account = (ACCOUNT*) context; 
    386386 
     387  if (!result) 
     388    return SASL_FAIL; 
     389 
    387390  *result = NULL; 
    388391  if (len) 
  • mutt_ssl_gnutls.c

    r5363 r5431  
    200200  } 
    201201 
    202 /* 
    203   gnutls_set_x509_client_key (data->xcred, "", ""); 
    204   gnutls_set_x509_cert_callback (data->xcred, cert_callback); 
    205 */ 
     202  if (SslClientCert) 
     203  { 
     204    dprint (2, (debugfile, "Using client certificate %s\n", SslClientCert)); 
     205    gnutls_certificate_set_x509_key_file (data->xcred, SslClientCert, 
     206                                          SslClientCert, GNUTLS_X509_FMT_PEM); 
     207  } 
    206208 
    207209  gnutls_init(&data->state, GNUTLS_CLIENT);