Hello community,

here is the log from the commit of package balsa for openSUSE:Factory checked 
in at 2017-12-09 20:30:40
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/balsa (Old)
 and      /work/SRC/openSUSE:Factory/.balsa.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "balsa"

Sat Dec  9 20:30:40 2017 rev:65 rq:555512 version:2.5.3

Changes:
--------
--- /work/SRC/openSUSE:Factory/balsa/balsa.changes      2017-08-23 
11:55:08.470952361 +0200
+++ /work/SRC/openSUSE:Factory/.balsa.new/balsa.changes 2017-12-09 
20:31:02.539391417 +0100
@@ -1,0 +2,5 @@
+Sun Dec  3 21:38:14 UTC 2017 - [email protected]
+
+- Add balsa-build-ssl-1.1.patch: Fix build with new openssl 1.1.0.
+
+-------------------------------------------------------------------

New:
----
  balsa-build-ssl-1.1.patch

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ balsa.spec ++++++
--- /var/tmp/diff_new_pack.ZO8Cm8/_old  2017-12-09 20:31:03.167361507 +0100
+++ /var/tmp/diff_new_pack.ZO8Cm8/_new  2017-12-09 20:31:03.171361316 +0100
@@ -1,7 +1,7 @@
 #
 # spec file for package balsa
 #
-# Copyright (c) 2015 SUSE LINUX GmbH, Nuernberg, Germany.
+# Copyright (c) 2017 SUSE LINUX GmbH, Nuernberg, Germany.
 #
 # All modifications and additions to the file contributed by third parties
 # remain the property of their copyright owners, unless otherwise agreed
@@ -26,6 +26,8 @@
 Group:          Productivity/Networking/Email/Clients
 Url:            http://pawsa.fedorapeople.org/balsa/
 Source:         http://pawsa.fedorapeople.org/balsa/%{name}-%{version}.tar.bz2
+# PATCH-FIX-UPSTREAM balsa-build-ssl-1.1.patch [email protected] -- Fix 
build with openssl 1.1.0
+Patch:          balsa-build-ssl-1.1.patch
 %if 0%{?suse_version} == 1320
 # For openSUSE >13.2, compface was split in a devel and library package
 BuildRequires:  compface
@@ -76,6 +78,7 @@
 
 %prep
 %setup -q -n %{base_name}-%{version}
+%patch -p1
 translation-update-upstream
 
 %build

++++++ balsa-build-ssl-1.1.patch ++++++
diff --git a/libbalsa/imap/auth-cram.c b/libbalsa/imap/auth-cram.c
index 62e076a..c29d327 100644
--- a/libbalsa/imap/auth-cram.c
+++ b/libbalsa/imap/auth-cram.c
@@ -131,7 +131,7 @@ static void
 hmac_md5 (const char* password, char* challenge,
           unsigned char* response)
 {  
-  EVP_MD_CTX ctx;
+  EVP_MD_CTX *ctx = EVP_MD_CTX_create();
   unsigned char ipad[MD5_BLOCK_LEN], opad[MD5_BLOCK_LEN];
   unsigned char secret[MD5_BLOCK_LEN+1];
   unsigned int secret_len, chal_len;
@@ -143,9 +143,9 @@ hmac_md5 (const char* password, char* challenge,
   /* passwords longer than MD5_BLOCK_LEN bytes are substituted with their MD5
    * digests */
   if (secret_len > MD5_BLOCK_LEN) {
-       EVP_DigestInit(&ctx, EVP_md5());
-       EVP_DigestUpdate(&ctx, (const unsigned char*) password, secret_len);
-       EVP_DigestFinal(&ctx, secret, &secret_len);
+       EVP_DigestInit(ctx, EVP_md5());
+       EVP_DigestUpdate(ctx, (const unsigned char*) password, secret_len);
+       EVP_DigestFinal(ctx, secret, &secret_len);
   }
   else
     strncpy ((char *) secret, password, sizeof (secret));
@@ -161,14 +161,16 @@ hmac_md5 (const char* password, char* challenge,
   }
 
   /* inner hash: challenge and ipadded secret */
-  EVP_DigestInit(&ctx, EVP_md5());
-  EVP_DigestUpdate(&ctx, ipad, MD5_BLOCK_LEN);
-  EVP_DigestUpdate(&ctx, (unsigned char*) challenge, chal_len);
-  EVP_DigestFinal(&ctx, response, NULL);
+  EVP_DigestInit(ctx, EVP_md5());
+  EVP_DigestUpdate(ctx, ipad, MD5_BLOCK_LEN);
+  EVP_DigestUpdate(ctx, (unsigned char*) challenge, chal_len);
+  EVP_DigestFinal(ctx, response, NULL);
 
   /* outer hash: inner hash and opadded secret */
-  EVP_DigestInit(&ctx, EVP_md5());
-  EVP_DigestUpdate(&ctx, opad, MD5_BLOCK_LEN);
-  EVP_DigestUpdate(&ctx, response, chal_len);
-  EVP_DigestFinal(&ctx, response, NULL);
+  EVP_DigestInit(ctx, EVP_md5());
+  EVP_DigestUpdate(ctx, opad, MD5_BLOCK_LEN);
+  EVP_DigestUpdate(ctx, response, MD5_DIGEST_LEN);
+  EVP_DigestFinal(ctx, response, NULL);
+
+  EVP_MD_CTX_destroy(ctx);
 }
diff --git a/libbalsa/imap/pop3.c b/libbalsa/imap/pop3.c
index 5cb6dd5..a72ce61 100644
--- a/libbalsa/imap/pop3.c
+++ b/libbalsa/imap/pop3.c
@@ -310,16 +310,17 @@ get_apop_stamp(const char *greeting, char *stamp)
 static void
 compute_auth_hash(char *stamp, char *hash, const char *passwd)
 {
-  EVP_MD_CTX ctx;
+  EVP_MD_CTX* ctx = EVP_MD_CTX_create();
   register unsigned char *dp;
   register char *cp;
   unsigned char *ep;
   unsigned char digest[16];
   
-  EVP_DigestInit(&ctx, EVP_md5());
-  EVP_DigestUpdate(&ctx, stamp, strlen(stamp));
-  EVP_DigestUpdate(&ctx, passwd, strlen(passwd));
-  EVP_DigestFinal(&ctx, digest, NULL);
+  EVP_DigestInit(ctx, EVP_md5());
+  EVP_DigestUpdate(ctx, stamp, strlen(stamp));
+  EVP_DigestUpdate(ctx, passwd, strlen(passwd));
+  EVP_DigestFinal(ctx, digest, NULL);
+  EVP_MD_CTX_destroy(ctx);
   
   cp = hash;
   dp = digest;

Reply via email to