Add infrastructure for ecdsa_verify_restartable()
diff --git a/include/mbedtls/ecdsa.h b/include/mbedtls/ecdsa.h
index c7b9f27..d2f83b2 100644
--- a/include/mbedtls/ecdsa.h
+++ b/include/mbedtls/ecdsa.h
@@ -58,11 +58,19 @@
 #if defined(MBEDTLS_ECP_RESTARTABLE)
 
 /**
+ * \brief           Internal restart context for ecdsa_verify()
+ *
+ * \note            Opaque struct
+ */
+typedef struct mbedtls_ecdsa_restart_ver mbedtls_ecdsa_restart_ver_ctx;
+
+/**
  * \brief           General context for resuming ECDSA operations
  */
 typedef struct
 {
     mbedtls_ecp_restart_ctx ecp;        /*!<  base context (admin+ecp info) */
+    mbedtls_ecdsa_restart_ver_ctx *ver; /*!<  ecdsa_verify() sub-context    */
 } mbedtls_ecdsa_restart_ctx;
 
 #else /* MBEDTLS_ECP_RESTARTABLE */
diff --git a/include/mbedtls/ecp.h b/include/mbedtls/ecp.h
index 420c6d0..3e5c605 100644
--- a/include/mbedtls/ecp.h
+++ b/include/mbedtls/ecp.h
@@ -341,6 +341,14 @@
  * \note            This setting is currently ignored by Curve25519
  */
 void mbedtls_ecp_set_max_ops( unsigned max_ops );
+
+/**
+ * \brief           Check if restart is enabled (max_ops != 0)
+ *
+ * \return          0 if max_ops == 0 (restart disabled)
+ *                  1 otherwise (restart enabled)
+ */
+int mbedtls_ecp_restart_enabled( void );
 #endif /* MBEDTLS_ECP_RESTARTABLE */
 
 /**