1 /* $FreeBSD$ */ 2 3 #ifndef _MP_H_ 4 #define _MP_H_ 5 6 #ifndef HEADER_BN_H_ 7 #include <openssl/bn.h> 8 #endif 9 10 typedef struct _mint { 11 BIGNUM *bn; 12 } MINT; 13 14 void mp_gcd(const MINT *, const MINT *, MINT *); 15 MINT *mp_itom(short); 16 void mp_madd(const MINT *, const MINT *, MINT *); 17 int mp_mcmp(const MINT *, const MINT *); 18 void mp_mdiv(const MINT *, const MINT *, MINT *, MINT *); 19 void mp_mfree(MINT *); 20 void mp_min(MINT *); 21 void mp_mout(const MINT *); 22 void mp_move(const MINT *, MINT *); 23 void mp_msqrt(const MINT *, MINT *, MINT *); 24 void mp_msub(const MINT *, const MINT *, MINT *); 25 char *mp_mtox(const MINT *); 26 void mp_mult(const MINT *, const MINT *, MINT *); 27 void mp_pow(const MINT *, const MINT *, const MINT *, MINT *); 28 void mp_rpow(const MINT *, short, MINT *); 29 void mp_sdiv(const MINT *, short, MINT *, short *); 30 MINT *mp_xtom(const char *); 31 32 #endif /* !_MP_H_ */ 33