[Date Prev][Date Next] [Chronological] [Thread] [Top]

win32 perl backend (ITS#1827)



Full_Name: Kervin Pierre
Version: CVS
OS: win2k
URL: ftp://ftp.openldap.org/incoming/
Submission from: (NULL) (163.118.3.50)


i) removes XSUB.h inclusion.

ii) if on the win32 platform, does an explicit interpreter context switch in
functions that may be the first perl function called in their thread.  Without
this OpenLDAP aborts on the first call to the perl interpreter from a thread
that the interpreter was not created in.  This would be true for all perl
installations > 5.6, built with MULTIPLICITY enabled, I believe.

? back-perl/backperl.plg
? back-perl/patch.txt
Index: back-perl/add.c
===================================================================
RCS file: /repo/OpenLDAP/pkg/ldap/servers/slapd/back-perl/add.c,v
retrieving revision 1.9
diff -r1.9 add.c
38a39,42
> 
> 	#ifdef HAVE_WIN32_ASPERL
> 		PERL_SET_CONTEXT( PERL_INTERPRETER );
> 	#endif
Index: back-perl/bind.c
===================================================================
RCS file: /repo/OpenLDAP/pkg/ldap/servers/slapd/back-perl/bind.c,v
retrieving revision 1.14
diff -r1.14 bind.c
23d22
< #include <XSUB.h>
Index: back-perl/close.c
===================================================================
RCS file: /repo/OpenLDAP/pkg/ldap/servers/slapd/back-perl/close.c,v
retrieving revision 1.8
diff -r1.8 close.c
38a39,42
> 
> 	#ifdef HAVE_WIN32_ASPERL
> 		PERL_SET_CONTEXT( PERL_INTERPRETER );
> 	#endif
51c55,59
< {
---
> {
> 	#ifdef HAVE_WIN32_ASPERL
> 		PERL_SET_CONTEXT( PERL_INTERPRETER );
> 	#endif
> 
Index: back-perl/compare.c
===================================================================
RCS file: /repo/OpenLDAP/pkg/ldap/servers/slapd/back-perl/compare.c,v
retrieving revision 1.14
diff -r1.14 compare.c
46a47,50
> 
> 	#ifdef HAVE_WIN32_ASPERL
> 		PERL_SET_CONTEXT( PERL_INTERPRETER );
> 	#endif
Index: back-perl/config.c
===================================================================
RCS file: /repo/OpenLDAP/pkg/ldap/servers/slapd/back-perl/config.c,v
retrieving revision 1.13
diff -r1.13 config.c
48a49,52
> #ifdef HAVE_WIN32_ASPERL
> 	PERL_SET_CONTEXT( PERL_INTERPRETER );
> #endif
> 
Index: back-perl/delete.c
===================================================================
RCS file: /repo/OpenLDAP/pkg/ldap/servers/slapd/back-perl/delete.c,v
retrieving revision 1.11
diff -r1.11 delete.c
39a40,43
> 
> 	#ifdef HAVE_WIN32_ASPERL
> 		PERL_SET_CONTEXT( PERL_INTERPRETER );
> 	#endif
Index: back-perl/init.c
===================================================================
RCS file: /repo/OpenLDAP/pkg/ldap/servers/slapd/back-perl/init.c,v
retrieving revision 1.26
diff -r1.26 init.c
23d22
< #include <XSUB.h>
179c178
< perl_back_xs_init()
---
> perl_back_xs_init(PERL_BACK_XS_INIT_PARAMS)
Index: back-perl/modrdn.c
===================================================================
RCS file: /repo/OpenLDAP/pkg/ldap/servers/slapd/back-perl/modrdn.c,v
retrieving revision 1.13
diff -r1.13 modrdn.c
57a58,61
> 
> 	#ifdef HAVE_WIN32_ASPERL
> 		PERL_SET_CONTEXT( PERL_INTERPRETER );
> 	#endif
Index: back-perl/search.c
===================================================================
RCS file: /repo/OpenLDAP/pkg/ldap/servers/slapd/back-perl/search.c,v
retrieving revision 1.17
diff -r1.17 search.c
57a58,61
> 
> 	#ifdef HAVE_WIN32_ASPERL
> 		PERL_SET_CONTEXT( PERL_INTERPRETER );
> 	#endif