Create ecdh_context structure
diff --git a/library/ecdh.c b/library/ecdh.c
index 1b4fcd3..0e2cfdf 100644
--- a/library/ecdh.c
+++ b/library/ecdh.c
@@ -27,6 +27,7 @@
  * References:
  *
  * SEC1 http://www.secg.org/index.php?action=secg,docs_secg
+ * RFC 4492
  */
 
 #include "polarssl/config.h"
@@ -74,6 +75,34 @@
     return( ret );
 }
 
+/*
+ * Initialize context
+ */
+void ecdh_init( ecdh_context *ctx )
+{
+    ecp_group_init( &ctx->grp );
+    mpi_init      ( &ctx->d   );
+    ecp_point_init( &ctx->Q   );
+    ecp_point_init( &ctx->Qp  );
+    mpi_init      ( &ctx->z   );
+}
+
+
+/*
+ * Free context
+ */
+void ecdh_free( ecdh_context *ctx )
+{
+    if( ctx == NULL )
+        return;
+
+    ecp_group_free( &ctx->grp );
+    mpi_free      ( &ctx->d   );
+    ecp_point_free( &ctx->Q   );
+    ecp_point_free( &ctx->Qp  );
+    mpi_free      ( &ctx->z   );
+}
+
 
 #if defined(POLARSSL_SELF_TEST)