diff --git a/library/ecdh.c b/library/ecdh.c
index c04d34c..e30ae3a 100644
--- a/library/ecdh.c
+++ b/library/ecdh.c
@@ -118,6 +118,9 @@
     int ret;
     size_t grp_len, pt_len;
 
+    if( ctx == NULL || ctx->grp.pbits == 0 )
+        return( POLARSSL_ERR_ECP_BAD_INPUT_DATA );
+
     if( ( ret = ecdh_gen_public( &ctx->grp, &ctx->d, &ctx->Q, f_rng, p_rng ) )
                 != 0 )
         return( ret );
@@ -149,6 +152,8 @@
 {
     int ret;
 
+    ecdh_init( ctx );
+
     if( ( ret = ecp_tls_read_group( &ctx->grp, buf, end - *buf ) ) != 0 )
         return( ret );
 
@@ -169,6 +174,9 @@
 {
     int ret;
 
+    if( ctx == NULL || ctx->grp.pbits == 0 )
+        return( POLARSSL_ERR_ECP_BAD_INPUT_DATA );
+
     if( ( ret = ecdh_gen_public( &ctx->grp, &ctx->d, &ctx->Q, f_rng, p_rng ) )
                 != 0 )
         return( ret );
@@ -183,6 +191,9 @@
 int ecdh_read_public( ecdh_context *ctx,
                       const unsigned char *buf, size_t blen )
 {
+    if( ctx == NULL )
+        return( POLARSSL_ERR_ECP_BAD_INPUT_DATA );
+
     return ecp_tls_read_point( &ctx->grp, &ctx->Qp, &buf, blen );
 }
 
@@ -194,6 +205,9 @@
 {
     int ret;
 
+    if( ctx == NULL )
+        return( POLARSSL_ERR_ECP_BAD_INPUT_DATA );
+
     if( ( ret = ecdh_compute_shared( &ctx->grp, &ctx->z, &ctx->Qp, &ctx->d ) )
                 != 0 )
         return( ret );
