Skip Menu |

This queue is for tickets about the Authen-SASL CPAN distribution.

Report information
The Basics
Id: 40206
Status: resolved
Priority: 0/
Queue: Authen-SASL

People
Owner: Nobody in particular
Requestors: arifsaha [...] yahoo.com
Cc:
AdminCc:

Bug Information
Severity: Important
Broken in:
  • 2.11
  • 2.12
Fixed in: (no value)



Subject: Authen::SASL may load older incompatible plugin
1. The system has older plugin (specifically Authen::SASL::Cyrus) installed. 2. Newer Authen::SASL is installed in different directory, but newer Authen::SASL::Cyrus cannot be installed (e.g. because the system lack needed developer tools / library to compile the binary). 3. When using the newer Authen::SASL, it will load the older Authen::SASL::Cyrus, which may incompatible (fail to established connection). This is exacerbated by the fact that in client_new (and server_new) method, creating connection is not inside an eval block. This specifically an issue in a shared hosting environment, where the specific hosting owner have no permission to remove / replace the Authen::SASL::Cyrus installed in the system and provided developer tools / library probably limited. Suggestion: 1. Authen::SASL should match the version of each plugin to latest version known to be compatible, or Authen::SASL should only load the plugin from known directory, i.e. the one installed with that Authen::SASL (probably Module::Pluggable can help here - with a plus that future plugin can be added without changing Authen::SASL). 2. client_new (and server_new) method should do connection creation inside an eval block