8 new_ref(type, obj, mort)
19 printf(">new_ref %d\n",type);
21 sv_setref_pv(ret, type, (void *)obj);
26 ex_new(obj, data, ad, idx, argl, argp)
37 printf("ex_new %08X %s\n",obj,argp);
40 sv_setref_pv(sv, argp, (void *)obj);
42 printf("%d>new_ref '%s'\n", sv, argp);
44 CRYPTO_set_ex_data(ad, idx, (char *)sv);
49 ex_cleanup(obj, data, ad, idx, argl, argp)
57 pr_name("ex_cleanup");
59 printf("ex_cleanup %08X %s\n", obj, argp);
62 SvREFCNT_dec((SV *)data);
65 MODULE = OpenSSL PACKAGE = OpenSSL
77 /* The next macro is the completely correct way to call a C */
78 /* function that uses perl calling conventions but is not */
79 /* registered with perl. */
81 /* The second macro seems to work for this context. (We just */
82 /* need a mark for the called function since we don't have */
83 /* any local variables and what-not.) */
85 /* Unfortunately, we need to do this because these boot_* */
86 /* functions are auto-generated by xsubpp and are normally */
87 /* called from DyncLoader, but we're pulling them in here. */
89 #define FULL_callBootFunc(func) { \
98 #define callBootFunc(func) { \
102 callBootFunc(boot_OpenSSL__BN);
103 callBootFunc(boot_OpenSSL__BIO);
104 callBootFunc(boot_OpenSSL__Cipher);
105 callBootFunc(boot_OpenSSL__MD);
106 callBootFunc(boot_OpenSSL__ERR);
107 callBootFunc(boot_OpenSSL__SSL);
108 callBootFunc(boot_OpenSSL__X509);