build: Minor API fixes to fix build problems on AIX.
authorWerner Koch <wk@gnupg.org>
Wed, 5 Jul 2017 18:10:56 +0000 (20:10 +0200)
committerWerner Koch <wk@gnupg.org>
Wed, 5 Jul 2017 18:10:56 +0000 (20:10 +0200)
* src/gcrypt.h.in (gcry_error_from_errno): Fix return type.
* src/visibility.c (gcry_md_extract): Change return type to match the
prototype.
--

IBM compiler optimize enums and thus enums may be shorter than an
unsigned int.  Thus an

  assert (sizeof (gpg_error_t) == sizeof (gpg_err_code_t)

would fail.  The deatils seem to depend on the passed compiler options
which explains that it has been only reported now.

GnuPG-bug-id: 3256
Signed-off-by: Werner Koch <wk@gnupg.org>
src/gcrypt.h.in
src/visibility.c

index 8d20c83..9a9acc4 100644 (file)
@@ -189,7 +189,7 @@ int gcry_err_code_to_errno (gcry_err_code_t code);
 gcry_error_t gcry_err_make_from_errno (gcry_err_source_t source, int err);
 
 /* Return an error value with the system error ERR.  */
-gcry_err_code_t gcry_error_from_errno (int err);
+gcry_error_t gcry_error_from_errno (int err);
 
 \f
 /* NOTE: Since Libgcrypt 1.6 the thread callbacks are not anymore
index 7bf3d57..fe46c82 100644 (file)
@@ -1174,10 +1174,10 @@ gcry_md_read (gcry_md_hd_t hd, int algo)
   return _gcry_md_read (hd, algo);
 }
 
-gcry_err_code_t
+gcry_error_t
 gcry_md_extract (gcry_md_hd_t hd, int algo, void *buffer, size_t length)
 {
-  return _gcry_md_extract(hd, algo, buffer, length);
+  return gpg_error (_gcry_md_extract(hd, algo, buffer, length));
 }
 
 void