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