]> CyberLeo.Net >> Repos - FreeBSD/releng/9.2.git/blob - lib/libmp/mp.h
- Copy stable/9 to releng/9.2 as part of the 9.2-RELEASE cycle.
[FreeBSD/releng/9.2.git] / lib / libmp / mp.h
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_ */