diff ecc.h @ 767:e465ed10c51d ecc

Be safer with how we handle ltc_ecc_sets[] (particularly with system libtomcrypt) A bit of progress with ecdsa code
author Matt Johnston <matt@ucc.asn.au>
date Tue, 09 Apr 2013 22:44:19 +0800
parents d1575fdc29a6
children 70625eed40c9
line wrap: on
line diff
--- a/ecc.h	Tue Apr 09 00:36:04 2013 +0800
+++ b/ecc.h	Tue Apr 09 22:44:19 2013 +0800
@@ -9,14 +9,18 @@
 #ifdef DROPBEAR_ECC
 
 struct dropbear_ecc_curve {
+	int ltc_size; // to match the byte sizes in ltc_ecc_sets[]
 	const ltc_ecc_set_type *dp; // curve domain parameters
 	const struct ltc_hash_descriptor *hashdesc;
 	const char *name;
 };
 
-extern const struct dropbear_ecc_curve ecc_curve_nistp256;
-extern const struct dropbear_ecc_curve ecc_curve_nistp384;
-extern const struct dropbear_ecc_curve ecc_curve_nistp521;
+extern struct dropbear_ecc_curve ecc_curve_nistp256;
+extern struct dropbear_ecc_curve ecc_curve_nistp384;
+extern struct dropbear_ecc_curve ecc_curve_nistp521;
+extern struct dropbear_ecc_curve *dropbear_ecc_curves[];
+
+void dropbear_ecc_fill_dp();
 
 // "pubkey" refers to a point, but LTC uses ecc_key structure for both public
 // and private keys