RhinoTrac
LassoSoft Ticket Tracking System
NOTE: If you are using Lasso Server 9.3 please Log your ticket directly via the LUX admin as this will give us more information about your issue.
Ticket #7896: LDAP search results in instance restart and no results
- Reported by:
- Shelane French
- Date:
- 10 Nov, 2014
- Priority:
- major
- Component:
- Lasso 9
- Version:
- 9.3
- Keywords:
- Platform:
Issue Report from Shelane French (french8@llnl.gov)
Company: Lawrence Livermore National Laboratory
Component: Lasso 9 Server
Version: 9.3
Source IP: 128.115.190.35
Detail
======
local('myLDAP' = LDAP);
local('oun' = 'french8');
#myLDAP->Open('real_server_name_actually_here_in_code');
#myLDAP->Search('ou=People,dc=llnl,dc=gov', LDAP_Scope_Subtree,
'(uid='#oun')', array('sn', 'firstname', 'telephoneNumber',
'llnlNickname', 'employeeNumber', 'llnlpersonid'));//LDAP_Scope_OneLevel
local('LLNL' = #myLDAP->Results);
#myLDAP->code;
'<br>';
#myLDAP->Close;
'returned results: ' + #LLNL + '<br>';
-------------------
0
returned results: staticarray()
The instance retstart and no results are returned. The search string is the same as what I have currently with 8.6 where it does work.
9.3 RC2
Please log in to your LassoSoft account to comment
Comments
Until this has been fixed, the work-around is to not close the LDAP object, such as in the following code:
local('oun' = 'gauss');
#myLDAP->Open('ldap.forumsys.com');
#myLDAP->Search(
'ou=mathematicians,dc=example,dc=com',
LDAP_Scope_Subtree,
'(uid='#oun')',
-attributes = array(
'sn',
'firstname',
'telephoneNumber',
'llnlNickname',
'employeeNumber',
'llnlpersonid'
)
);
/* This was here in error, in the original code */
//LDAP_Scope_OneLevel;
local('LLNL' = #myLDAP->Results);
#myLDAP->code;
'<br/>';
/* Don't close it */
//#myLDAP->Close;
'returned results: ' + #LLNL + '<br>';
using:
fail_if(#my_ldap->code != 0, #my_ldap->code, 'LDAP Error ' + #my_ldap->code)
#my_ldap->search('cn=users,dc=miniserver,dc=internal,dc=treefrog,dc=ca', ldap_scope_subtree, '(uid=s*)')
fail_if(#my_ldap->code != 0, #my_ldap->code, 'LDAP Error ' + #my_ldap->code)
local(my_result) = #my_ldap->results
//#my_ldap->close
#my_result
fix #7896:
fixes ->results and ->code by using lasso_typeSetDataMember instead of Add,
fixes ->close by not calling ldap_unbind_s,
also adds ldap_scope_children