CoreCommunity ExtensionsIncubatorDistributionsTYPO3 4.5 ProjectsTYPO3 4.6 ProjectsTYPO3 4.7 ProjectsTYPO3 6.0 ProjectsTYPO3 6.1 ProjectsTYPO3 6.2 Projects (+)

Bug #7190

eu_ldap does not work with adodb installed

Added by Patrick Matthäi about 3 years ago. Updated over 2 years ago.

Status:Resolved Start date:2010-04-09
Priority:Must have Due date:
Assignee:Norman Seibert % Done:

100%

Category:- Spent time: -
Target version:-
Votes: 0

Description

Hello,

I already have reported this per email.

If you install the adodb extension and eu_ldap in typo3 4.3.2 and then logout / login again it will just fail with:

DBAL fatal
error: No handler found in handler_getFromTableList() for: "" (SQL
engine parse ERROR: No table name found as expected in
parseFromTables()!: near " ")

No idea which query this is, but maybe it would be enough to have a conflicts on adodb.

backtrace-handler_getFromTableList.pdf (58.1 kB) Philipp Thiele, 2010-04-21 09:56

History

Updated by Jonas Felix about 3 years ago

It would be great if you could trace the problem to the query or function in eu_ldap, than we can fix it... But we won't search the problem, because we don't need adodb.

Updated by Patrick Matthäi about 3 years ago

Uf I am not a developer in PHP and typo3.

Updated by Norman Seibert about 3 years ago

I installed dbal and adodb and BE and FE authentication worked as expected.

Updated by Philipp Thiele about 3 years ago

Same Problem, I use TYPO3 4.3.3, eu_ldap 2.8.1 with Oracle 11g over DBAL, Problem is located somewhere in the authentication services: It seems that there is no table defined in fetchuserrecord(), so the fullQuoteStr() / QuoteStr(), which must have a table, cannot work properly and end up with this error.
I'm not a TYPO3 services expert, so i'm not sure if this is a dbal or auth-services issue or only eu_ldap-related, but it seems to be an auth-services problem.

Full backtrace (debug placed in handler_getFromTableList) appended.

Updated by Norman Seibert about 3 years ago

  • Status changed from New to Accepted
  • Assignee set to Norman Seibert

Updated by Philipp Thiele about 3 years ago

short notice about progress:
after debugging i discovered line 46 in class.tx_euldap_sv2.php (method getUser):
$user = $this->fetchUserRecord($this->username);
When i change this line to
$user = $this->fetchUserRecord($this->username,'',$this->authInfo['db_user']);
it is possible for backend users to login, if they are not stored in LDAP. LDAP-user are still unable to login, but the quoteStr()-Error had gone away, and now they get the standard error message "Your login attempt did not succeed".
So i think that i did something wrong with the config.

Updated by Philipp Thiele about 3 years ago

Philipp Thiele wrote:

So i think that i did something wrong with the config.

Now, after reconfiguring my ldap server dataset, all works fine for me (with the already posted modification).

Updated by Norman Seibert about 3 years ago

  • Status changed from Accepted to Resolved
  • % Done changed from 0 to 100

Also available in: Atom PDF