]> git.lizzy.rs Git - plan9front.git/blob - sys/src/libsec/port/dsaalloc.c
libsec: generalize pbkdf2_hmac_sha1() to pbkdf2_x() passing the hmac as an argument
[plan9front.git] / sys / src / libsec / port / dsaalloc.c
1 #include "os.h"
2 #include <mp.h>
3 #include <libsec.h>
4
5 DSApub*
6 dsapuballoc(void)
7 {
8         DSApub *dsa;
9
10         dsa = mallocz(sizeof(*dsa), 1);
11         if(dsa == nil)
12                 sysfatal("dsapuballoc");
13         return dsa;
14 }
15
16 void
17 dsapubfree(DSApub *dsa)
18 {
19         if(dsa == nil)
20                 return;
21         mpfree(dsa->p);
22         mpfree(dsa->q);
23         mpfree(dsa->alpha);
24         mpfree(dsa->key);
25         free(dsa);
26 }
27
28
29 DSApriv*
30 dsaprivalloc(void)
31 {
32         DSApriv *dsa;
33
34         dsa = mallocz(sizeof(*dsa), 1);
35         if(dsa == nil)
36                 sysfatal("dsaprivalloc");
37         return dsa;
38 }
39
40 void
41 dsaprivfree(DSApriv *dsa)
42 {
43         if(dsa == nil)
44                 return;
45         mpfree(dsa->pub.p);
46         mpfree(dsa->pub.q);
47         mpfree(dsa->pub.alpha);
48         mpfree(dsa->pub.key);
49         mpfree(dsa->secret);
50         free(dsa);
51 }
52
53 DSAsig*
54 dsasigalloc(void)
55 {
56         DSAsig *dsa;
57
58         dsa = mallocz(sizeof(*dsa), 1);
59         if(dsa == nil)
60                 sysfatal("dsasigalloc");
61         return dsa;
62 }
63
64 void
65 dsasigfree(DSAsig *dsa)
66 {
67         if(dsa == nil)
68                 return;
69         mpfree(dsa->r);
70         mpfree(dsa->s);
71         free(dsa);
72 }