summaryrefslogtreecommitdiff
path: root/packages/libndsfpc/src/nds/rsa.inc
blob: f6e472c9c7be3c2d4f4e3f2df28580537efa0250 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
{$ifdef NDS_INTERFACE}
type
  swiRSAHeapContext = packed record 
    heapStart: pointer;
	heapEnd: pointer;
	heapSize: size_t;
  end;
  swiRSAHeapContext_t = swiRSAHeapContext;
  TswiRSAHeapContext = swiRSAHeapContext;
  PswiRSAHeapContext = ^TswiRSAHeapContext;


  swiRSAbuffers = packed record
	dst: pointer;
	sig: pointer;
	key: pointer;
  end;
  swiRSAbuffers_t = swiRSAbuffers;
  TswiRSAbuffers = swiRSAbuffers;
  PswiRSAbuffers = ^TswiRSAbuffers;

function swiRSAInitHeap(ctx: PswiRSAHeapContext; heapStart: pointer; heapSize: size_t): cint; cdecl; external;
function swiRSADecryptRAW(ctx: PswiRSAHeapContext; rsabuffers: PswiRSAbuffers; len: size_t): cint; cdecl; external;
function swiRSADecrypt(ctx: PswiRSAHeapContext; dst: pointer; const sig: pointer; const key: pointer): cint; cdecl; external;
function swiRSADecryptPGP(ctx: PswiRSAHeapContext; dst: pointer; const sig: pointer; const key: pointer): cint; cdecl; external;
{$endif NDS_INTERFACE}

{$ifdef NDS_IMPLEMENTATION} 


{$endif NDS_IMPLEMENTATION}