Defect #10272

Ruby 1.9.3: "incompatible character encoding" with LDAP auth

Added by Barnabás Králik almost 11 years ago. Updated almost 11 years ago.

Status:ClosedStart date:
Priority:NormalDue date:
Assignee:Jean-Philippe Lang% Done:


Target version:1.4.0
Resolution:Fixed Affected version:


I'm running trunk Redmine (r8903 as we speak) with ruby 1.9.3 and Rails 2.3.14.
If logging in with a user who is authenticated through LDAP, I get an "incompatible encoding" error.
Upgrading to net-ldap-0.3.1 solves the problem.

Log is as follows:

Processing AccountController#login (for at 2012-02-18 14:48:27) [POST]
Parameters: {"authenticity_token"=>"[FILTERED]", "back_url"=>"[FILTERED]", "username"=>"[FILTERED]", "password"=>"[FILTERED]", "login"=>"[FILTERED]", "controller"=>"account", "action"=>"login"}

Encoding::CompatibilityError (incompatible character encodings: UTF-8 and ASCII-8BIT):
/usr/local/lib/ruby/gems/1.9.1/gems/net-ldap-0.2.2/lib/net/ber/core_ext/array.rb:61:in `join'
/usr/local/lib/ruby/gems/1.9.1/gems/net-ldap-0.2.2/lib/net/ber/core_ext/array.rb:61:in `to_ber_seq_internal'
/usr/local/lib/ruby/gems/1.9.1/gems/net-ldap-0.2.2/lib/net/ber/core_ext/array.rb:43:in `to_ber_appsequence'
/usr/local/lib/ruby/gems/1.9.1/gems/net-ldap-0.2.2/lib/net/ldap.rb:1374:in `block in search'
/usr/local/lib/ruby/gems/1.9.1/gems/net-ldap-0.2.2/lib/net/ldap.rb:1361:in `loop'
/usr/local/lib/ruby/gems/1.9.1/gems/net-ldap-0.2.2/lib/net/ldap.rb:1361:in `search'
/usr/local/lib/ruby/gems/1.9.1/gems/net-ldap-0.2.2/lib/net/ldap.rb:635:in `search'
app/models/auth_source_ldap.rb:110:in `get_user_dn'
app/models/auth_source_ldap.rb:37:in `authenticate'
app/models/user.rb:142:in `try_to_login'
app/controllers/account_controller.rb:149:in `password_authentication'
app/controllers/account_controller.rb:144:in `authenticate_user'
app/controllers/account_controller.rb:31:in `login'
<internal:prelude>:10:in `synchronize'
thin (1.3.1) lib/thin/connection.rb:80:in `block in pre_process'
thin (1.3.1) lib/thin/connection.rb:78:in `catch'
thin (1.3.1) lib/thin/connection.rb:78:in `pre_process'
thin (1.3.1) lib/thin/connection.rb:53:in `process'
thin (1.3.1) lib/thin/connection.rb:38:in `receive_data'
eventmachine (0.12.10) lib/eventmachine.rb:256:in `run_machine'
eventmachine (0.12.10) lib/eventmachine.rb:256:in `run'
thin (1.3.1) lib/thin/backends/base.rb:61:in `start'
thin (1.3.1) lib/thin/server.rb:159:in `start'
thin (1.3.1) lib/thin/controllers/controller.rb:86:in `start'
thin (1.3.1) lib/thin/runner.rb:185:in `run_command'
thin (1.3.1) lib/thin/runner.rb:151:in `run!'
thin (1.3.1) bin/thin:6:in `<top (required)>'
/usr/local/bin/thin:19:in `load'
/usr/local/bin/thin:19:in `<main>'

Rendering /xxxxxxxxxx/public/500.html (500 Internal Server Error)

Associated revisions

Revision 8908
Added by Jean-Philippe Lang almost 11 years ago

Upgrade to net-ldap 0.3.1 (#10272).


#1 Updated by Etienne Massip almost 11 years ago

  • Category set to LDAP

#2 Updated by Etienne Massip almost 11 years ago

  • Target version set to 1.4.0

Seems to have been fixed with 0.3.0 but the author didn't tag 0.3.0 or 0.3.1.

Guess it could be included with 1.4.0 though?

#3 Updated by Barnabás Králik almost 11 years ago

ummm... I have forgotten to [FILTER] out the path in the last line. Could someone with appropriate rights do the modification? Thanks!

#4 Updated by Jean-Philippe Lang almost 11 years ago

  • Description updated (diff)


#5 Updated by Jean-Philippe Lang almost 11 years ago

  • Status changed from New to Closed
  • Assignee set to Jean-Philippe Lang
  • Resolution set to Fixed

Committed in r8908.

Also available in: Atom PDF