mirror of https://github.com/0intro/conterm
53 lines
657 B
C
53 lines
657 B
C
|
#include "os.h"
|
||
|
#include <mp.h>
|
||
|
#include <libsec.h>
|
||
|
|
||
|
RSApub*
|
||
|
rsapuballoc(void)
|
||
|
{
|
||
|
RSApub *rsa;
|
||
|
|
||
|
rsa = mallocz(sizeof(*rsa), 1);
|
||
|
if(rsa == nil)
|
||
|
sysfatal("rsapuballoc");
|
||
|
return rsa;
|
||
|
}
|
||
|
|
||
|
void
|
||
|
rsapubfree(RSApub *rsa)
|
||
|
{
|
||
|
if(rsa == nil)
|
||
|
return;
|
||
|
mpfree(rsa->ek);
|
||
|
mpfree(rsa->n);
|
||
|
free(rsa);
|
||
|
}
|
||
|
|
||
|
|
||
|
RSApriv*
|
||
|
rsaprivalloc(void)
|
||
|
{
|
||
|
RSApriv *rsa;
|
||
|
|
||
|
rsa = mallocz(sizeof(*rsa), 1);
|
||
|
if(rsa == nil)
|
||
|
sysfatal("rsaprivalloc");
|
||
|
return rsa;
|
||
|
}
|
||
|
|
||
|
void
|
||
|
rsaprivfree(RSApriv *rsa)
|
||
|
{
|
||
|
if(rsa == nil)
|
||
|
return;
|
||
|
mpfree(rsa->pub.ek);
|
||
|
mpfree(rsa->pub.n);
|
||
|
mpfree(rsa->dk);
|
||
|
mpfree(rsa->p);
|
||
|
mpfree(rsa->q);
|
||
|
mpfree(rsa->kp);
|
||
|
mpfree(rsa->kq);
|
||
|
mpfree(rsa->c2);
|
||
|
free(rsa);
|
||
|
}
|