660b443c |
1 | TYPEMAP |
ef3af890 |
2 | const char * T_PV |
3 | |
660b443c |
4 | mp * T_MP |
a1a90aaf |
5 | gf * T_MP |
6 | GE * T_CATSTRUCT |
7 | EC_Point * T_CATSTRUCT |
8 | EC_Curve * T_CATSTRUCT |
9 | EC_Info * T_CATSTRUCT |
10 | Field * T_CATSTRUCT |
11 | Group * T_CATSTRUCT |
660b443c |
12 | gccipher * T_GCALG |
13 | gchash * T_GCALG |
14 | gcMAC * T_GCALG |
15 | gcipher * T_GALG |
16 | ghash * T_GALG |
17 | gMAC * T_GALG |
18 | grand * T_GALG |
19 | keysize * T_KEYSZ |
20 | |
21 | Rand_True * T_CATSTRUCT |
22 | Rand_DSA * T_CATSTRUCT |
23 | |
24 | MP_Mont * T_CATSTRUCT |
25 | MP_Barrett * T_CATSTRUCT |
26 | MP_Mul * T_CATSTRUCT |
27 | MP_CRT * T_CATSTRUCT |
a1a90aaf |
28 | MP_Reduce * T_CATSTRUCT |
29 | GF_Reduce * T_CATSTRUCT |
660b443c |
30 | MP_Prime_Filter * T_CATSTRUCT |
31 | MP_Prime_Rabin * T_CATSTRUCT |
32 | MP_Prime_Gen_Event * T_CATSTRUCT |
33 | MP_Prime_Gen_Proc * T_PGENPROC |
34 | MP_Prime_Gen_NullProc * T_NULLPGENPROC |
35 | MP_Prime_Gen_MagicProc * T_CATSTRUCT |
36 | MP_Prime_Gen_FilterStepper * T_CATSTRUCT |
37 | MP_Prime_Gen_JumpStepper * T_CATSTRUCT |
38 | MP_Prime_Gen_RabinTester * T_CATSTRUCT |
39 | |
40 | Key_File * T_CATSTRUCT |
41 | Key_Data * T_CATSTRUCT |
42 | Key * T_CATSTRUCT |
43 | |
44 | KeyErr T_KEYERR |
45 | |
46 | INPUT |
47 | T_MP |
a1a90aaf |
48 | $var = mp_fromsv($arg, \"$var\", \"${my $ntt = $ntype; $ntt =~ s/^(.*)Ptr$/Catacomb::\U$1/; $ntt =~ s/_/::/g; \$ntt}\", 0, 0) |
660b443c |
49 | T_CATSTRUCT |
ef3af890 |
50 | $var = ptrfromsv($arg, \"${my $ntt = $ntype; $ntt =~ s/^(.*)Ptr$/Catacomb::$1/; $ntt =~ s/_/::/g; \$ntt}\", \"$var\") |
660b443c |
51 | T_GALG |
ef3af890 |
52 | $var = ptrfromsv($arg, \"${my $ntt = $ntype; $ntt =~ s/^g(.*)Ptr$/Catacomb::\u$1/; \$ntt}\", \"$var\") |
660b443c |
53 | T_GCALG |
ef3af890 |
54 | $var = ptrfromsv($arg, \"${my $ntt = $ntype; $ntt =~ s/^gc(.*)Ptr$/Catacomb::\u$1Class/; \$ntt}\", \"$var\") |
660b443c |
55 | T_KEYSZ |
ef3af890 |
56 | $var = ptrfromsv($arg, \"Catacomb::KeySize\", \"$var\") |
660b443c |
57 | T_PGENPROC |
58 | if (sv_derived_from($arg, \"Catacomb::MP::Prime::Gen::Proc\")) |
59 | $var = $arg; |
60 | else |
ef3af890 |
61 | croak(\"$var is not of type Catacomb::MP::Prime::Gen::Proc\"); |
660b443c |
62 | T_NULLPGENPROC |
63 | if (!SvOK($arg) || |
64 | sv_derived_from($arg, \"Catacomb::MP::Prime::Gen::Proc\")) |
65 | $var = $arg; |
66 | else |
ef3af890 |
67 | croak(\"$var is not of type Catacomb::MP::Prime::Gen::Proc\"); |
660b443c |
68 | |
69 | OUTPUT |
70 | T_MP |
a1a90aaf |
71 | ptrtosv(&$arg, $var, \"${my $ntt = $ntype; $ntt =~ s/^(.*)Ptr$/Catacomb::\U$1/; $ntt =~ s/_/::/g; \$ntt}\"); |
660b443c |
72 | T_CATSTRUCT |
a1a90aaf |
73 | ptrtosv(&$arg, $var, \"${my $ntt = $ntype; $ntt =~ s/^(.*)Ptr$/Catacomb::$1/; $ntt =~ s/_/::/g; \$ntt}\"); |
660b443c |
74 | T_GALG |
a1a90aaf |
75 | ptrtosv(&$arg, $var, \"${my $ntt = $ntype; $ntt =~ s/^g(.*)Ptr$/Catacomb::\u$1/; \$ntt}\"); |
660b443c |
76 | T_GCALG |
a1a90aaf |
77 | ptrtosv(&$arg, $var, \"${my $ntt = $ntype; $ntt =~ s/^g(.*)Ptr$/Catacomb::\u$1Class/; \$ntt}\"); |
660b443c |
78 | T_KEYSZ |
a1a90aaf |
79 | ptrtosv(&$arg, (octet *)$var, \"Catacomb::KeySize\"); |
660b443c |
80 | T_PGENPROC |
81 | $arg = $var; |
660b443c |
82 | T_KEYERR |
83 | $arg = keyerr($var); |