summaryrefslogtreecommitdiffstats
path: root/perl/OpenSSL.xs
diff options
context:
space:
mode:
authorRalf S. Engelschall <rse@openssl.org>1998-12-21 11:56:39 +0100
committerRalf S. Engelschall <rse@openssl.org>1998-12-21 11:56:39 +0100
commit58964a492275ca9a59a0cd9c8155cb2491b4b909 (patch)
treec7b16876a5789463bbbb468ef4829c8129b3d718 /perl/OpenSSL.xs
parentImport of old SSLeay release: SSLeay 0.8.1b (diff)
downloadopenssl-58964a492275ca9a59a0cd9c8155cb2491b4b909.tar.xz
openssl-58964a492275ca9a59a0cd9c8155cb2491b4b909.zip
Import of old SSLeay release: SSLeay 0.9.0b
Diffstat (limited to 'perl/OpenSSL.xs')
-rw-r--r--perl/OpenSSL.xs63
1 files changed, 63 insertions, 0 deletions
diff --git a/perl/OpenSSL.xs b/perl/OpenSSL.xs
new file mode 100644
index 0000000000..582b5705aa
--- /dev/null
+++ b/perl/OpenSSL.xs
@@ -0,0 +1,63 @@
+#include "p5SSLeay.h"
+
+SV *new_ref(type,obj,mort)
+char *type;
+char *obj;
+ {
+ SV *ret;
+
+ if (mort)
+ ret=sv_newmortal();
+ else
+ ret=newSViv(0);
+ 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);
+ 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();
+