chiark / gitweb /
pub/dsa.h, pub/dsa-sign.h: Deprecate the old DSA interface.
[catacomb] / pub / dsa.h
index 2a9a99d234a47ba136c4a29bef36d054fb935415..5079e1cd10bc69b26b2be852d69173792fcfaf88 100644 (file)
--- a/pub/dsa.h
+++ b/pub/dsa.h
@@ -43,6 +43,8 @@
 
 /*----- Header files ------------------------------------------------------*/
 
+#include <mLib/macros.h>
+
 #ifndef CATACOMB_DH_H
 #  include "dh.h"
 #endif
@@ -223,11 +225,18 @@ extern mp *dsa_nonce(mp */*d*/, mp */*q*/, mp */*x*/, const octet */*m*/,
  * Returns:    ---
  *
  * Use:                Computes a DSA signature of a message.
+ *
+ *             This function is deprecated.  It's really rather badly
+ *             designed, and hard to use securely (and hard to fix).  Please
+ *             use @gdsa_sign@ instead.
  */
 
-extern void dsa_mksig(const dsa_param */*dp*/, mp */*a*/,
-                     mp */*m*/, mp */*k*/,
-                     mp **/*rr*/, mp **/*ss*/);
+extern
+#ifndef CATACOMB_DSAIMPL
+  DEPRECATED("please use `gdsa_sign' instead")
+#endif
+  void dsa_mksig(const dsa_param */*dp*/, mp */*a*/, mp */*m*/, mp */*k*/,
+                mp **/*rr*/, mp **/*ss*/);
 
 /* --- @dsa_sign@ --- *
  *
@@ -246,13 +255,20 @@ extern void dsa_mksig(const dsa_param */*dp*/, mp */*a*/,
  *
  * Use:                Signs a message, storing the results in a big-endian binary
  *             form.
+ *
+ *             This function is deprecated.  It's really rather badly
+ *             designed, and hard to use securely (and hard to fix).  Please
+ *             use @gdsa_sign@ instead.
  */
 
-extern void dsa_sign(dsa_param */*dp*/, mp */*a*/,
-                    const void */*m*/, size_t /*msz*/,
-                    const void */*k*/, size_t /*ksz*/,
-                    void */*r*/, size_t /*rsz*/,
-                    void */*s*/, size_t /*ssz*/);
+extern
+#ifndef CATACOMB_DSAIMPL
+  DEPRECATED("please use `gdsa_sign' instead")
+#endif
+  void dsa_sign(dsa_param */*dp*/, mp */*a*/,
+               const void */*m*/, size_t /*msz*/,
+               const void */*k*/, size_t /*ksz*/,
+               void */*r*/, size_t /*rsz*/, void */*s*/, size_t /*ssz*/);
 
 /* --- @dsa_vrfy@ --- *
  *