Fix compiler warning about possible-NULL-dreference
authorWerner Koch <wk@gnupg.org>
Tue, 6 Dec 2016 21:19:04 +0000 (22:19 +0100)
committerWerner Koch <wk@gnupg.org>
Tue, 6 Dec 2016 21:19:04 +0000 (22:19 +0100)
* src/mpi.h (mpi_is_const, mpi_is_immutable): Do check arg before
deref-ing.  The are only used at places where the arg shall not be NULL.
--

This was designed as a general purpose macro and written in a
defensive way.  However, if it a NULL would be passed to that macro
code run in the else branch will deref the arg anyway.

Signed-off-by: Werner Koch <wk@gnupg.org>
src/mpi.h

index cd539f5..b5385b5 100644 (file)
--- a/src/mpi.h
+++ b/src/mpi.h
@@ -109,8 +109,8 @@ struct gcry_mpi
 void _gcry_mpi_immutable_failed (void);
 #define mpi_immutable_failed() _gcry_mpi_immutable_failed ()
 
-#define mpi_is_const(a)       ((a) && ((a)->flags&32))
-#define mpi_is_immutable(a)   ((a) && ((a)->flags&16))
+#define mpi_is_const(a)       ((a)->flags&32)
+#define mpi_is_immutable(a)   ((a)->flags&16)
 #define mpi_is_opaque(a)      ((a) && ((a)->flags&4))
 #define mpi_is_secure(a)      ((a) && ((a)->flags&1))
 #define mpi_clear(a)          _gcry_mpi_clear ((a))