Ticket #250: 220-allow-polarssl-1.2.3.patch

File 220-allow-polarssl-1.2.3.patch, 2.3 KB (added by MaxMuster, 11 years ago)

Patch for OpenVPN 2.3.0 to use polarssl 1.2.3, including "blowfish" as default cipher

  • src/openvpn/crypto_polarssl.h

     
    6060#define OPENVPN_MODE_OFB        POLARSSL_MODE_OFB
    6161
    6262/** Cipher is in CFB mode */
     63#if POLARSSL_VERSION_NUMBER < 0x01020000
    6364#define OPENVPN_MODE_CFB        POLARSSL_MODE_CFB128
     65#else
     66#define OPENVPN_MODE_CFB        POLARSSL_MODE_CFB
     67#endif
    6468
    6569/** Cipher should encrypt */
    6670#define OPENVPN_OP_ENCRYPT      POLARSSL_ENCRYPT
  • src/openvpn/ssl_polarssl.c

     
    6767
    6868static int default_ciphersuites[] =
    6969{
     70#if POLARSSL_VERSION_NUMBER >= 0x01020000
     71    TLS_DHE_RSA_WITH_AES_256_CBC_SHA,
     72    TLS_DHE_RSA_WITH_CAMELLIA_256_CBC_SHA,
     73    TLS_DHE_RSA_WITH_AES_128_CBC_SHA,
     74    TLS_DHE_RSA_WITH_CAMELLIA_128_CBC_SHA,
     75    TLS_DHE_RSA_WITH_3DES_EDE_CBC_SHA,
     76    TLS_RSA_WITH_AES_256_CBC_SHA,
     77    TLS_RSA_WITH_CAMELLIA_256_CBC_SHA,
     78    TLS_RSA_WITH_AES_128_CBC_SHA,
     79    TLS_RSA_WITH_CAMELLIA_128_CBC_SHA,
     80    TLS_RSA_WITH_3DES_EDE_CBC_SHA,
     81    TLS_RSA_WITH_RC4_128_SHA,
     82    TLS_RSA_WITH_RC4_128_MD5,
     83#else
    7084    SSL_EDH_RSA_AES_256_SHA,
    7185    SSL_EDH_RSA_CAMELLIA_256_SHA,
    7286    SSL_EDH_RSA_AES_128_SHA,
     
    7993    SSL_RSA_DES_168_SHA,
    8094    SSL_RSA_RC4_128_SHA,
    8195    SSL_RSA_RC4_128_MD5,
     96#endif
    8297    0
    8398};
    8499
     
    515530      ssl_set_rng (ks_ssl->ctx, ctr_drbg_random, rand_ctx_get());
    516531
    517532      ALLOC_OBJ_CLEAR (ks_ssl->ssn, ssl_session);
     533#if  POLARSSL_VERSION_NUMBER < 0x01020000
    518534      ssl_set_session (ks_ssl->ctx, 0, 0, ks_ssl->ssn );
     535#endif
    519536      if (ssl_ctx->allowed_ciphers)
    520537        ssl_set_ciphersuites (ks_ssl->ctx, ssl_ctx->allowed_ciphers);
    521538      else
     
    828845                    ssl_get_version (ks_ssl->ctx),
    829846                    ssl_get_ciphersuite(ks_ssl->ctx));
    830847
     848#if POLARSSL_VERSION_NUMBER >= 0x01020000
     849  cert = ks_ssl->ssn->peer_cert;
     850#else
    831851  cert = ks_ssl->ctx->peer_cert;
     852#endif
    832853  if (cert != NULL)
    833854    {
    834855      openvpn_snprintf (s2, sizeof (s2), ", " counter_format " bit RSA", (counter_type) cert->rsa.len * 8);
  • src/openvpn/options.c

     
    827827  o->server_poll_timeout = 0;
    828828#endif
    829829#ifdef ENABLE_CRYPTO
     830#ifdef ENABLE_CRYPTO_POLARSSL
     831  o->ciphername = "BLOWFISH-CBC";
     832  o->keysize = 16;
     833#else
    830834  o->ciphername = "BF-CBC";
     835#endif
    831836  o->ciphername_defined = true;
    832837  o->authname = "SHA1";
    833838  o->authname_defined = true;