summaryrefslogtreecommitdiffstats
path: root/perl/OpenSSL.xs
blob: 3e3d1debebbd25f8b1562d5bb60f7b0692498e85 (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
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
#include "p5SSLeay.h"

SV *new_ref(type,obj,mort)
char *type;
char *obj;
	{
	SV *ret;

	if (mort)
		ret=sv_newmortal();
	else
		ret=newSViv(0);
printf(">new_ref %d\n",type);
	sv_setref_pv(ret,type,(void *)obj);
	return(ret);
	}

int ex_new(obj,data,ad,idx,argl,argp)
char *obj;
SV *data;
CRYPTO_EX_DATA *ad;
int idx;
long argl;
char *argp;
	{
	SV *sv;

fprintf(stderr,"ex_new %08X %s\n",obj,argp);
	sv=sv_newmortal();
	sv_setref_pv(sv,argp,(void *)obj);
printf("%d>new_ref '%s'\n",sv,argp);
	CRYPTO_set_ex_data(ad,idx,(char *)sv);
	return(1);
	}

void ex_cleanup(obj,data,ad,idx,argl,argp)
char *obj;
SV *data;
CRYPTO_EX_DATA *ad;
int idx;
long argl;
char *argp;
	{
	pr_name("ex_cleanup");
fprintf(stderr,"ex_cleanup %08X %s\n",obj,argp);
	if (data != NULL)
		SvREFCNT_dec((SV *)data);
	}

MODULE =  SSLeay        PACKAGE = SSLeay

BOOT:
	boot_bio();
	boot_cipher();
	boot_digest();
	boot_err();
	boot_ssl();
	boot_SSLeay__BN();
	boot_SSLeay__BIO();
	boot_SSLeay__Cipher();
	boot_SSLeay__MD();
	boot_SSLeay__ERR();
	boot_SSLeay__SSL();
	boot_SSLeay__X509();