Edit report at https://bugs.php.net/bug.php?id=61853&edit=1

 ID:                 61853
 Updated by:         a...@php.net
 Reported by:        etienne at lamaisondebarbie dot ch
 Summary:            Use of non-deprecated functions
 Status:             Assigned
 Type:               Feature/Change Request
 Package:            LDAP related
 Operating System:   Debian testing
 PHP Version:        master-Git-2012-04-25 (Git)
 Assigned To:        ab
 Block user comment: N
 Private report:     N

 New Comment:

Yes, the code from both patches (#61921 and this one) compiles fine, but there 
is a link error with 2.3.42 (not 2.3.48, my bad), it can't find 
ldap_control_create. The latest, 2.4.33, compiles good and tests pass. Only one 
test fails for me ext\ldap\tests\ldap_sasl_bind_basic.phpt , but that's 
disregarding of with or without patch. That's may be because of the server 
configuration. If you mean no new test need to be added, so be.

About that #ifdef - it's not about server but client libs. IMHO, there are 
still enough "stable" distro versions in use, like centos5 and so on, which 
have older openldap by default. At the end of the day, it's not a big deal to 
put just a bit more appropriate checks and be compatible with older client 
libs. As it's almost done now anyway :) It's just a bit confusing both 2.3 and 
2.4 series having the api version of 3001, but from the other side - this way 
the devs mean it stands not very far from each other.


Previous Comments:
------------------------------------------------------------------------
[2013-02-22 16:57:22] etienne at lamaisondebarbie dot ch

And anyway, *_ext family was designed in 1998 and first implemented in libldap 
in 1999. ldap_search was tagged as deprecated in 2006. There is no reason to 
put those ifdef in the first place, I don't think people like to have 6 years 
old unmaintained code running on their webserver. On windows those functions 
are supported since Windows 2k ...

------------------------------------------------------------------------
[2013-02-22 16:37:38] etienne at lamaisondebarbie dot ch

Does php-ldap compile under 2.3.48 without my patch ? (tests are already 
available in tests directory).

------------------------------------------------------------------------
[2013-02-22 15:21:10] a...@php.net

I'm still testing the functionality in whole. Please add also some tests for 
what you did so far.

------------------------------------------------------------------------
[2013-02-22 15:19:43] a...@php.net

I've tested your last patch with ifdefs, the code compiles at least :) But the 
version check isn't smart enough, thus I get errors when compiling with 
openldap 2.3.48, but it pass though with 2.4.33 . That's because both have api 
version 3001. So that means for one that some more #ifdef are needed there, and 
second - that at least for what I see we should check exact by lib version, no 
by api version. And the point lays somewhere betwee 2.3.48 and 2.4.33 :)

------------------------------------------------------------------------
[2012-04-26 10:13:31] etienne at lamaisondebarbie dot ch

I did a new patch that bundle both patch and use #ifdef. I'm not sure about 
LDAP_API_VERSION, but > 2000 seems to be ok.
Also, in the original version used ldap_modify_ext_s, I changed to 
ldap_modify_s.

------------------------------------------------------------------------


The remainder of the comments for this report are too long. To view
the rest of the comments, please view the bug report online at

    https://bugs.php.net/bug.php?id=61853


-- 
Edit this bug report at https://bugs.php.net/bug.php?id=61853&edit=1

Reply via email to