-/* Fills buffer (up to buflen) with shared secret */
-typedef void dh_makeshared_fn(void *st, uint8_t *secret,
- int32_t secretlen, cstring_t rempublic,
- uint8_t *sharedsecret, int32_t buflen);
+
+/* Fills buffer (up to buflen) with shared secret. The rempublic string
+ * comes from the remote site, and may not be acceptable, though it has been
+ * checked for memory-safety. The secretlen and buflen are the secret_len
+ * and shared_len reported by the closure, respectively. Return false on
+ * faliure (e.g., if the publiclen is unacceptable).
+ */
+typedef bool_t dh_makeshared_fn(void *st, uint8_t *secret,
+ int32_t secretlen, cstring_t rempublic,
+ uint8_t *sharedsecret, int32_t buflen);
+