summaryrefslogtreecommitdiffstats
path: root/perl/OpenSSL.xs
diff options
context:
space:
mode:
Diffstat (limited to 'perl/OpenSSL.xs')
-rw-r--r--perl/OpenSSL.xs109
1 files changed, 0 insertions, 109 deletions
diff --git a/perl/OpenSSL.xs b/perl/OpenSSL.xs
deleted file mode 100644
index 6ef66ccc1e..0000000000
--- a/perl/OpenSSL.xs
+++ /dev/null
@@ -1,109 +0,0 @@
-/*
-** OpenSSL.xs
-*/
-
-#include "openssl.h"
-
-SV *
-new_ref(type, obj, mort)
- char *type;
- char *obj;
-{
- SV *ret;
-
- if (mort)
- ret = sv_newmortal();
- else
- ret = newSViv(0);
-#ifdef DEBUG
- printf(">new_ref %d\n",type);
-#endif
- 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;
-
-#ifdef DEBUG
- printf("ex_new %08X %s\n",obj,argp);
-#endif
- sv = sv_newmortal();
- sv_setref_pv(sv, argp, (void *)obj);
-#ifdef DEBUG
- printf("%d>new_ref '%s'\n", sv, argp);
-#endif
- 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");
-#ifdef DEBUG
- printf("ex_cleanup %08X %s\n", obj, argp);
-#endif
- if (data != NULL)
- SvREFCNT_dec((SV *)data);
-}
-
-MODULE = OpenSSL PACKAGE = OpenSSL
-
-PROTOTYPES: ENABLE
-
-BOOT:
- boot_bio();
- boot_cipher();
- boot_digest();
- boot_err();
- boot_ssl();
-
- /* */
- /* The next macro is the completely correct way to call a C */
- /* function that uses perl calling conventions but is not */
- /* registered with perl. */
- /* */
- /* The second macro seems to work for this context. (We just */
- /* need a mark for the called function since we don't have */
- /* any local variables and what-not.) */
- /* */
- /* Unfortunately, we need to do this because these boot_* */
- /* functions are auto-generated by xsubpp and are normally */
- /* called from DyncLoader, but we're pulling them in here. */
- /* */
-#define FULL_callBootFunc(func) { \
- dSP; \
- ENTER; \
- SAVETMPS; \
- PUSHMARK(SP); \
- func(); \
- FREETMPS; \
- LEAVE; \
- }
-#define callBootFunc(func) { \
- PUSHMARK(SP); \
- func(); \
- }
- callBootFunc(boot_OpenSSL__BN);
- callBootFunc(boot_OpenSSL__BIO);
- callBootFunc(boot_OpenSSL__Cipher);
- callBootFunc(boot_OpenSSL__MD);
- callBootFunc(boot_OpenSSL__ERR);
- callBootFunc(boot_OpenSSL__SSL);
- callBootFunc(boot_OpenSSL__X509);
-