2 /* This work is part of OpenLDAP Software <http://www.openldap.org/>.
4 * Copyright 1999-2011 The OpenLDAP Foundation.
5 * Portions Copyright 1999 John C. Quillan.
6 * Portions Copyright 2002 myinternet Limited.
9 * Redistribution and use in source and binary forms, with or without
10 * modification, are permitted only as authorized by the OpenLDAP
13 * A copy of this license is available in file LICENSE in the
14 * top-level directory of the distribution or, alternatively, at
15 * <http://www.OpenLDAP.org/license.html>.
23 #undef _ /* #defined by both Perl and ac/localize.h */
24 #include "asperl_undefs.h"
33 * From Apache mod_perl: test for Perl version.
36 #if defined(pTHX_) || (PERL_REVISION > 5 || (PERL_REVISION == 5 && PERL_VERSION >= 6))
40 #define EVAL_BUF_SIZE 500
42 extern ldap_pvt_thread_mutex_t perl_interpreter_mutex;
45 /* We should be using the PL_errgv, I think */
46 /* All the old style variables are prefixed with PL_ now */
47 # define errgv PL_errgv
50 # define call_method(m, f) perl_call_method(m, f)
51 # define eval_pv(m, f) perl_eval_pv(m, f)
52 # define ERRSV GvSV(errgv)
55 #if defined( HAVE_WIN32_ASPERL ) || defined( USE_ITHREADS )
56 /* pTHX is needed often now */
57 # define PERL_INTERPRETER my_perl
58 # define PERL_BACK_XS_INIT_PARAMS pTHX
59 # define PERL_BACK_BOOT_DYNALOADER_PARAMS pTHX, CV *cv
61 # define PERL_INTERPRETER perl_interpreter
62 # define PERL_BACK_XS_INIT_PARAMS void
63 # define PERL_BACK_BOOT_DYNALOADER_PARAMS CV *cv
64 # define PERL_SET_CONTEXT(i)
67 extern PerlInterpreter *PERL_INTERPRETER;
70 typedef struct perl_backend_instance {
72 BerVarray pb_module_path;
73 BerVarray pb_module_config;
75 int pb_filter_search_results;
80 #include "proto-perl.h"
82 #endif /* PERL_BACK_H */